首頁 - 網(wǎng)校 - 萬題庫 - 美好明天 - 直播 - 導(dǎo)航
熱點搜索
學(xué)員登錄 | 用戶名
密碼
新學(xué)員
老學(xué)員

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

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

  1.4.2 操作系統(tǒng)功能的實現(xiàn)模型

  操作系統(tǒng)本身是一組程序,像其他程序一樣也在處理器上執(zhí)行,那么,操作系統(tǒng)程序是否組織成進程?它是如何控制和怎樣執(zhí)行的呢?下面來討論這個問題。從操作系統(tǒng)的執(zhí)行方式來看,可以把它分成:非進程內(nèi)核模型、OS功能(函數(shù))在用戶進程內(nèi)執(zhí)行的模型和OS功能(函數(shù))作為獨立進程執(zhí)行的模型3種。

  1.非進程內(nèi)核模型

  許多老式操作系統(tǒng)的實現(xiàn)采用非進程內(nèi)核模型,即操作系統(tǒng)的功能都不組織成進程來實現(xiàn),如 圖1-2所示,該模型包括一個較大的操作系統(tǒng)內(nèi)核程序,進程的執(zhí)行在內(nèi)核之外。當(dāng)中斷發(fā)生時,當(dāng)前運行進程的上下文現(xiàn)場信息將被保存,并把控制權(quán)傳遞給操作系統(tǒng)內(nèi)核。操作系統(tǒng)具有自己的內(nèi)存區(qū)和系統(tǒng)堆棧區(qū),用于控制過程調(diào)用和返回。它將在核心態(tài)執(zhí)行相應(yīng)的操作,并根據(jù)中斷的類型和具體的情況,或者是恢復(fù)被中斷進程的現(xiàn)場并讓它繼續(xù)執(zhí)行,或是轉(zhuǎn)向進程調(diào)度指派另一個就緒進程運行。

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

  圖1-2 非內(nèi)核進程模型

  2.OS功能在用戶進程內(nèi)執(zhí)行的模型

  小型機和工作站操作系統(tǒng)(如UNIX等)往往采用OS的所有功能在用戶進程內(nèi)執(zhí)行的模型,如圖1-3所示,在這種實現(xiàn)模型中,大部分操作系統(tǒng)功能組織成一組例行程序供用戶程序調(diào)用,認為操作系統(tǒng)例程與用戶進程是上下文相關(guān)的,操作系統(tǒng)的地址空間被包含在用戶進程的地址空間中;因而,操作系統(tǒng)例行程序也在用戶進程的上下文環(huán)境中執(zhí)行。圖1-4給出了OS的所有功能在用戶進程內(nèi)執(zhí)行的模型中的進程映像,它既包含進程控制塊、用戶堆棧、容納用戶程序和數(shù)據(jù)的地址空間等,還包括操作系統(tǒng)內(nèi)核的程序、數(shù)據(jù)和系統(tǒng)堆棧區(qū)。

  當(dāng)發(fā)生一次中斷或系統(tǒng)調(diào)用后,處理器狀態(tài)將被置成內(nèi)核模式,控制從用戶進程手中被剝奪并傳遞給操作系統(tǒng)例行程序。此時,發(fā)生了模式切換,模式上下文(現(xiàn)場)信息被保存,但是進程上下文切換并沒有發(fā)生,操作系統(tǒng)仍在該用戶進程中執(zhí)行,提供單獨的內(nèi)核堆棧用于管理進程在核心態(tài)下執(zhí)行時的調(diào)用和返回,操作系統(tǒng)例行程序和數(shù)據(jù)放在共享地址空間,且被所有用戶進程共享。

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

  圖1-3 OS 的功能在用戶進程內(nèi)執(zhí)行的模型

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

  圖1-4 OS 的所有功能在用戶進程內(nèi)執(zhí)行模型的進程映像

  當(dāng)操作系統(tǒng)例程完成了工作之后,如果讓當(dāng)前進程繼續(xù)運行的話,就可以做一次模式切換來恢復(fù)執(zhí)行原先被中斷的用戶進程。這種技術(shù)提供了不必要通過進程上下文切換就可以中斷用戶進程來調(diào)用操作系統(tǒng)例行程序的手段。如果發(fā)生進程切換,控制就被傳遞給操作系統(tǒng)的進程切換例行程序,由它來實現(xiàn)進程切換操作,把當(dāng)前進程的狀態(tài)置為非運行狀態(tài),而指派另一個就緒進程來占有處理器運行。需要指出的是,一些系統(tǒng)中進程切換例行程序是在當(dāng)前進程中執(zhí)行的,而另一些系統(tǒng)則不是。

  3.OS功能作為獨立進程執(zhí)行的模型

  OS 功能作為獨立進程執(zhí)行的模型把操作系統(tǒng)組織成一組系統(tǒng)進程、即操作系統(tǒng)功能是這些系統(tǒng)進程集合運行的結(jié)果,這些系統(tǒng)進程也稱為服務(wù)器或服務(wù)器進程,于是與用戶進程或其他服務(wù)器進程之間構(gòu)成了Client/Server 關(guān)系,Windows 2000/XP采用了這種結(jié)構(gòu)。如圖1-5所示,除了極少部分功能在內(nèi)核模式下運行,大部分操作系統(tǒng)功能被組織在一組分離的獨立進程內(nèi)實現(xiàn),這組進程在用戶模式下運行,而進程切換例行程序的執(zhí)行仍然在進程之外。

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

  圖1-5 OS 功能作為獨立進程執(zhí)行的模型

  這一實現(xiàn)模型有很多優(yōu)點。首先,它采用了模塊化的操作系統(tǒng)實現(xiàn)方法,模塊之間具有最少和簡潔的接口。其次,大多數(shù)操作系統(tǒng)功能被組織成獨立的進程,有利于操作系統(tǒng)的實現(xiàn)、配置和擴充,如性能監(jiān)控程序用來記錄各種資源的利用率和系統(tǒng)中用戶進程的執(zhí)行速度,由于這些程序并不提供給進程特別的服務(wù),僅僅被操作系統(tǒng)調(diào)用,把它設(shè)計成一個服務(wù)器進程,便可賦予一定的優(yōu)先級,夾在其他進程中運行。最后,這一結(jié)構(gòu)在多處理器和多計算機的環(huán)境下非常有效,一些操作系統(tǒng)服務(wù)可指派到專門處理器上執(zhí)行,有利于系統(tǒng)性能的改進。

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