版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第8章
現(xiàn)代操作系統(tǒng)實(shí)例本章學(xué)習(xí)目標(biāo)掌握UNIX系統(tǒng)的內(nèi)核管理方法了解Windows系統(tǒng)的內(nèi)核管理方法了解分布式操作系統(tǒng)特性及進(jìn)程管理方式第8章現(xiàn)代操作系統(tǒng)實(shí)例1教學(xué)內(nèi)容8.1
UNIX操作系統(tǒng)8.2
WINDOWS
2000操作系統(tǒng)8.3分布式操作系統(tǒng)8.1
UNIX操作系統(tǒng)38.1.1
UNIX操作系統(tǒng)的發(fā)展UNIX是目前最流行的操作系統(tǒng)之一,于1969年,在美國的電報(bào)電話公司(AT&T)貝爾實(shí)驗(yàn)室誕生的。最初的UNIX系統(tǒng)是用匯編語言編寫的,1973年,
Ritchie又用C語言重寫了UNIX。第8章現(xiàn)代操作系統(tǒng)實(shí)例8.1.2
UNIX操作系統(tǒng)的特點(diǎn)4多用戶多任務(wù)可移植性樹型文件系統(tǒng)結(jié)構(gòu)I/O重定向和管道技術(shù)非富的實(shí)用程序電子郵件第8章現(xiàn)代操作系統(tǒng)實(shí)例8.1.3
UNIX系統(tǒng)的內(nèi)核結(jié)構(gòu)5應(yīng)用程序及編譯器界面Shell編輯器及其組件內(nèi)
核硬
件圖8-1
UNIX系統(tǒng)層次結(jié)構(gòu)模型第8章現(xiàn)代操作系統(tǒng)實(shí)例進(jìn)程控制子系統(tǒng)進(jìn)程通信調(diào)度內(nèi)存管理硬
件
控
制硬
件圖8-2
UNIX系統(tǒng)內(nèi)核模型字符設(shè)備 塊設(shè)備設(shè)備驅(qū)動(dòng)程序高速緩存用戶程序庫函數(shù)陷阱用戶層核心層系統(tǒng)調(diào)用接口文件子系統(tǒng)第8章現(xiàn)代操作系統(tǒng)實(shí)例68.1.4
UNIX系統(tǒng)中的進(jìn)程管理7UNIX進(jìn)程的結(jié)構(gòu)用戶級(jí)上下文用戶級(jí)上下文主要成分是用戶程序。包括正文段即代碼(text)、數(shù)據(jù)段(data)兩部分。寄存器上下文寄存器上下文主要是由CPU中的一些寄存器的內(nèi)容組成的。系統(tǒng)級(jí)上下文第8章現(xiàn)代操作系統(tǒng)實(shí)例系統(tǒng)級(jí)上下文包括操作系統(tǒng)為管理該進(jìn)程所用的信息,可分為靜態(tài)和動(dòng)態(tài)兩部分。它包括:proc結(jié)構(gòu):該結(jié)構(gòu)常駐內(nèi)存,內(nèi)容包括經(jīng)常需要訪問的往息,如進(jìn)程標(biāo)識(shí)符、進(jìn)程狀態(tài)等。8user結(jié)構(gòu):該結(jié)構(gòu)暫駐內(nèi)存,進(jìn)程處于執(zhí)行狀態(tài)時(shí)調(diào)入內(nèi)存。它包含了進(jìn)程的一些私有信息,如,進(jìn)程表項(xiàng)指針、有效用戶標(biāo)識(shí)符等各種資源表格。進(jìn)程區(qū)表:從虛擬地址到物理地址的映射。核心棧:核心態(tài)執(zhí)行時(shí)過程調(diào)用的棧結(jié)構(gòu)。若干寄存器級(jí)上下文。第8章現(xiàn)代操作系統(tǒng)實(shí)例2.進(jìn)程調(diào)度算法9UNIX系統(tǒng)是分時(shí)系統(tǒng),它的進(jìn)程調(diào)度采用動(dòng)態(tài)優(yōu)先數(shù)輪轉(zhuǎn)調(diào)度算法。優(yōu)先數(shù)越小,優(yōu)先級(jí)別越高。例如,對(duì)換進(jìn)程的優(yōu)先數(shù)是0,而等待磁盤I/O進(jìn)程的優(yōu)先數(shù)是20。
UNIX
S-5中進(jìn)程的優(yōu)先級(jí)分為兩大類:用戶優(yōu)先級(jí)類和核心優(yōu)先級(jí)類。核心用兩種方式改變進(jìn)程的優(yōu)先級(jí):對(duì)核心態(tài)進(jìn)程設(shè)置優(yōu)先數(shù);對(duì)用戶態(tài)進(jìn)程計(jì)算優(yōu)先數(shù)。第8章現(xiàn)代操作系統(tǒng)實(shí)例3.進(jìn)程狀態(tài)及轉(zhuǎn)換10UNIX
System
5進(jìn)程的狀態(tài)存放在進(jìn)程的proc結(jié)構(gòu)中。這些進(jìn)程的狀態(tài)共有9個(gè),它們是:用戶態(tài)執(zhí)行。核心態(tài)執(zhí)行。內(nèi)存中睡眠。睡眠且換出。內(nèi)存中就緒。就緒且換出。僵死。被剝奪狀態(tài)。創(chuàng)建。第8章現(xiàn)代操作系統(tǒng)實(shí)例僵死喚醒返回到用戶態(tài)中斷中斷返回被剝奪圖8-3
UNIX系統(tǒng)的進(jìn)程狀態(tài)轉(zhuǎn)換內(nèi)存足用戶態(tài)執(zhí)行調(diào)度內(nèi)存中就緒核心態(tài)執(zhí)行就緒且換出系統(tǒng)調(diào)用中斷返回?fù)Q
換出
入內(nèi)存中睡眠睡眠且換出換出喚醒睡眠創(chuàng)建內(nèi)存不足11剝奪第8章現(xiàn)代操作系統(tǒng)實(shí)例4.Unix系統(tǒng)中進(jìn)程的家族關(guān)系12Unix的內(nèi)核中設(shè)置了一個(gè)0#進(jìn)程,它是惟一一個(gè)在系統(tǒng)引導(dǎo)時(shí)被創(chuàng)建的進(jìn)程。在系統(tǒng)初啟時(shí),由0#進(jìn)程再創(chuàng)建1#進(jìn)程及其它核心進(jìn)程,然后1號(hào)進(jìn)程又為每個(gè)終端創(chuàng)建命令解釋進(jìn)程;用戶輸入命令后又創(chuàng)建若干進(jìn)程,這樣便形成了一棵進(jìn)程樹。以后0號(hào)進(jìn)程作為系統(tǒng)的對(duì)換及調(diào)度進(jìn)程,1號(hào)進(jìn)程成為系統(tǒng)始祖進(jìn)程,同時(shí)又創(chuàng)建其它進(jìn)程。系統(tǒng)中除0#進(jìn)程以外,所有其它進(jìn)程都是由fork創(chuàng)建的。第8章現(xiàn)代操作系統(tǒng)實(shí)例8.1.5
UNIX系統(tǒng)的內(nèi)存管理13UNIX系統(tǒng)采用求請(qǐng)調(diào)頁存儲(chǔ)管理方式,支持內(nèi)外存的對(duì)換功能。內(nèi)存空間的分配和回收均以頁為單位進(jìn)行。1.交換將內(nèi)存中處于睡眠狀態(tài)的某些進(jìn)程調(diào)到外存交換區(qū)中,而將交換區(qū)中的就緒進(jìn)程重新調(diào)入內(nèi)存。為實(shí)現(xiàn)這種策略,系統(tǒng)內(nèi)核應(yīng)具有交換空間的管理、進(jìn)程換出和進(jìn)程換入這三個(gè)功能。第8章現(xiàn)代操作系統(tǒng)實(shí)例2.請(qǐng)求分頁14UNIX系統(tǒng)為實(shí)現(xiàn)請(qǐng)求分頁的功能,配置了四種數(shù)據(jù)結(jié)構(gòu),分別為:頁表。磁盤塊描述字。頁面數(shù)據(jù)表。交換使用表。第8章現(xiàn)代操作系統(tǒng)實(shí)例3.換頁進(jìn)程15換頁進(jìn)程為核心進(jìn)程。該進(jìn)程的主要任務(wù)是增加內(nèi)存中所有的有效頁年齡,并將內(nèi)存中長(zhǎng)期不用的頁面換出。4.缺頁在UNIX系統(tǒng)中可能會(huì)出現(xiàn)兩類缺頁:有效缺頁和保護(hù)性缺頁。當(dāng)出現(xiàn)缺頁時(shí),缺頁處理程序可能要從盤上讀一個(gè)頁面到內(nèi)存,并在I/O執(zhí)行期間睡眠。第8章現(xiàn)代操作系統(tǒng)實(shí)例8.1.6
UNIX系統(tǒng)的文件管理16UNIX系統(tǒng)中的文件子系統(tǒng),既具有很強(qiáng)的功能,又具有靈活性。按文件的內(nèi)部構(gòu)造方式,UNIX系統(tǒng)將文件分為三類,即:普通文件、目錄文件和特別文件(即設(shè)備文件)。UNIX系統(tǒng)的目錄結(jié)構(gòu)為有向非循環(huán)圖結(jié)構(gòu)。第8章現(xiàn)代操作系統(tǒng)實(shí)例1.文件卷的組織結(jié)構(gòu)17U0N#
IX系1#統(tǒng)2中#
3,#
文……件是以K#
塊為(單K+1位)#存放……在介質(zhì)N#上的,存儲(chǔ)介質(zhì)可以是磁盤或磁帶。通常把每個(gè)磁盤或磁帶看作一個(gè)文件卷。上圖示出了UNIX系統(tǒng)的文件卷結(jié)構(gòu)。其中,0號(hào)塊是系統(tǒng)的引導(dǎo)塊或空閑,當(dāng)該系統(tǒng)需引導(dǎo)時(shí)才有引導(dǎo)程序放在這里,其它一般文件系統(tǒng)都不使用引導(dǎo)塊;1號(hào)塊為超級(jí)塊(也稱為專用塊),它既是文件系統(tǒng)的控制塊,也是對(duì)空閑盤塊和I結(jié)點(diǎn)等資源的管理表。從2號(hào)塊到第K號(hào)塊為索引結(jié)點(diǎn)區(qū),(K值由系統(tǒng)配置給定),用來存放該文件卷中所有文件的索引結(jié)點(diǎn);從第K+1塊至第N塊為文件區(qū),用來存放系統(tǒng)中所有的文件。第8章現(xiàn)代操作系統(tǒng)實(shí)例超級(jí)塊包括以下內(nèi)容:18文件系統(tǒng)大小??臻e盤塊數(shù)目??臻e索引結(jié)點(diǎn)數(shù)目。空閑索引結(jié)點(diǎn)索引表。封鎖標(biāo)記。專用塊修改標(biāo)記。其它信息。第8章現(xiàn)代操作系統(tǒng)實(shí)例2.文件的目錄結(jié)構(gòu)19UNIX系統(tǒng)的目錄結(jié)構(gòu)采用了將文件名與文件描述信息分開的方法。文件目錄由文件名和該文件的索引結(jié)點(diǎn)號(hào)構(gòu)成。其中,文件名占14個(gè)字節(jié),索引結(jié)點(diǎn)號(hào)占2個(gè)字節(jié)。因此,在1KB的盤塊中就可以存放64(1K/16)個(gè)目錄項(xiàng)。這樣就節(jié)省了系統(tǒng)查找及訪問文件的時(shí)間。第8章現(xiàn)代操作系統(tǒng)實(shí)例文件名(14B)磁盤索引結(jié)點(diǎn)號(hào)(2B)F1.c45Myfile38F6.c67ABC56…………20UNIX一個(gè)文件的磁盤索引結(jié)點(diǎn)占64個(gè)字節(jié),主要包括文件標(biāo)識(shí)符、文件存取權(quán)限、文件物理地址、文件長(zhǎng)度、文件連接系數(shù)、文件存取時(shí)間等一些文件的重要信息。第8章現(xiàn)代操作系統(tǒng)實(shí)例3.文件的物理結(jié)構(gòu)21UNIX系統(tǒng)文件的物理結(jié)構(gòu)采用混合索引方式,對(duì)分配給文件的磁盤塊進(jìn)行管理。在UNIX文件系統(tǒng)的索引結(jié)點(diǎn)中,存在一項(xiàng)i.addr[13],用于存放該文件的磁盤塊號(hào)。如圖8-7示出了UNIX系統(tǒng)的混合索引文件結(jié)構(gòu)。第8章現(xiàn)代操作系統(tǒng)實(shí)例(1)直接尋址i.addr[0]~i.addr[9]這10項(xiàng)。直接從索引結(jié)點(diǎn)中找出該文件所在的磁盤塊號(hào),訪問速度較快。22(2)一次間接尋址方式i.addr[10]這一項(xiàng)中存放的磁盤塊號(hào)。(3)二次間接尋址方式i.addr[11]存放的磁盤塊號(hào),采用兩級(jí)索引的方式。(4)三次間接尋址方式i.addr[12]存放的磁盤塊號(hào),采用三級(jí)索引的方式。第8章現(xiàn)代操作系統(tǒng)實(shí)例4.磁盤空間的管理方式23UNIX系統(tǒng)對(duì)于空閑盤塊的管理,采用成組鏈接法。該方法把第一組中的所有空閑盤塊號(hào)放入超級(jí)塊的空閑盤塊號(hào)棧中。5.系統(tǒng)為打開文件建立的數(shù)據(jù)結(jié)構(gòu)UNIX系統(tǒng)打開文件的操作,就是由操作系統(tǒng)在內(nèi)存為文件建立相應(yīng)的數(shù)據(jù)結(jié)構(gòu)。系統(tǒng)為打開文件建立的數(shù)據(jù)結(jié)構(gòu)有三個(gè),即:用戶文件描述符表、文件表和內(nèi)存索引結(jié)點(diǎn)。第8章現(xiàn)代操作系統(tǒng)實(shí)例fpfp用戶文件描述符表內(nèi)存索引結(jié)點(diǎn)文件表圖8-7
UNIX打個(gè)數(shù)據(jù)結(jié)構(gòu)及三種讀寫方式第二種f方p
式fp第三種方式fp第一種方式用戶四 用戶五
用用戶一 用戶f二p
用戶三戶六……第i個(gè)內(nèi)存索引結(jié)點(diǎn)……第j個(gè)內(nèi)存索引結(jié)點(diǎn)……第k個(gè)內(nèi)存索引結(jié)點(diǎn)……第l個(gè)內(nèi)存索引結(jié)點(diǎn)……f_offsetf_inodef-flagf-countf_offsetf_inodef-flagf-count……f_offsetf_inode……f_offsetf開_文in件o在de內(nèi)存的三……f_offsetf_inodefpfp24fpfpfpfp第8章現(xiàn)代操作系統(tǒng)實(shí)例8.1.7
UNIX系統(tǒng)的設(shè)備管理25UNIX系統(tǒng)把設(shè)備分為兩類,即字符設(shè)備和塊設(shè)備。在UNIX系統(tǒng)中有兩種類型的I/O,即:緩沖I/O和無緩沖I/O。1.緩沖高速緩存UNIX系統(tǒng)中的緩沖Cache實(shí)際上是一個(gè)磁盤Cache。對(duì)于磁盤的I/O操作通過緩沖Cache處理。第8章現(xiàn)代操作系統(tǒng)實(shí)例2.字符隊(duì)列26緩沖Cache可支持像磁盤、磁帶這樣的塊設(shè)備。另一種緩沖則適用于面向字符的設(shè)備,如終端、打印機(jī)等。字符隊(duì)列可以由I/O設(shè)備寫、處理器讀或由處理器來寫、I/O設(shè)備讀。3.無緩沖I/O無緩沖I/O是進(jìn)程進(jìn)行I/O的最快的方法,它在設(shè)備和進(jìn)程空間之間使用DMA,進(jìn)行無緩沖I/O的進(jìn)程在主存中被鎖起來,不能被換出。通過給高端內(nèi)存加鎖,減少了交換的機(jī)會(huì),但也降低了整個(gè)系統(tǒng)的性能。同時(shí),I/O設(shè)備也固定于一個(gè)進(jìn)程,在傳輸中,不能為其他進(jìn)程使用。第8章現(xiàn)代操作系統(tǒng)實(shí)例4.UNIX設(shè)備27UNIX系統(tǒng)本身可識(shí)別如下5種設(shè)備,即:磁盤驅(qū)動(dòng)器、磁帶驅(qū)動(dòng)器、終端、通信線、打印機(jī)。磁盤的讀/寫方式讀方式一般讀方式。提前讀方式。寫方式一般寫方式。異步寫方式。延遲寫方式。第8章現(xiàn)代操作系統(tǒng)實(shí)例8.2
Windows
2000操作系統(tǒng)288.2.1
Windows
2000概述Windows操作系統(tǒng)家族是微軟公司的核心產(chǎn)品之一,其產(chǎn)品包括Windows
95、Windows98、Windows
Me等桌面型操作系統(tǒng)以及Windows
NT、Windows2000服務(wù)器操作系統(tǒng)。Windows
2000是一個(gè)商用多用戶操作系統(tǒng),其開發(fā)目標(biāo)是開發(fā)工作站和服務(wù)器上的32位操作系統(tǒng),以充分利用32位微處理器等硬件的新特性,并使它很容易適用將來的硬件變化,增加它的兼容性,同時(shí),又不影響已有的應(yīng)用程序的兼容性。第8章現(xiàn)代操作系統(tǒng)實(shí)例8.2.2
Windows
2000中的進(jìn)程和線程的特點(diǎn)第8章現(xiàn)代操作系統(tǒng)實(shí)例Windows2000操作系統(tǒng)對(duì)CPU的管理可體現(xiàn)為它的進(jìn)程和線程模型。它具有以下特點(diǎn):它是多任務(wù)(多進(jìn)程)、多線程、對(duì)稱多處理的。由于采用了客戶/服務(wù)器模型,Windows
2000體現(xiàn)為多個(gè)服務(wù)器進(jìn)程。Windows2000的進(jìn)程以及線程全部作為對(duì)象實(shí)現(xiàn),并通過對(duì)象服務(wù)訪問。進(jìn)程管理程序在它所管理的子進(jìn)程之間不具有父進(jìn)程/子進(jìn)程或其他關(guān)系。在該系統(tǒng)中,基本的調(diào)度實(shí)體是線程,采用動(dòng)態(tài)優(yōu)先級(jí)多級(jí)調(diào)度隊(duì)列算法,允許可搶占CPU,但核心代碼不可被搶占。
6.可以在進(jìn)程間共享對(duì)象,以及具有靈活的內(nèi)部進(jìn)程通信能力。7.Windows
NT原設(shè)計(jì)可以Intel、MIPS等多種CPU上運(yùn)行,但出于市場(chǎng)因素的考慮,Windows
2000只在Intel上運(yùn)行2。98.2.3
Windows
2000中的進(jìn)程第8章現(xiàn)代操作系統(tǒng)實(shí)例進(jìn)程與線程Windows
2000中的進(jìn)程由以下幾部分組成:該進(jìn)程所執(zhí)行的程序。一個(gè)由該進(jìn)程專用的地址空間。系統(tǒng)資源。至少有一個(gè)線程。2.進(jìn)程的管理在Windows
2000中,每個(gè)進(jìn)程由一個(gè)進(jìn)程對(duì)象結(jié)構(gòu)表現(xiàn),并有一個(gè)執(zhí)行現(xiàn)場(chǎng)。進(jìn)程執(zhí)行現(xiàn)場(chǎng)包括進(jìn)程的虛地址空間、該進(jìn)程可見的資源集合、該進(jìn)程的所有線程的集合。303.進(jìn)程的同步與互斥■Windows
2000中提供了互斥對(duì)象、信號(hào)量對(duì)象和事件對(duì)象等3種不同對(duì)象和相應(yīng)的系統(tǒng)調(diào)用,用于進(jìn)程和線程的同步。4.進(jìn)程通信有以下幾種:信號(hào)(Signal)通信、共享存儲(chǔ)區(qū)、管道通信、郵件槽通信、
Windows套接字、剪貼板。8.2.4
Windows
2000中線程的實(shí)現(xiàn)32線程的構(gòu)成在Windows
2000中,一個(gè)線程由以下幾部分構(gòu)成:線程標(biāo)識(shí)符。一組易變寄存器的內(nèi)容,用來表示CPU的狀態(tài)。兩個(gè)棧。一個(gè)供該線程專用的存儲(chǔ)區(qū)域。第8章現(xiàn)代操作系統(tǒng)實(shí)例2.線程的狀態(tài)33Windows
2000的線程狀態(tài)共有以下六個(gè):就緒(ready)。備用(standby)。運(yùn)行(running)。等待(waiting)。轉(zhuǎn)換(transition)。終止(terminated)。第8章現(xiàn)代操作系統(tǒng)實(shí)例8.2.5
Windows
2000的調(diào)度算法34Windows
2000/NT中,基本的調(diào)度實(shí)體是線程。線程調(diào)度算法采用多級(jí)調(diào)度隊(duì)列動(dòng)態(tài)優(yōu)先級(jí)算法。實(shí)現(xiàn)該調(diào)度算法的是內(nèi)核中的一個(gè)數(shù)據(jù)結(jié)構(gòu),稱為“調(diào)度程序數(shù)據(jù)庫”。Windows
2000是搶占式多任務(wù)的操作系統(tǒng)。運(yùn)行內(nèi)核代碼的線程不能被搶占但內(nèi)核的大部分是可被高級(jí)中斷所中斷的。第8章現(xiàn)代操作系統(tǒng)實(shí)例8.2.6
Windows
2000的內(nèi)存管理35Windows
2000的內(nèi)存管理采用頁式虛存。在功能和用戶界面上,具有如下特點(diǎn):提供32位虛地址內(nèi)存功能強(qiáng)大地址空間分布及地址轉(zhuǎn)換第8章現(xiàn)代操作系統(tǒng)實(shí)例8.2.7
Windows
2000的文件系統(tǒng)36Windows
2000文件系統(tǒng)的特點(diǎn)Windows
2000文件系統(tǒng)具有以下特點(diǎn):兼容性和可擴(kuò)充性。功能強(qiáng)大。Windows
2000文件系統(tǒng)的實(shí)現(xiàn)Windows
2000文件系統(tǒng)的整體實(shí)現(xiàn)機(jī)制采用了面向?qū)ο蟮哪P?。文件?duì)象由I/O管理器進(jìn)行管理。NTFS、FAT、HPFS等文件系統(tǒng),稱為文件系統(tǒng)驅(qū)動(dòng)程序。用戶打開文件表和系統(tǒng)打開文件表在
Windows2000中,體現(xiàn)為每個(gè)進(jìn)程設(shè)置一個(gè)進(jìn)程對(duì)象表,以及它所指向的具體對(duì)象體。第8章現(xiàn)代操作系統(tǒng)實(shí)例3.Windows的NTFS文件格式Window
2000支持文件分配表(FAT)形式的文件系統(tǒng)和NTFS文件系統(tǒng)。Window
2000還支持CDFS。CDFS是CD-ROM的文件系統(tǒng),用于讀取CD-ROM。NTFS(Windows
NT文件系統(tǒng))以簇為單位分配磁盤卷上的空間。簇的大小是磁盤格式化時(shí)確定的,該系統(tǒng)采用邏輯簇號(hào)作為磁盤地址。8.2.8
Windows設(shè)備管理第8章現(xiàn)代操作系統(tǒng)實(shí)例1.Windows
2000中的設(shè)備管理具有以下特點(diǎn):支持進(jìn)程級(jí)異步I/O操作。具有與塊設(shè)備管理相關(guān)的文件系統(tǒng)特點(diǎn)。允許系統(tǒng)管理員動(dòng)態(tài)地向系統(tǒng)中增加或從系統(tǒng)中刪除設(shè)備。提供服務(wù)程序,簡(jiǎn)化了設(shè)備驅(qū)動(dòng)程序的開發(fā)工作。分層驅(qū)動(dòng)程序模型提供可擴(kuò)充性,使設(shè)備的動(dòng)態(tài)增刪更容易實(shí)現(xiàn)。382.Windows
2000的I/O系統(tǒng)結(jié)構(gòu)Windows2000I/O系統(tǒng)由一些執(zhí)行體組件和設(shè)備驅(qū)動(dòng)程序組成。這些執(zhí)行體組件和設(shè)備驅(qū)動(dòng)程序有以下幾點(diǎn):I/O管理器把把程序和系統(tǒng)組件連接到各種虛擬的、邏輯的和物理的設(shè)備上,并且定義了一個(gè)支持設(shè)備驅(qū)動(dòng)程序的基本構(gòu)架。設(shè)備允動(dòng)程序?yàn)槟撤N類型的設(shè)備提供一個(gè)I/O接口。即插即用管理器通過與I/O管理器和總線驅(qū)動(dòng)程序的協(xié)同工作檢測(cè)硬件資源的分配,并且檢測(cè)相應(yīng)硬件設(shè)備的添加和刪除。電源管理器通過與I/O管理器的協(xié)同工作檢測(cè)整個(gè)系統(tǒng)和單個(gè)硬件設(shè)備,完成不同電源狀態(tài)的轉(zhuǎn)換。WMI支持例程允許驅(qū)動(dòng)程序使用這些支持例程作為媒介,與用戶態(tài)運(yùn)行的WMI服務(wù)通訊。注冊(cè)表存儲(chǔ)基本硬件設(shè)備的描述信息以及驅(qū)動(dòng)程序的初始化和配置信息。硬件抽象層(HAL)I/O訪問例程把設(shè)備驅(qū)動(dòng)程序與多種多樣的硬件平臺(tái)隔離開來。8.3
分布式操作系統(tǒng)40分布式系統(tǒng)泛指各種包含多個(gè)計(jì)算機(jī)(處理器)的信息處理系統(tǒng),因此,并行計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)系統(tǒng)也都屬于分布式系統(tǒng)。多處理機(jī)系統(tǒng)的當(dāng)前趨勢(shì)是研究并解決若干物理處理機(jī)的分布及處理問題。構(gòu)造這樣的系統(tǒng),有兩種基本類型:第一種是緊密耦合系統(tǒng),其中的處理機(jī)共享存儲(chǔ)空間和時(shí)鐘。第二種是松散耦合系統(tǒng),其中的處理機(jī)不共享存儲(chǔ)區(qū)和時(shí)鐘。配置在分布式系統(tǒng)上的操作系統(tǒng)稱為分布式操作系統(tǒng)。第8章現(xiàn)代操作系統(tǒng)實(shí)例8.3.1
分布式操作系統(tǒng)的特性41分布式操作系統(tǒng)具有以下特性:
1.透明性可靠性高性能伸縮性第8章現(xiàn)代操作系統(tǒng)實(shí)例8.3.2
進(jìn)程遷移42進(jìn)程遷移就是將一個(gè)進(jìn)程的狀態(tài),從一臺(tái)機(jī)器轉(zhuǎn)移到另一臺(tái)機(jī)器上,從而使該進(jìn)程能在目標(biāo)機(jī)上執(zhí)行。進(jìn)程遷移主要有以下四方面的原因:負(fù)載共享通信性能可獲得性利用特定資源第8章現(xiàn)代操作系統(tǒng)實(shí)例8.3.3
分布式進(jìn)程管理43在分布式系統(tǒng)中,要實(shí)現(xiàn)進(jìn)程的同步,主要采用了以下方法:1.事件定序這種算法將事發(fā)前關(guān)系擴(kuò)充成為系統(tǒng)中所有事件的全序關(guān)系。2.Lamport算法該算法基于分布式隊(duì)列的概念,算法如下:第8章現(xiàn)代操作系統(tǒng)實(shí)例該算法基于分布式隊(duì)列的概念,并含有以下假定:①分布式系統(tǒng)由N個(gè)站點(diǎn)組成,每個(gè)站點(diǎn)都有惟一的編號(hào)1~N。每個(gè)站點(diǎn)都只有一個(gè)進(jìn)程負(fù)責(zé)進(jìn)程互斥訪問資源。②按發(fā)送的順序接收從一個(gè)進(jìn)程到另一個(gè)進(jìn)程的消息。③每條消息都在有限時(shí)間內(nèi)正確地送到目的地。④網(wǎng)絡(luò)是全互連的,任意兩個(gè)進(jìn)程間可以直接傳遞消息,不需另一個(gè)節(jié)點(diǎn)中轉(zhuǎn)。44第8章現(xiàn)代操作系統(tǒng)實(shí)例3.Ricart算法45Ricart算法與Lamport算法的假設(shè)相同。每個(gè)站點(diǎn)都有一個(gè)進(jìn)程負(fù)責(zé)控制資源的分配。該進(jìn)程有一個(gè)數(shù)組q并遵循以下規(guī)則:當(dāng)進(jìn)程Pi請(qǐng)求訪問資源時(shí),它發(fā)出一個(gè)請(qǐng)求
Request(Ti,i)。時(shí)戳為當(dāng)前本地時(shí)鐘的值。將這條消息放入自身數(shù)組q[i]中,然后將消息發(fā)送給所有其它進(jìn)程。當(dāng)進(jìn)程Pj收到Request(Ti,i)后,按下列規(guī)則,進(jìn)行處理。如果Pj正處于臨界段,則延遲發(fā)送Reply消息;如果Pj并不等待進(jìn)入臨界段,就發(fā)送Replyt(Tj,j)消息給所有其它進(jìn)程;第8章現(xiàn)代操作系統(tǒng)實(shí)例如果Pj等待進(jìn)入其臨界段,且收到的消息在Pj的Request之后,則將到來的消息放入其數(shù)組的q[i]中,并延遲發(fā)送Reply消息。如果Pj等待進(jìn)入其臨界段,但收到的消息在Pj的Request之前,則將到來的消息放入其數(shù)組的q[i]中,并發(fā)送Reply消息給進(jìn)程Pi。(3)如果進(jìn)程Pi從所有其它進(jìn)程都收到了Reply消息,它就可以訪問資源,進(jìn)入該臨界段。(4)當(dāng)進(jìn)程Pi離開臨界段時(shí),它給每個(gè)掛起的Request發(fā)送一個(gè)Reply消息,從而釋放資源。在本算法中,需要2(N-1)條消息,其中(N-1)個(gè)Request消息,表示進(jìn)程Pi要進(jìn)入臨界段;(N-1)個(gè)Reply消息以允許其它進(jìn)程的訪問。本算法利用時(shí)間戳來實(shí)現(xiàn)進(jìn)程的同斥,可以避免死鎖及饑餓。464.令牌方法47令牌本身是一種特定格式的報(bào)文,通常長(zhǎng)度為1B。它是為了實(shí)現(xiàn)進(jìn)程的互斥及象征存取權(quán)利,在系統(tǒng)設(shè)置的。它不斷地在由進(jìn)程組成的邏輯環(huán)中循環(huán)。環(huán)中的每一個(gè)進(jìn)程都有惟一的前趨和后繼。在使用令牌傳送時(shí),必須滿足以下兩點(diǎn):邏輯環(huán)應(yīng)能夠及時(shí)發(fā)現(xiàn)環(huán)路中某進(jìn)程失效或退出,以及通信鏈路的故障。一旦發(fā)現(xiàn)這種進(jìn)程或故障,應(yīng)立即
撤消該進(jìn)程,對(duì)對(duì)邏輯環(huán)進(jìn)行重構(gòu)。保證邏輯環(huán)中在任何時(shí)候都有令牌在循環(huán)。一旦發(fā)現(xiàn)令牌丟失,應(yīng)立即選擇一個(gè)進(jìn)程,用來產(chǎn)生一個(gè)新的令牌。第8章現(xiàn)代操作系統(tǒng)實(shí)例本章小結(jié)48本章主要介紹了目前常用的操作系統(tǒng)UNIX、Windows系統(tǒng)的內(nèi)核結(jié)構(gòu),對(duì)分布式操作系統(tǒng)作了簡(jiǎn)要介紹,同時(shí)對(duì)于操作
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度內(nèi)陸水路貨物運(yùn)輸代理合同樣本
- 二零二五年度廣告?zhèn)髅叫袠I(yè)設(shè)計(jì)人員派遣合同范本2篇
- 二零二五年度土地征收與補(bǔ)償安置合同模板
- 2025年度上市公司人事勞動(dòng)合同模板2篇
- 2025年度個(gè)人旅游線路設(shè)計(jì)服務(wù)合同4篇
- 二零二五年度電梯鋼結(jié)構(gòu)高空作業(yè)安全防護(hù)承包合同2篇
- 2025版智慧苗圃基地規(guī)劃設(shè)計(jì)施工一體化合同4篇
- 二零二五版內(nèi)墻批灰與智能家居照明系統(tǒng)合同4篇
- 課題申報(bào)參考:面向破損兵馬俑修復(fù)的碎片多尺度全局T o k e n掩碼學(xué)習(xí)分類研究
- 2025年度商鋪?zhàn)赓U合同(含租賃物安全責(zé)任)
- 吉林省吉林市普通中學(xué)2024-2025學(xué)年高三上學(xué)期二模試題 生物 含答案
- 《電影之創(chuàng)戰(zhàn)紀(jì)》課件
- 教學(xué)查房及體格檢查評(píng)分標(biāo)準(zhǔn)
- 西方經(jīng)濟(jì)學(xué)(第二版)完整整套教學(xué)課件
- 人教版高一數(shù)學(xué)上冊(cè)期末考試試卷及答案
- 圍術(shù)期下肢深靜脈血栓預(yù)防的術(shù)中護(hù)理
- 三方采購協(xié)議范本
- 《材料分析測(cè)試技術(shù)》全套教學(xué)課件
- 安全學(xué)原理第2版-ppt課件(完整版)
- 傾聽是一種美德
- 武漢東湖賓館建設(shè)項(xiàng)目委托代建合同
評(píng)論
0/150
提交評(píng)論