久久久久久久麻豆,中日韩av在线,麻豆av在线免费,中文字幕二区三区,欧美日韩视频一区二区,亚洲欧美日韩在线一区,国产无毒不卡

走進Linux 操作系統


統的概念  
    雖然定義總是生硬、乏味、令人費解,但是它畢竟是概括性最強、最能體現水平的,所以我們還是要在開始就給出操作系統定義:  操作系統是應用程序的運行環(huán)境?! 蚓侔?!  可能運行環(huán)境這個術語令你如墜云端,它太廣泛、太抽象了。你一定在問運行環(huán)境到底是什么?簡單地講,運行環(huán)境是一種即服務和控制于一體地容器?! ∪绻銢]有理解環(huán)境這個概念,我可以舉個并不貼切的社會實例?! ≡陂_發(fā)區(qū)中可以看到許多企業(yè)孵化池或產業(yè)園,其中入住了各種各樣的企業(yè),孵化池或產業(yè)園的管理機構會統一為其中的企業(yè)辦理各種工商、保險、衛(wèi)生醫(yī)療等手續(xù)、提供后勤、治安等基礎服務,企業(yè)需要某些政務服務時,可以通過管理機構去和政府聯系,處理相關事宜,而不需要親自去處理這些和企業(yè)業(yè)務無關的政務活動,因此可以抽出身來集中精力在業(yè)務上。孵化池和產業(yè)園為企業(yè)提供了統一、普遍地服務和管理,是企業(yè)運作的外在環(huán)境。操作系統從這個意義上來說,類似于產業(yè)園的管理結構,為應用程序——好比企業(yè)——提供基礎服務和管理?! ‘斎?,我們現在并不指望你立刻認識到操作系統深刻內涵,對它的認識需要在不斷地使用和思考中消化和積累,在本期雜志中,我們將從各種角度介紹“運行環(huán)境”這個術語的真實含義,并在今后各期雜志中分階段、分層次的展開學習操作系統的各個領域。相信在不久的將來,你就能和我們一起認清它的廬山真面目了。操作系統產生背景  想要認清一個人,最好是從小認識他。對技術的理解也是如此,我們必須了解它的產生原因和發(fā)展過程,才能較為全面的認識該技術所解決的問題,認識它在學科發(fā)展中所處的地位。對比技術發(fā)展各個階段的特點,才能認清該技術的優(yōu)劣。同樣,我們想要把握操作系統的特性,還是先把操作系統放在時間軸上看看它的來龍去脈吧!  操作系統并不是計算機出現之初就有的,最初的計算機科學中并不存在操作系統這個概念,所有任務都直接運行于硬件之上。那時的任務大多集中于科學計算領域,系統硬件實現相對簡單、直接,任務對i/o操作的要求也比較低,將結果記錄到磁帶機之類的簡單設備中足矣。老程序員們大多采用手工或是用打孔機的方式將將二進制數據和程序輸入機器內存,然后執(zhí)行計算,最后,將結果保存到磁帶機上。一旦出現錯誤,機器上的調試燈會將保存在寄存器中的錯誤代碼反映出來,程序員們會據此去分析錯誤所在?! ?BR>     隨著科學計算任務變得越來越復雜,計算機逐漸被應用到了科學計算以外的其它領域。硬件設備比以前更加豐富和復雜了,i/o操作要求大幅提高,程序規(guī)模迅速擴大,需要調試的錯誤更是直線上升,直接操作硬件,對程序員來說變得越發(fā)困難?! ?BR>    于是出現了高級語言、編譯系統,幫助程序員簡化開發(fā)工作;出現了操作系統,幫助程序員管理和操作硬件設備。程序員們可以將精力集中于開發(fā)需要的任務,煩瑣的如任務裝載、分配/釋放內存、內存尋址、設備驅動、數據存儲等等硬件相關操作統統交給操作系統管理——真可以說是生產力的一次解放?! ?BR>    時代繼續(xù)發(fā)展,多用戶多任務時代的來臨,使得系統管理更加強調資源共享性。用戶直接操作系統資源顯然有悖于上述精神,因此資源合理分配與保護更為操作系統發(fā)展提供了新的挑戰(zhàn)和機遇,同時奠定了操作系統不可或缺的地位,從此,操作系統成為為軟件體系中最基礎,最重要的組成部分了。操作系統的任務從操作系統的起源可以看出,操作系統的核心任務是作為硬件和應用程序之間的一個中間層,或者說是應用程序的一個操作平臺,通過它應用程序和系統硬件隔離開,應用程序利用它提供的服務完成硬件相關操作?! ?BR>    總而言之,操作系統方便了應用程序運行,保護了系統資源。具體地講,操作系統為用戶帶來了幾個方面的好處:易操作性: 操作系統是用戶和計算機之間的接口,它大大簡化了用戶執(zhí)行任務的復雜程度。  
    作為應用程序的執(zhí)行環(huán)境:它為程序員建立應用程序提供了必要的編輯環(huán)境、編譯環(huán)境和調試工具;為程序的執(zhí)行提供了載入服務和資源分配服務;為數據存取提供了i/o訪問服務;為數據格式轉化和定位提供了文件操作服務;為程序的安全運行提供了權限控制服務;為程序運行失敗提供了錯誤報告服務等等系統服務,從此,程序員和用戶都不再需要關心那些令人生畏的計算機體系結構細節(jié),可以全心全意地開發(fā)應用程序了?!?nbsp;
    有效性:從另一個角度看待操作系統,可以將它認為是一個計算機資源管理系統?! ∮捎谙到y中資源種類各異,用法也大不相同,如果直接由用戶管理這些資源,比如內存分配,時鐘計時,i/o驅動,存儲維護,勢必要求用戶具有豐富的軟硬件知識,深刻把握計算機系統結構,否則資源將難以合理使用,最終造成系統混亂,甚至崩潰。而且現代的多用戶操作系統更是要求系統資源共享,資源必須合理分配給多用戶、多任務,只有采用一定的調度策略和分配策略,才能保證資源被公平有效的利用。所以,配置資源成了提高性能的關鍵——如同資源配置是提高生產力的關鍵一樣。   
    安全性:安全性是操作系統為我們提供的另一個重要的特點,它為我們提供了多層面的安全保障。  
    首先,操作系統作為系統硬件和用戶的中間平臺,禁止應用程序直接操作硬件,禁止應用程序直接訪問內存,執(zhí)行特權指令。多數系統都將應用程序運行限制在用戶空間(低特權級),而操作系統則運行于內核空間(高特權級),應用程序只有通過系統調用請求操作系統所提供的接口,才能通過操作系統間接執(zhí)行和硬件相關的操作或是執(zhí)行特權指令。因此保護了系統不被惡意的應用程序破壞或非法操作?! ?BR>    其次,多任務多用戶操作系統必須保證,不同任務之間信息不能泄漏,因此需要為任務劃分各自的私有空間和對其進行訪問控制。對不同用戶進行相應的授權和認證,可以保護用戶各行其是,互不侵犯。  
    總之,操作系統安全涉及方方面面,健壯的操作系統必須能多方位地保證任務安全執(zhí)行?! ∫讛U展:計算機技術的高速發(fā)展和計算機日益普及,計算機硬件設備不斷推陳出新,這要求操作系統提供的服務也能夠日新月異,因此要求操作系統具有良好的擴展性?! ?BR>    由于操作系統對系統資源和服務進行了抽象,屏蔽了底層細節(jié),統一了上層接口,添加設備或服務成了一件輕而易舉的事,需要做的僅僅是,在設備或服務規(guī)定的接口下完成新的實現即刻?! ∈裁词琴Y源?  
    資源概念在操作系統中使用得相當廣泛,內存、磁盤、文件、處理器、時鐘等等軟硬件都可以劃歸到資源范疇。資源的概念其實很好理解,概括來講,系統中的資源指的是系統提供給進程使用的特殊實體,進程通過向操作系統請求獲得這些實體,另外,系統分配這些實體給進程前,進程需要掛起等待。凡是滿足上述條件的實體就屬于資源。操作系統的演化和其它任何事務一樣,操作系統并非一成不變。迄今為止,它已經經歷了半個多世紀的發(fā)展,已經形成了一個龐大的家族。從個人計算機到工作站,從通用系統到專用系統,從嵌入式到虛擬機,可謂形式豐富多樣。我們難以將所有操作系統囊括,只希望提綱挈領地介紹在操作系統發(fā)展進程中具有代表性的幾種系統,理清它的演化脈絡。         
    進化歷程 :   最早的操作系統是簡單的單道批處理系統。它的功能相當簡陋,只能串行執(zhí)行預先組織好的任務組。早先的系統一次只能運行一個任務,每個任務必須先裝入,再等執(zhí)行完后才能裝入下一個任務,重復的裝入浪費了大量的時間。單道批處理系統的出現,大大的提高了系統吞吐率。   事情并非總如想象般順利?! ?
    由于數據存儲時所消耗的時間——i/o操作時間——相比數據處理時間——cpu操作時間——要高出數倍(往往在20倍以上),所以程序運行到i/o操作期間,cpu總是需要停下來(掛起)等待數據傳輸完成,無形中浪費了大量寶貴的時間,任務組中后續(xù)程序的執(zhí)行也因此被延遲了。如何避免數據傳輸等待帶來的時間浪費呢?能否在進行傳輸期間,解放cpu去執(zhí)行別的任務呢?  為解決這個瓶頸,單道批處理系統進化到了多道批處理系統?! ?BR>    所謂多道就實際就是說,處理器(當然現在談到的都屬于單處理器系統)可以交錯運行多個程序,某個任務掛起時,運行另一個程序。這樣一來, cpu等待數據傳輸造成的時間浪費問題得以解決,系統吞吐率又一次得到了提高。  計算機的發(fā)展使得任務不再僅僅局限于科學計算,越來越多的應用于辦公、生活等日?;顒又小?茖W計算中的任務多數執(zhí)行路徑都是固定不變,預先定義好的,只需要給定輸入,得到結果期間程序執(zhí)行中途不需要外界干預,與之不同,辦公,生活中的許多任務都必須和用戶不斷交互,任務結果隨時都會因為用戶的選擇改變。這時的系統變得更公開、更普遍,往往允許多個用戶可以同時使用。交互模式和共用模式需要任務響應時間盡可能的快(超過20秒的話,人的思維就容易被打斷或變得很不耐煩),這樣才能讓多個用戶都滿意,于是操作系統開始采用分時技術,處理器的運行時間分成數片,均分或依照一定權重派發(fā)給系統中的用戶使用。這種將處理器虛擬給多用戶共同使用的方法,不但可以滿足快速響應,而且也可以使得所有用戶獲得計算機完全是在為自己服務的假象?! ?BR>    上面給出了操作系統發(fā)展的主流路線:單道批處理——多道批處理——分時系統,除此以外現在還出現了許多分布式操作系統,嵌入系統,不過總體技術思路都仍然脫離不了多道、分時等概念。操作系統內容  操作系統的演化使得其功能變得愈來愈強大,但結構也越來越復雜。在以方便用戶(包括開發(fā)人員和終端用戶)為宗旨的思想下,操作系統不斷集成新功能,新服務。回憶從前大家使用的dos系統僅僅只需要一張軟盤,而如今的windows系統或linux系統動輒就需要數張光盤,可見已經從過去的麻雀變成了恐龍——雖然它們都有五臟六腑?! ?BR>    雖然變成了恐龍,但是其結構還時相對穩(wěn)定,清晰的。和軟件工程提出的思想一致,操作系統也采取了分層結構,越向上層抽象都越高,越接近用戶;相反越向下層,越靠近硬件,抽象也相對接近硬件。而且高層軟件依靠下層軟件提供的服務,再加上本身提供附加服務為更高層服務。總體來講呈現倒金子塔形式。  
    下面我們就簡要分析一下操作系統的體系結構,然后再談談操作系統設計時需要主要考慮的問題。操作系統組成   在形形色色的操作系統之中,組成結構不盡相同。因為同樣目的實現的手段可以自由選擇,所以其組成也有很大差異,我們選取最普遍的操作系統(unix)組成結構,向大家揭示操作系統的體系結構的大致框架。對于各種操作系統之間的具體差異,大家可以以下面講述的結構對比認識。(注意我們這里所說的操作系統屬于宏觀概念,接近于操作系統發(fā)行版,不但包括了內核,還包含了學多系統軟件和基礎應用軟件。)      
    我們用一組簡單的數學公式來描述操作系統的組成要素:     操作系統 = 內核+系統程序     系統程序 = 編譯環(huán)境 + api + aui     編譯環(huán)境 = 編譯程序+連接程序 + 裝載程序     api      = 系統調用 + 語言庫函數(c,c++,java,etc)     aui     =  shell + 系統服務例程(如x服務器等)+應用程序(瀏覽器,字處理,編輯器)   &nb

COPYRIGHT(C) 2011 廈門永宏亞得機電科技有限公司版權所有(閩ICP備05025945號) ALL RIGHTS RESERVED?

電話: 0592-5190891 傳真: 0592-5190720 E-Mail: E-mail:yade8895@163.com
地址: 廈門市海滄區(qū)興港六里17號2607室 郵編:361009 聯系人:翟先生