操作系統(tǒng)原理_第1頁
操作系統(tǒng)原理_第2頁
操作系統(tǒng)原理_第3頁
操作系統(tǒng)原理_第4頁
操作系統(tǒng)原理_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、操作系統(tǒng)原理第一章操作系統(tǒng)概論1.1 操作系統(tǒng)的概念操作系統(tǒng)的特征:并發(fā)性,共享性,隨機(jī)性。研究操作系統(tǒng)的觀點(diǎn):軟件的觀點(diǎn),資源管理的觀點(diǎn),進(jìn)程的觀點(diǎn),虛擬機(jī)的觀點(diǎn),服務(wù)提供者的觀點(diǎn)。操作系統(tǒng)白功能:1.進(jìn)程管理:進(jìn)程控制,進(jìn)程同步,進(jìn)程間通信,調(diào)度。2 .存儲(chǔ)管理:內(nèi)存分配與回收,存儲(chǔ)保護(hù),內(nèi)存擴(kuò)充。3 .文件管理:文件存儲(chǔ)空間管理,目錄管理,文件系統(tǒng)安全性。4 .設(shè)備管理5 .用戶接口UNIX是一個(gè)良好的、通用的、多用戶、多任務(wù)、分時(shí)操作系統(tǒng)。1969年AT&T公司KennethL.Thompson用匯編語言編寫了Unix第一個(gè)版本V1,之后Unix用C語言編寫,因此事可移植的。1

2、.3操作系統(tǒng)分類1 .批處理操作系統(tǒng):優(yōu)點(diǎn)是作業(yè)流程自動(dòng)化較高,資源利用率較高,作業(yè)吞吐量大,從而提高了整個(gè)系統(tǒng)的效率。缺點(diǎn)是用戶不能直接與計(jì)算機(jī)交互,不適合調(diào)試程序。2 .分時(shí)系統(tǒng):特點(diǎn)是多路性,交互性,獨(dú)占性,及時(shí)性。3 .實(shí)時(shí)操作系統(tǒng)4 .嵌入式操作系統(tǒng)5 .個(gè)人計(jì)算機(jī)操作系統(tǒng)6 .網(wǎng)絡(luò)操作系統(tǒng)7 .分布式操作系統(tǒng)8 .智能卡操作系統(tǒng)1.4操作系統(tǒng)結(jié)構(gòu)1 .整體式結(jié)構(gòu)2 .層次結(jié)構(gòu)3 .微內(nèi)核(客戶機(jī)/服務(wù)器)結(jié)構(gòu):可靠,靈活(便于操作系統(tǒng)增加新的服務(wù)功能),適宜分布式處理的計(jì)算機(jī)環(huán)境第二章操作系統(tǒng)運(yùn)行機(jī)制2.1 中央處理器寄存器:用戶可見寄存器:數(shù)據(jù)寄存器(通用寄存器),地址寄存器,條

3、件碼寄存器??刂坪蜖顟B(tài)寄存器:程序計(jì)數(shù)器,指令寄存器,程序狀態(tài)字。目態(tài)到管態(tài)的轉(zhuǎn)換唯一途徑是通過終端和異常。管態(tài)到目態(tài)的轉(zhuǎn)換可以通過設(shè)置PSW指令(修改程序狀態(tài)字)實(shí)現(xiàn)。PSW包括:CPU的工作狀態(tài)代碼條件碼中斷屏蔽碼2.2 存儲(chǔ)體系存儲(chǔ)器設(shè)計(jì):容量,速度,成本存儲(chǔ)保護(hù):界地址寄存器(界限寄存器):產(chǎn)生程序中斷-越界中斷或存儲(chǔ)保護(hù)中斷存儲(chǔ)鍵2.3 中斷與異常機(jī)制分類:中斷:時(shí)鐘中斷,輸入輸出(I/O)中斷,控制臺(tái)中斷,硬件故障中斷異常:程序性中斷,訪管指令異常2.4 系統(tǒng)調(diào)用系統(tǒng)調(diào)用程序被看成是一個(gè)低級(jí)的過程,只能由匯編語言直接訪問。系統(tǒng)調(diào)用是操作系統(tǒng)提供給編程人員的唯一接口。分類:進(jìn)程控制類

4、,文件操作類,進(jìn)程通信類,設(shè)備管理類,信息維護(hù)類。第三章進(jìn)程線程模型3.1 多道程序設(shè)計(jì)模型順序執(zhí)行的特點(diǎn):順序性封閉性確定性可再現(xiàn)性多道程序設(shè)計(jì)的特點(diǎn):獨(dú)立性隨機(jī)性資源共享性3.2 進(jìn)程模型進(jìn)程的三狀態(tài)模型:運(yùn)行,就緒,等待。七狀態(tài)模型:掛起(Suspend):把一個(gè)進(jìn)程從內(nèi)存轉(zhuǎn)到外存激活(Active):把一個(gè)進(jìn)程從外存轉(zhuǎn)到內(nèi)存事件出現(xiàn)(EventOccurS):提交(Admit):完成一個(gè)新進(jìn)程的創(chuàng)建過程,新進(jìn)程進(jìn)入就緒狀態(tài)或就緒掛起狀0PCB是進(jìn)程存在的唯一標(biāo)志包括:進(jìn)程名,進(jìn)程號(hào),存儲(chǔ)信息,優(yōu)先級(jí),當(dāng)前狀態(tài),資源清單,“家族”關(guān)系,消息隊(duì)列指針,當(dāng)前打開文件夾等。進(jìn)程組成:程序,數(shù)據(jù)

5、,PCB。原語是操作系統(tǒng)核心的一個(gè)組成部分,它必須在管態(tài)下執(zhí)行,并且必須常駐內(nèi)存。原語有不可中斷性。3.3 線程模型線程是進(jìn)程中的一個(gè)實(shí)體,是CPU調(diào)度和分派的基本單位。線程的好處:創(chuàng)建或者結(jié)束一個(gè)線程花費(fèi)時(shí)間少兩個(gè)線程切換花費(fèi)時(shí)間少由于同一進(jìn)程內(nèi)的線程共享內(nèi)存和文件,線程之間相互通信無需調(diào)用內(nèi)核,故不需要額外的通信機(jī)制,使通信更便捷,信息傳送速度也快。線程能獨(dú)立執(zhí)行,能充分利用和發(fā)揮處理器與外圍設(shè)備并行工作能力線程調(diào)用描述pthread_creat創(chuàng)建一個(gè)新線程pthread_exit結(jié)束調(diào)用的線程pthread_join等待一個(gè)特定的線程退出pthread_yield釋放CPU來運(yùn)行另一個(gè)

6、線程pthread_attr_init創(chuàng)建并初始化一個(gè)線程的屬性結(jié)構(gòu)pthread_attr_destroy刪除一個(gè)線程的屬性結(jié)構(gòu)3.4 進(jìn)程(線程)調(diào)度先來先服務(wù)最短作業(yè)優(yōu)先最短剩余時(shí)間優(yōu)先輪轉(zhuǎn)法最高優(yōu)先級(jí)算法多級(jí)反饋隊(duì)列算法最短進(jìn)程優(yōu)先實(shí)時(shí)系統(tǒng)中的調(diào)度算法第四章并發(fā)與同步4.2 進(jìn)程互斥互相感知的程度:相互不感知,間接感知,直接感知。臨界資源訪問過程:進(jìn)入?yún)^(qū)臨界區(qū)退出區(qū)剩余區(qū)進(jìn)程同步機(jī)制準(zhǔn)則:空閑則入忙則等待有限等待讓權(quán)等待4.4 經(jīng)典的進(jìn)程同步問題寫者進(jìn)程:While(true)P(write);寫文件;V(write);讀者進(jìn)程:While(true)P(mutex);read_cou

7、nt:=read_count+1;If(read_count=1)P(write);V(mutex);讀文件;P(mutex);read_count:=read_count-1;If(read_count=0)V(write);V(mutex);4.5 管程管程是一種高級(jí)同步原語組成:管程名稱,共享數(shù)據(jù)的說明,對(duì)數(shù)據(jù)進(jìn)行操作的一組過程和對(duì)共享數(shù)據(jù)賦初值的語句線程調(diào)用描述pthread_mutex_init創(chuàng)建一個(gè)互斥量pthread_mutex_destroy撤銷一個(gè)已存在的互斥量pthread_mutex_lock獲得一個(gè)鎖或阻塞pthread_mutex_trylock獲得一個(gè)鎖或失敗pt

8、hread_mutex_unlock釋放一個(gè)鎖4.6 進(jìn)程通信共享內(nèi)存,消息機(jī)制,管道通信。第五章內(nèi)存管理5.1 基本概念內(nèi)存分配表:位示圖表示法,空閑頁面表,空閑塊表。地址轉(zhuǎn)換:靜態(tài)重定位:裝入一個(gè)程序時(shí),把程序中的指令地址和數(shù)據(jù)地址全部轉(zhuǎn)換成絕對(duì)地址。動(dòng)態(tài)重定位:裝入程序時(shí),不進(jìn)行地址轉(zhuǎn)換,而是直接把程序裝入到分配的內(nèi)存區(qū)域中。在程序執(zhí)行過程中,每當(dāng)執(zhí)行一條指令時(shí)都由硬件的地址轉(zhuǎn)換機(jī)構(gòu)將指令中的邏輯地址轉(zhuǎn)換為絕對(duì)地址主要內(nèi)存管理方案:單一用戶(連續(xù)區(qū))管理,分區(qū)管理,頁式管理,段式管理,段頁式管理。5.2 分區(qū)存儲(chǔ)管理方案(1)固定分區(qū):系統(tǒng)先把內(nèi)存劃分為若干個(gè)大小固定的分區(qū),一旦劃分好,

9、在系統(tǒng)運(yùn)行期間便不再重新劃分。(2)可變分區(qū):移動(dòng)技術(shù)又稱為緊湊技術(shù)或緊縮技術(shù)??臻e分區(qū)分配策略:最先適應(yīng)算法,最優(yōu)適應(yīng)算法,最壞適應(yīng)算法,下次適應(yīng)算法。分區(qū)管理是實(shí)現(xiàn)多道程序設(shè)計(jì)的一種簡單易行的存儲(chǔ)管理技術(shù)。分區(qū)管理的主要缺點(diǎn)是內(nèi)存使用仍然不充分,并且存在較為嚴(yán)重的碎片問題。5.3 覆蓋技術(shù)和交換技術(shù)覆蓋技術(shù):作業(yè)1交換技術(shù):進(jìn)程從內(nèi)存移到磁盤并再移回內(nèi)存稱為交換5.4 頁式存儲(chǔ)管理方案頁號(hào)頁內(nèi)地址頁表起始地址寄存器:用于保存正在運(yùn)行進(jìn)程的頁表在內(nèi)存的首地址頁表長度寄存器:用于保護(hù)正在運(yùn)行進(jìn)程的頁表長度。頁表:多級(jí)頁表,散列頁表,反置頁表??毂恚喊唇o定邏輯地址進(jìn)行讀寫時(shí),必須訪問兩次內(nèi)存,第

10、一次按頁號(hào)讀出頁表中對(duì)應(yīng)的塊號(hào),第二次按計(jì)算出來的絕對(duì)地址進(jìn)行讀寫。查找快表和查找內(nèi)存頁表是并行進(jìn)行的。5.5 虛擬存儲(chǔ)技術(shù)和虛擬頁式存儲(chǔ)管理方案的實(shí)現(xiàn)虛擬頁式存儲(chǔ)管理時(shí)需要在頁表中增加以下的表項(xiàng):5.6 頁號(hào)頁面編號(hào)5.7 有效位一一又稱駐留位、存在位或中斷位,表示該頁是在內(nèi)存還是外存。5.8 頁框號(hào)頁面在內(nèi)存中時(shí)對(duì)應(yīng)的頁框號(hào)。5.9 訪問位一一又稱引用位和參考位,表示該頁在內(nèi)存期間是否被訪問過。5.10 改位表示該頁在內(nèi)存中是否被修改過。5.11 護(hù)位一一是否能/讀/寫/執(zhí)行。5.12 止緩存位一一采用內(nèi)存映射I/O的機(jī)器中需要的位。訪問位和修改位可以用來決定置換哪個(gè)頁面。調(diào)入頁面來源:(

11、1)進(jìn)程裝入時(shí),將全部頁面復(fù)制到交換區(qū),以后總是從交換區(qū)調(diào)入。(2)凡是未被修改的頁面,都直接從文件區(qū)讀入,而被置換時(shí)不需調(diào)出;已被修改的頁面被置換時(shí)需要調(diào)出到交換區(qū),以后從交換區(qū)調(diào)入。頁面置換算法:(1)先進(jìn)先出FIFO(2)最近最少使用LRU(3)最近最不常使用LFU(4)理想頁面置換算法OPT(5)最近未使用(6)第二次機(jī)會(huì)(7)時(shí)鐘缺頁中斷率:f=F/A影響因素:分配給程序的內(nèi)存塊數(shù)頁面大小程序編制方法頁面置換算法工作集模式可以解決顛簸問題。操作系統(tǒng)為每一個(gè)進(jìn)程保持一個(gè)工作集并為該進(jìn)程提供與工作集大小相等的物理頁面數(shù),這一過程可動(dòng)態(tài)調(diào)整統(tǒng)計(jì)工作集大小一般由硬件完成,系統(tǒng)開銷較大。段頁式

12、存儲(chǔ)管理方案:用頁面方法來分配和管理內(nèi)存空間,即把內(nèi)存劃分為若干大小相等的頁面;用段式方法對(duì)用戶程序按照其內(nèi)在的邏輯關(guān)系劃分成若干段;再按照劃分內(nèi)存頁面的大小,把每一段劃分成若干大小相等的頁面。第六章文件管理文件分類:按用途:系統(tǒng)文件庫函數(shù)文件用戶文件按組織形式:普通文件目錄文件特殊文件按保護(hù)方式:只讀文件讀寫文件可執(zhí)行文件無保護(hù)文件6.2 文件的結(jié)構(gòu)邏輯結(jié)構(gòu):流式文件紀(jì)錄式文件物理結(jié)構(gòu):順序結(jié)構(gòu)鏈接結(jié)構(gòu):存取速度慢不適于隨機(jī)存取文件,Windows的FAT文件系統(tǒng)采用的是鏈接結(jié)構(gòu)但是將所有指針集中存放。索引結(jié)構(gòu):既適于順序存取又適于隨機(jī)存取,沒有存儲(chǔ)碎片存儲(chǔ)介質(zhì)磁帶磁盤物理結(jié)構(gòu)連接結(jié)構(gòu)連續(xù)鏈

13、接索引存取方式順序順序順序咽hr仔取隨機(jī)隨機(jī)磁盤的存取:柱面號(hào)=物理塊號(hào)/(磁頭數(shù)*扇區(qū)數(shù))磁頭號(hào)=(物理塊號(hào)mod(磁頭數(shù)*扇區(qū)數(shù))/扇區(qū)數(shù)扇區(qū)號(hào)=(物理塊號(hào)mod(磁頭數(shù)*扇區(qū)數(shù))mod扇區(qū)數(shù)注:mod求余,磁頭即盤面6.3 文件目錄文件控制塊FCB:文件名,文件號(hào),用戶名文件物理位置,文件長度,記錄大小,文件類型,文件屬性,共享說明文件邏輯結(jié)構(gòu),文件物理結(jié)構(gòu)建立日期和時(shí)間,最后訪問日期和時(shí)間,最后修改日期和時(shí)間口令,保存期限6.4 文件系統(tǒng)的實(shí)現(xiàn)(1)位示圖:0表示空閑,1表示該物理塊已分配。從0開始編。(2)空閑塊表:(3)空閑塊鏈表:效率低(4)成組鏈接:有些版本的UNIX操作系統(tǒng)采

14、用。文件的操作:(1)建立文件:(2)打開文件:create(文件名,訪問權(quán)限,最大長度)檢查參數(shù)合法性檢查同一目錄下有無重名文件在目錄中有無空閑位置填寫目錄項(xiàng)內(nèi)容返回fd=open(文件路徑名,打開方式)根據(jù)文件路徑名查目錄,找到FCB主部根據(jù)打開方式,共享說明和用戶身份檢查訪問合法性根據(jù)文件號(hào)查系統(tǒng)打開文件表,看文件是否已被打開在用戶打開文件表中取一空表項(xiàng),填寫打開方式等,并指向系統(tǒng)打開文件對(duì)應(yīng)表項(xiàng)返回信息:文件描述符fd,這是個(gè)非負(fù)整數(shù),用于以后讀寫文件(3)讀文件:read(文件名,文內(nèi)位置,要讀的長度,內(nèi)存目的地址)(4)寫文件:write(文件名,記錄鍵,內(nèi)存位置)(5)關(guān)閉文件:

15、close(文件名)(6)刪除文件:delete(文件名)(7)指針定位:seek(fd,新指針的位置)6.5 文件的保護(hù)和安全文件保護(hù):建立副本:用于較小且極為重要的文件。定時(shí)轉(zhuǎn)儲(chǔ):按照轉(zhuǎn)儲(chǔ)內(nèi)容分為增量轉(zhuǎn)儲(chǔ)和全量轉(zhuǎn)儲(chǔ)按照轉(zhuǎn)儲(chǔ)方式分為物理轉(zhuǎn)儲(chǔ)和邏輯轉(zhuǎn)儲(chǔ)規(guī)定文件的存取權(quán)限文件的存取權(quán)限(1)存取控制矩陣(2)二級(jí)存儲(chǔ)控制(3) UNIX中的文件存取權(quán)限:Unix系統(tǒng)內(nèi)部用數(shù)值表示文件屬性,每一個(gè)屬性與文件屬性中的一個(gè)二進(jìn)制相對(duì)應(yīng)。1表示設(shè)置了該權(quán)限,0表示沒有該權(quán)限。Unix中用8進(jìn)制表示。文件的保密:屏蔽文件目錄設(shè)置口令使用密碼6.6 文件系統(tǒng)的性能提高文件系統(tǒng)性能措施:(1)塊高速緩存(2)

16、合理分配磁盤空間(3)磁盤的驅(qū)動(dòng)調(diào)度:磁盤的存取訪問時(shí)間:尋道時(shí)間旋轉(zhuǎn)延遲時(shí)間傳輸時(shí)間組成:I移臂調(diào)度:先來先服務(wù)FCFSD最短尋道時(shí)間優(yōu)SSTF掃描算法SCAN又稱電梯算法循環(huán)掃描算法C-SCANII旋轉(zhuǎn)調(diào)度(4)信息的優(yōu)化分布(5)RAID技術(shù)6.7Windows的FAT文件系統(tǒng)和UNIX文件系統(tǒng)文件分配表FAT(FileAllocationTable)具有簡單的目錄結(jié)構(gòu)。三個(gè)版本是FAT12,FAT16,FAT32,取決于用多少位二進(jìn)制表示磁盤地址。UNIX普通文件的物理結(jié)構(gòu)是三級(jí)索引結(jié)構(gòu)。第七章I/O設(shè)備管理7.1 設(shè)備與設(shè)備分類除CPU和內(nèi)存以外的所有設(shè)備和裝置設(shè)備管理主要任務(wù):I/

17、O設(shè)備性能和CPU性能不匹配反差大實(shí)現(xiàn)統(tǒng)一管理,方便用戶使用用戶對(duì)I/O設(shè)備的使用必須是安全的設(shè)備分類:按使用特性:I/O設(shè)備和存儲(chǔ)設(shè)備按信息組織方式:字符設(shè)備和塊設(shè)備按共享屬性:獨(dú)占設(shè)備,共享設(shè)備和虛擬設(shè)備7.2 I/O硬件組成中央部分是CPU和主存,通過總線與第二層的接口(適配器)部件相連,第三層是各種外圍設(shè)備控制器,最外層是外圍設(shè)備。I/O設(shè)備數(shù)據(jù)傳送控制方式:程序直接控制方式中斷控制方式DMA方式通道控制方式:選擇通道,數(shù)組多路通道,字節(jié)多路通道7.31 /O軟件的結(jié)構(gòu)和特點(diǎn)(1)中斷處理程序(2)設(shè)備驅(qū)動(dòng)程序(3)與設(shè)備無關(guān)的系統(tǒng)軟件:統(tǒng)一命名設(shè)備保護(hù)提供與設(shè)備無關(guān)的邏輯塊緩錯(cuò)處理(4)用戶空間的I/O軟件沖存儲(chǔ)設(shè)備的塊分配獨(dú)占設(shè)備的分配與釋放出7.4典型的I/O技術(shù)設(shè)備分配算法:p系統(tǒng)設(shè)備表SDT設(shè)備控制表DCT控制器控制表COCT通道控制表CHCT設(shè)備分配原則:考慮到設(shè)備的特性和安全性設(shè)備分配策略7.5I/O性能問題及解決方案小結(jié)(1)通過緩沖技術(shù)、減少或緩解不同設(shè)備之間傳輸速度的差距(2)通過應(yīng)用異步I/O技術(shù),使CPU計(jì)算不必等待I/O操作結(jié)果(3)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論