首頁 - 網校 - 萬題庫 - 美好明天 - 直播 - 導航
熱點搜索
學員登錄 | 用戶名
密碼
新學員
老學員
您現(xiàn)在的位置: 考試吧 > 考研 > 考研復習指導 > 考研專業(yè)課復習指導 > 考研專業(yè)課 > 正文

2011計算機考研《操作系統(tǒng)》知識點分析(4)

考試吧整理“2011計算機考研《操作系統(tǒng)》知識點分析”供廣大考生備考使用。

電子工業(yè)出版社獨家提供,嚴禁轉載!

  1.4 操作系統(tǒng)結構設計

  操作系統(tǒng)是一種大型、復雜的并發(fā)系統(tǒng),為了研制操作系統(tǒng),首先必須研究它的結構,力求設計出結構良好的程序。操作系統(tǒng)的結構設計有兩層含義:一是研究操作系統(tǒng)的整體結構,由程序的構成成分組成操作系統(tǒng)程序的構造過程和方法;二是研究操作系統(tǒng)程序的局部結構,包括數據結構和控制結構。采用不同的構件和構造方法可組成不同結構的操作系統(tǒng)。本節(jié)將在討論操作系統(tǒng)構件之后,全面介紹各種操作系統(tǒng)的構造方法。

  1.4.1 操作系統(tǒng)的組件

  通常把組成操作系統(tǒng)程序的基本單位稱作操作系統(tǒng)的構件。剖析現(xiàn)代操作系統(tǒng),構成操作系統(tǒng)的基本單位除內核之外,主要還有進程、線程、類程和管程。

  1.內核

  現(xiàn)代操作系統(tǒng)中大都采用了進程的概念,為了解決系統(tǒng)的并發(fā)性、共享性和隨機性,并使進程能協(xié)調地工作,單靠計算機硬件提供的功能是十分不夠的。例如,進程調度工作目前就不能用硬件來實現(xiàn);而進程自己調度自己也是困難的。所以,系統(tǒng)必須有一個軟件部分能對硬件處理器及有關資源進行首次改造,以便給進程的執(zhí)行提供良好運行環(huán)境,這個部分就是操作系統(tǒng)的內核。

  由于操作系統(tǒng)設計的目標和環(huán)境不同,內核的大小和功能有很大差別。有些設計希望把內核做得盡量小僅具有極少的必需功能,稱為微內核(microkernel),其他功能都在核外實現(xiàn),通過微內核提供的消息傳遞機制完成其余功能模塊間的聯(lián)系;有些設計則希望內核具有較多的功能,雖然其內部也可劃分成層次或模塊,但運行時是一個大二進制映像,模塊間的聯(lián)系可通過函數或過程調用實現(xiàn),稱為單內核(monolithic kernel)。操作系統(tǒng)的一個基本問題就是內核的功能設計。微內核結構是現(xiàn)代操作系統(tǒng)的特征之一,這種方法把內核和核外服務程序的開發(fā)分離,可為特定應用程序或運行環(huán)境要求定制服務程序,具有較好的可伸縮性,簡化了實現(xiàn),提供了靈活性,很適合分布式系統(tǒng)的構造。

  一般而言,內核必須提供以下3個方面的功能。

  (1)中斷處理。中斷處理是內核中最基本的功能,也是操作系統(tǒng)賴以活動的基礎,為了縮短屏蔽中斷的時間,增加系統(tǒng)內的并發(fā)性,通常它僅僅進行有限的、簡短的處理,其余任務交給在內核之外的特殊用戶態(tài)進程完成。當中斷事件產生時,先由內核截獲并轉向中斷處理例行程序進行原則處理,它分析中斷事件的類型和性質,進行必要的狀態(tài)修改,然后交給內核之外的進程去處理。例如,產生外圍設備結束中斷事件時,內核首先分析是否正常結束,如果是正常結束,那么,就應釋放等待該外圍傳輸的進程;否則啟動相應設備管理進程進行出錯或異常處理。又如當操作員請求從控制臺輸入命令時,內核將把這一任務轉交給命令管理進程去處理,以接收和執(zhí)行命令。

  (2)短程調度。主要職能是分配處理器。當系統(tǒng)中發(fā)生了一個事件之后,可能一個進程要讓出處理器,而另一個進程又要獲得處理器。短程調度按照一定的策略管理處理器的轉讓,以及完成保護和恢復現(xiàn)場的工作。由于它是協(xié)調進程競爭處理器資源的程序,所以它不是進程而是內核中的一個程序。

  (3)原語管理。原語是內核中實現(xiàn)某一功能的不可中斷過程。為了協(xié)調進程完成通信、并發(fā)執(zhí)行和共享資源,各種原語是必不可少的。通信原語為進程相互傳遞消息,同步原語能協(xié)調并發(fā)進程之間的種種制約關系。此外,還有其他原語,如啟動外圍設備工作的啟動原語,若啟動不成功則請求啟動者應等待,顯然,這個啟動過程應該是完整的,否則在成為等待狀態(tài)時,可能外圍設備已經空閑。由于設備的操作與硬件密切相關,故通常設備驅動程序等功能都放在內核中完成。

  內核是操作系統(tǒng)對裸機的首次改造,內核和裸機組成了一臺虛擬機,進程就在這臺虛擬機上運行,它比裸機的功能更強大,具有以下特性:

  (1)虛擬機沒有中斷,因而,進程的設計者不再需要有硬件中斷的概念,用戶進程執(zhí)行中無須處理中斷;

  (2)虛擬機為每個進程提供了一臺虛擬處理器,每個進程就好像在各自的私有處理器上順序地推進,實現(xiàn)了多個進程的并發(fā)執(zhí)行;

  (3)虛擬機為進程提供了功能較強的指令系統(tǒng),即它們能夠使用機器非特權指令、系統(tǒng)調用和原語所組成的新的指令系統(tǒng)。

  為了保證系統(tǒng)的有效性和靈活性,設計內核應遵循少而精的原則。如果內核功能過強,則一方面在修改系統(tǒng)時可能牽動內核;另一方面它占用的內存容量和執(zhí)行時間都會增大,且屏蔽中斷的時間過長也會影響系統(tǒng)效率。因而,設計內核時應注意:中斷處理要簡單;調度算法要有效;原語應靈活有力、數量適當。這樣就可以做到下次修改系統(tǒng)時,盡量少改動內核,執(zhí)行時中斷屏蔽時間縮短。

  2.進程管理

  程序本身并不能做什么,只有在CPU執(zhí)行它的指令時才能有所作為;因此,可以把進程看做是正在運行的程序。但是當我們進一步研究時,對進程的定義將更為普遍。例如:一個分時用戶程序(如編譯器)是一個進程,個人用戶在PC 上運行的字處理程序是一個進程,一個系統(tǒng)任務(如輸出到打印機)也是一個進程,并可以提供允許進程創(chuàng)建與其并發(fā)執(zhí)行的子進程的系統(tǒng)調用。

  進程需要特定的資源(包括CPU時間、內存、文件和I/O設備)來完成工作。這些資源或者在進程創(chuàng)建時分配給它,或者在其運行時分配。除了在進程創(chuàng)建時所獲得的各種物理資源和邏輯資源以外,各種各樣的初始化數據(或輸入)也可能一同傳送給進程。例如,考慮一個能夠在終端的顯示屏上顯示一個文件狀態(tài)的進程。這個進程將獲得包含輸入的文件名,將執(zhí)行相應的指令和系統(tǒng)調用來獲取所期望的信息并顯示在終端上。

  著重強調程序本身不是進程;程序是靜態(tài)實體(passive entity)(好像是存儲在磁盤中的文件的內容),而進程是動態(tài)實體(active entity),它用一個程序計數器來指明要執(zhí)行的下一條指令。進程必須要按順序執(zhí)行,CPU執(zhí)行完進程的一條指令后再執(zhí)行下一條,直到進程結束。進一步地講,一次最多執(zhí)行一條代表該進程的指令。這樣,從來就不會出現(xiàn)兩個獨立運行的序列。但一個程序在運行時創(chuàng)建多個進程是非常普遍的。

  進程是并發(fā)程序設計的一個工具,并發(fā)程序設計支撐了多道程序設計,由于進程能確切、動態(tài)地刻畫計算機系統(tǒng)內部的并發(fā)性,更好地解決系統(tǒng)資源的共享性,所以,在操作系統(tǒng)的發(fā)展史上,進程概念被較早地引入了系統(tǒng)。它在操作系統(tǒng)的理論研究和設計實現(xiàn)上均發(fā)揮了重要作用。采用進程概念使得操作系統(tǒng)結構變得清晰,主要表現(xiàn)如下。

  (1)一個進程到另一個進程的控制轉移由進程調度機構統(tǒng)一管理,不能雜亂無章,隨意進行。

  (2)進程之間的交互如信號發(fā)送、消息傳遞和同步互斥等活動由通信及同步機制完成,從而使進程無法有意或無意破壞其他進程的數據。因此,每個進程相對獨立,相互隔離,提高了系統(tǒng)的安全性和可靠性。

  (3)進程結構較好地刻畫了系統(tǒng)的并發(fā)性,動態(tài)地描述出系統(tǒng)的執(zhí)行過程,因而具有進程結構的操作系統(tǒng),結構清晰、整齊劃一,可維護性好。

點擊查看:2011計算機考研《操作系統(tǒng)》知識點分析完整版

1 2 3 下一頁
文章搜索
萬題庫小程序
萬題庫小程序
·章節(jié)視頻 ·章節(jié)練習
·免費真題 ·模考試題
微信掃碼,立即獲取!
掃碼免費使用
考研英語一
共計364課時
講義已上傳
53214人在學
考研英語二
共計30課時
講義已上傳
5495人在學
考研數學一
共計71課時
講義已上傳
5100人在學
考研數學二
共計46課時
講義已上傳
3684人在學
考研數學三
共計41課時
講義已上傳
4483人在學
推薦使用萬題庫APP學習
掃一掃,下載萬題庫
手機學習,復習效率提升50%!
版權聲明:如果考研網所轉載內容不慎侵犯了您的權益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉載本考研網內容,請注明出處。
官方
微信
掃描關注考研微信
領《大數據寶典》
下載
APP
下載萬題庫
領精選6套卷
萬題庫
微信小程序
幫助
中心
文章責編:zhangyuqiong