版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利1華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利2第二章操作系統(tǒng)的邏輯結(jié)構(gòu)華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利3第二章操作系統(tǒng)的邏輯結(jié)構(gòu)
2.1概述
為提高計(jì)算機(jī)系統(tǒng)資源的使用效率和方便用戶在計(jì)算機(jī)系統(tǒng)中必須配備操作系統(tǒng).
操作系統(tǒng)是一個(gè)大型的軟件,規(guī)模龐大、結(jié)構(gòu)復(fù)雜。操作系統(tǒng)必須是一個(gè)清晰、正確的邏輯結(jié)構(gòu)。結(jié)構(gòu)設(shè)計(jì)是軟件界權(quán)威Dijkstra,E.W.(菏蘭人)提出的一種程序設(shè)計(jì)的方法。華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利4第二章操作系統(tǒng)的邏輯結(jié)構(gòu)
2..1概述2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利52.1概述
2.1.2操作系統(tǒng)邏輯結(jié)構(gòu)
左圖既可看成是一個(gè)多層虛擬機(jī)結(jié)構(gòu),也可是通常操作系統(tǒng)的邏輯結(jié)構(gòu)。在2.5節(jié)將看到UNIX系統(tǒng)的結(jié)構(gòu)2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利62.2基本硬件結(jié)構(gòu)2.2.1處理機(jī)狀態(tài)及特權(quán)指令(一)處理機(jī)的狀態(tài)在計(jì)算機(jī)系統(tǒng)中有兩類(lèi)程序運(yùn)行:用戶程序系統(tǒng)程序用戶程序、系統(tǒng)程序執(zhí)行時(shí)有不同的權(quán)限。根據(jù)對(duì)系統(tǒng)資源和機(jī)器指令的使用權(quán)限,把處理機(jī)執(zhí)行時(shí)的工作狀態(tài)分為核態(tài)和用戶態(tài),有的操作系統(tǒng)還將系統(tǒng)程序執(zhí)行時(shí)的機(jī)器的狀態(tài)又分為核態(tài)和管態(tài)。其權(quán)限次序是:核態(tài)、管態(tài)、用戶態(tài)。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利72.2基本硬件結(jié)構(gòu)
2.2.1處理機(jī)狀態(tài)及特權(quán)指令(一)處理機(jī)的狀態(tài)
核態(tài)(KernelMode):
CPU執(zhí)行操作系統(tǒng)程序時(shí)所處的狀態(tài)。在此狀態(tài)下允許CPU使用全部資源和全部指令,其中包括一組特權(quán)指令(如涉及外設(shè)的I/O、改變處理機(jī)狀態(tài)、修改存儲(chǔ)保護(hù)的指令),實(shí)現(xiàn)對(duì)系統(tǒng)資源的分配與管理,為用戶提供使用外部設(shè)備的服務(wù)。
管態(tài)比核態(tài)的權(quán)限低,在此狀態(tài)下允許使用一些用戶態(tài)下不能使用的資源,但不能使用修改CPU狀態(tài)的指令。無(wú)核態(tài)時(shí),管態(tài)執(zhí)行核態(tài)的全部功能。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利82.2基本硬件結(jié)構(gòu)
2.2.1處理機(jī)狀態(tài)及特權(quán)指令用戶態(tài)(UserMode):用戶程序執(zhí)行時(shí)CPU所處的狀態(tài)。在此狀態(tài)下禁止使用特權(quán)指令,不能直接使用系統(tǒng)資源與改變CPU狀態(tài),并且只能訪問(wèn)用戶程序所在的存儲(chǔ)空間。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利9當(dāng)CPU執(zhí)行用戶程序時(shí),CPU機(jī)處于用戶態(tài),在執(zhí)行的過(guò)程中出現(xiàn)了中斷(或自陷)時(shí),系統(tǒng)轉(zhuǎn)去處理與中斷有關(guān)的事件,這時(shí)cpu由用戶態(tài)轉(zhuǎn)換成核態(tài)(或管態(tài)),處理完中斷后,返回?cái)帱c(diǎn)繼續(xù)執(zhí)行用戶程序,這時(shí)cpu由核態(tài)轉(zhuǎn)換成用戶態(tài)。右圖是UNIX系統(tǒng)環(huán)境下處理機(jī)狀態(tài)轉(zhuǎn)換圖,在UNIX系統(tǒng)中,把核態(tài)稱(chēng)為核心態(tài)2.2基本硬件結(jié)構(gòu)
2.2.1處理機(jī)狀態(tài)及特權(quán)指令(一)處理機(jī)的狀態(tài)2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利102.2基本硬件結(jié)構(gòu)
2.2.1處理機(jī)狀態(tài)及特權(quán)指令二、特權(quán)指令集
在核態(tài)下操作系統(tǒng)可以使用所有指令,包括一組特權(quán)指令。允許和禁止中斷;在進(jìn)程之間切換處理機(jī);存取用于內(nèi)存保護(hù)的寄存器;執(zhí)行輸入和輸出操作;停止一個(gè)中央處理機(jī)的工作。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利112.2基本硬件結(jié)構(gòu)
2.2.1處理機(jī)狀態(tài)及特權(quán)指令
二、特權(quán)指令集
在下列情況下,由用戶態(tài)轉(zhuǎn)向核態(tài):用戶程序要求操作系統(tǒng)的服務(wù),系統(tǒng)調(diào)用;發(fā)生一次中斷;在用戶程序中產(chǎn)生了一個(gè)錯(cuò)誤的狀態(tài);在用戶程序中企圖執(zhí)行一條特權(quán)指令;從核態(tài)轉(zhuǎn)回用戶態(tài)用一條指令實(shí)現(xiàn),這條指令也是特權(quán)指令。一般情況下是中斷返回指令。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利122.2基本硬件結(jié)構(gòu)
2.2.2存儲(chǔ)器主存儲(chǔ)器(主存、內(nèi)存):
央處理機(jī)能直接訪問(wèn)的存儲(chǔ)器稱(chēng)為主存儲(chǔ)器,用來(lái)存放正在或?qū)⒁獔?zhí)行的系統(tǒng)和用戶程序和數(shù)據(jù)以及程序執(zhí)行時(shí)要求的臨時(shí)存儲(chǔ)空間。輔存儲(chǔ)器(輔存、外存):中央處理機(jī)不能直接訪問(wèn)的存儲(chǔ)器,如磁盤(pán)、磁帶、光盤(pán)等,用來(lái)存放大量的數(shù)據(jù)信息。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利132.2基本硬件結(jié)構(gòu)
2.2.2存儲(chǔ)器(一)主存儲(chǔ)器的類(lèi)型隨機(jī)訪問(wèn)存儲(chǔ)器RAM(randomaccessmemory)只讀存儲(chǔ)器ROM(Read-onlymemory)
在微機(jī)中有這兩種類(lèi)型的存儲(chǔ),一種是ROM稱(chēng)為BIOS,用來(lái)存放基本的I/O程序。另一種是RAM,通常所說(shuō)的64MB、128MB(二)存儲(chǔ)器組織(略)(三)存儲(chǔ)保護(hù)(略)2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利142.2基本硬件結(jié)構(gòu)
2.2.3時(shí)鐘
時(shí)鐘是操作系統(tǒng)運(yùn)行時(shí)必不可少的硬設(shè)施,它以固定的時(shí)間間隔產(chǎn)生中斷信號(hào),這對(duì)于實(shí)施進(jìn)程調(diào)度、計(jì)算系統(tǒng)資源的消耗、實(shí)時(shí)控制等功能是必不可少的。在操作系統(tǒng)中需時(shí)鐘支持的工作有:分時(shí)系統(tǒng)調(diào)度;實(shí)時(shí)控制;提供用戶和系統(tǒng)所需的絕對(duì)時(shí)間(日歷時(shí)鐘、墻鐘)。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利152.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(一)中斷概念中斷是指某個(gè)事件(例如,電源掉電、俘點(diǎn)運(yùn)算溢出、外部設(shè)備傳輸完成或出錯(cuò)等)發(fā)生時(shí),系統(tǒng)中止現(xiàn)運(yùn)行程序的執(zhí)行,引出處理事件程序?qū)ο鄳?yīng)事件進(jìn)行處理,處理完畢后返回?cái)帱c(diǎn)繼續(xù)執(zhí)行。中斷源:引起中斷的事件稱(chēng)中斷源,如打印完成中斷,其中斷源是打印機(jī)。斷點(diǎn):發(fā)生中斷時(shí)正在運(yùn)行的程序被暫時(shí)停止,程序的暫停點(diǎn)稱(chēng)為斷點(diǎn)。例如,某程序正在執(zhí)行0200地址的指令被中斷,那么,0200地址就是斷點(diǎn),在中斷返回時(shí)就執(zhí)行0200的下一條指令。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利162.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(一)中斷概念中斷響應(yīng):是處理機(jī)發(fā)現(xiàn)有中斷請(qǐng)求時(shí),中止現(xiàn)運(yùn)行程序的執(zhí)行并自動(dòng)引出中斷處理程序的過(guò)程。中斷處理程序:對(duì)中斷事件進(jìn)行處理的程序叫中斷處理程序。如時(shí)鐘中斷處理、打印機(jī)完成中斷處理、打印機(jī)缺紙中斷處理等等。它是操作系統(tǒng)中與硬件最接近的一部分,是操作系統(tǒng)與硬件的接口。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利172.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲(一)中斷概念
的中斷機(jī)構(gòu)PC2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利182.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(二)中斷類(lèi)型1、輸入輸出中斷它是當(dāng)外部設(shè)備或通道操作正常結(jié)束或發(fā)生錯(cuò)誤時(shí)所發(fā)生的中斷。例如:打印機(jī)打印完成、缺紙,讀磁盤(pán)時(shí)相應(yīng)驅(qū)動(dòng)器中沒(méi)有磁盤(pán)等。2、外中斷對(duì)某個(gè)中央處理機(jī)而言,它的外部非通道式裝置所引起的中斷稱(chēng)為外部中斷。例如,時(shí)鐘中斷、操作員控制臺(tái)中斷,多處理機(jī)系統(tǒng)中CPU到CPU之間的通信中斷等。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利192.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(二)中斷類(lèi)型3、硬件故障中斷當(dāng)機(jī)器發(fā)生故障時(shí)的中斷叫硬件故障中斷。例如,電源故障、內(nèi)存單元奇偶校驗(yàn)錯(cuò)。4、程序性中斷在程序執(zhí)行的過(guò)程中,發(fā)現(xiàn)了程序性質(zhì)的錯(cuò)誤或出現(xiàn)了某些特定狀態(tài)而產(chǎn)生的中斷。如浮點(diǎn)溢出、用戶態(tài)下使用了特權(quán)指令、內(nèi)存越界、跟蹤等。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利202.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(二)中斷類(lèi)型5、訪管中斷對(duì)操作系統(tǒng)提出某種請(qǐng)(需)求時(shí)所發(fā)生的中斷。例如,創(chuàng)建進(jìn)程,I/O傳輸、打開(kāi)文件、關(guān)閉文件、文件的讀、寫(xiě)等系統(tǒng)調(diào)用。以上五種中斷也歸納成兩類(lèi),其一是來(lái)自處理機(jī)外部的事件,稱(chēng)為外部中斷,如I/O中斷、外中斷。另一類(lèi)是來(lái)自處理機(jī)的中斷,稱(chēng)為內(nèi)部中斷,如硬件故障中斷、程序性中斷、訪管中斷。在這類(lèi)中斷有時(shí)稱(chēng)俘獲(也有稱(chēng)陷入、陷阱、自陷、捕俘等,它的英文名稱(chēng)為trap,來(lái)自早期的UNIX系統(tǒng))2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利212.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲(三)中斷進(jìn)入對(duì)中斷請(qǐng)求的整個(gè)處理過(guò)程稱(chēng)為中斷處理,它是由軟、硬件結(jié)合形成的一套中斷機(jī)構(gòu)實(shí)施的。在本教材中叫中斷進(jìn)入。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利222.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(三)中斷進(jìn)入1、保護(hù)中斷現(xiàn)場(chǎng)和恢復(fù)現(xiàn)場(chǎng)現(xiàn)場(chǎng):是被中斷斷點(diǎn)時(shí)刻處理機(jī)的各種信息,包括:程序狀態(tài)字;各寄存器的值;打開(kāi)文件的狀態(tài)這些現(xiàn)場(chǎng)信息的多少根據(jù)具體系統(tǒng)的處理方法不同差別很大,例如UNIX系統(tǒng),在中斷返回后有可能進(jìn)行進(jìn)程調(diào)度,那么,現(xiàn)場(chǎng)信息除包括各寄存器的值,程序狀態(tài)字,打開(kāi)文件的狀態(tài)外,還有保證被中斷的進(jìn)程重新被調(diào)度時(shí)恢復(fù)運(yùn)行環(huán)境指針和棧指針2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利232.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(三)中斷進(jìn)入
保護(hù)現(xiàn)場(chǎng):在進(jìn)入中斷時(shí)將現(xiàn)場(chǎng)信息保存到指定的位置,一般情況是保留到系統(tǒng)棧中。恢復(fù)現(xiàn)場(chǎng):在中斷處理完成后,返回?cái)帱c(diǎn)之前將保留在棧中的斷點(diǎn)的現(xiàn)場(chǎng)信息恢復(fù),使被中斷的程序能繼續(xù)正確地執(zhí)行。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利242.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(三)中斷進(jìn)入2、程序狀態(tài)字在計(jì)算機(jī)系統(tǒng)中有一個(gè)寄存器(有的系統(tǒng)有幾個(gè)寄存器)用來(lái)存放程序狀態(tài)字,稱(chēng)為PS。其中包括指令計(jì)數(shù)器(PCProgramcounter,instructioncounter)程序現(xiàn)應(yīng)執(zhí)行哪條指令,當(dāng)前指令執(zhí)行的情況機(jī)器處于何種狀態(tài)(核態(tài)、用戶態(tài))程序執(zhí)行時(shí)應(yīng)屏蔽哪些中斷(處理機(jī)運(yùn)行級(jí))尋址方式、編址、保護(hù)鍵2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利252.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(三)中斷進(jìn)入例1:PDP-11系列機(jī)的PS:
PC是另一個(gè)寄存器2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利262.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(三)中斷進(jìn)入3、中斷響應(yīng)中斷響應(yīng):是處理機(jī)發(fā)現(xiàn)有中斷請(qǐng)求時(shí),中止現(xiàn)運(yùn)行程序的執(zhí)行,并自動(dòng)引出中斷處理程序的過(guò)程。中斷響應(yīng)的實(shí)質(zhì)是交換指令執(zhí)行地址和處理機(jī)的狀態(tài),以達(dá)到如下目的:(1)保留程序斷點(diǎn)及有關(guān)信息;(2)自動(dòng)轉(zhuǎn)入相應(yīng)的中斷處理程序執(zhí)行。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利272.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(三)中斷進(jìn)入4、中斷向量具有向量機(jī)制的計(jì)算機(jī)的中斷向量包括兩個(gè)字:中斷處理程序的入口地址中斷處理程序的程序狀態(tài)字2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利282.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(三)中斷進(jìn)入2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利292.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(三)中斷進(jìn)入2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利302.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(三)中斷進(jìn)入教材P34的圖2.7給出了PDP-11計(jì)算機(jī)上的trap的示意圖,歸納起來(lái)有以下四個(gè)動(dòng)作:(SP)PS(SP)PCPC(34)PS(36)2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利312.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲(四)中斷處理中斷處理和自陷處理的過(guò)程是類(lèi)似的,當(dāng)硬件完成了中斷進(jìn)入后,轉(zhuǎn)到中斷處理程序,進(jìn)入軟件中斷處理過(guò)程。這個(gè)過(guò)程主要有如下三項(xiàng)工作:(1)保護(hù)現(xiàn)場(chǎng)和傳遞參數(shù);(2)執(zhí)行相應(yīng)的中斷(或自陷)處理程序;(3)恢復(fù)和退出。注:在中斷進(jìn)入時(shí)由硬件保護(hù)了被中斷程序的PC和PS,在中斷處理中保護(hù)各寄存器的值和其它狀態(tài)信息。2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利322.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(四)中斷處理2023/1/11華中理工大學(xué)計(jì)算機(jī)學(xué)院李勝利332.2基本硬件結(jié)構(gòu)
2.2.4中斷與俘獲
(四)中斷處理UNIX系統(tǒng)的中斷處理程序1.中斷、自陷處理總控程序2023/1
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026甘肅酒泉市玉門(mén)市招聘供熱人員15人參考題庫(kù)附答案
- 2026福建省面向東北林業(yè)大學(xué)選調(diào)生選拔工作考試備考題庫(kù)附答案
- 2026福建福州市羅源縣城市管理和綜合執(zhí)法局執(zhí)法輔助人員招聘參考題庫(kù)附答案
- 公共交通車(chē)輛安全駕駛操作制度
- 2026陜西省面向中南大學(xué)招錄選調(diào)生參考題庫(kù)附答案
- 2026青海班瑪縣面向社會(huì)招聘臨聘教師3人參考題庫(kù)附答案
- 中共玉山縣委社會(huì)工作部公開(kāi)選調(diào)事業(yè)單位工作人員備考題庫(kù)附答案
- 中國(guó)汽研2026屆春招備考題庫(kù)附答案
- 南充市高坪區(qū)事業(yè)單位2025年公開(kāi)考調(diào)工作人員的(6人)考試備考題庫(kù)附答案
- 瀘州市政府投資建設(shè)工程管理第一中心招聘編外聘用人員的備考題庫(kù)附答案
- (正式版)SHT 3115-2024 石油化工管式爐輕質(zhì)澆注料襯里工程技術(shù)規(guī)范
- 高溫高壓CFB鍋爐安裝技術(shù)交底
- 防職場(chǎng)性騷擾培訓(xùn)課件
- 設(shè)備維護(hù)與管理培訓(xùn)課件
- 01管道儀表流程圖中常用圖例符號(hào)
- 如何組織臨床小講課(全科師資培訓(xùn)課程)
- 繼電保護(hù)課后習(xí)題答案第二版-張保會(huì)-尹項(xiàng)根
- 播種施肥機(jī)械
- 初中校本課程-【課堂實(shí)錄】美麗的24節(jié)氣教學(xué)設(shè)計(jì)學(xué)情分析教材分析課后反思
- GB/T 12496.19-2015木質(zhì)活性炭試驗(yàn)方法鐵含量的測(cè)定
- 中國(guó)鈷行業(yè)鈷資源分布情況
評(píng)論
0/150
提交評(píng)論