第二章操作系統(tǒng)的運(yùn)行環(huán)境_第1頁(yè)
第二章操作系統(tǒng)的運(yùn)行環(huán)境_第2頁(yè)
第二章操作系統(tǒng)的運(yùn)行環(huán)境_第3頁(yè)
第二章操作系統(tǒng)的運(yùn)行環(huán)境_第4頁(yè)
第二章操作系統(tǒng)的運(yùn)行環(huán)境_第5頁(yè)
已閱讀5頁(yè),還剩35頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第2章操作系統(tǒng)的運(yùn)行環(huán)境討論操作系統(tǒng)的主要運(yùn)行環(huán)境中央處理器(CPU)存儲(chǔ)系統(tǒng)中斷機(jī)制作業(yè)與作業(yè)步2.1中央處理器(CPU)1.單處理器與多處理器系統(tǒng)一個(gè)計(jì)算機(jī)系統(tǒng)只有一個(gè)處理器,稱之為單處理器系統(tǒng)如果有多個(gè)處理器稱之為多處理器系統(tǒng)處理器由運(yùn)算器、控制器和以及高速緩存構(gòu)成。程序計(jì)數(shù)器PC指令寄存器IR處理器狀態(tài)字PSW堆棧指示器SP指令譯碼器IDI/O控制邏輯工作寄存器地址寄存器數(shù)據(jù)寄存器

ALU

控制器2.1中央處理器(CPU)例:2.處理器中的寄存器兩類寄存器:用戶可見(jiàn)寄存器(工作寄存器):由處理器執(zhí)行的機(jī)器語(yǔ)言來(lái)引用,通常對(duì)所有程序都是可用的,包括系統(tǒng)程序和用戶程序??刂坪蜖顟B(tài)寄存器:用于控制處理器的操作,大部分對(duì)用戶不可見(jiàn),由OS的特權(quán)代碼使用。2.1中央處理器(CPU)(1)用戶可見(jiàn)寄存器機(jī)器語(yǔ)言直接引用包括數(shù)據(jù)寄存器、地址寄存器以及條件碼寄存器數(shù)據(jù)寄存器(dataregister)又稱通用寄存器,主要用于各種算術(shù)邏輯指令和訪存指令地址寄存器(addressregister)用于存儲(chǔ)數(shù)據(jù)及指令的物理地址、線性地址或者有效地址,用于某種特定方式的尋址。如索引寄存器(indexregister)、段寄存器(segmentpointer)、棧指針(stackpointer)條件碼寄存器保存CPU操作結(jié)果的各種標(biāo)記位,如算術(shù)運(yùn)算產(chǎn)生的溢出、符號(hào)等等(2)控制和狀態(tài)寄存器用于控制處理器的操作對(duì)于用戶不可見(jiàn)的一部分可以在某種特權(quán)模式(由OS使用)下訪問(wèn)常見(jiàn)的控制和狀態(tài)寄存器:程序計(jì)數(shù)器(PC:ProgramCounter),記錄將要取出的指令的地址指令寄存器(IR:InstructionRegister),包含最近取出的指令程序狀態(tài)字(PSW:ProgramStatusWord),記錄處理器的運(yùn)行模式信息等等3.特權(quán)指令和非特權(quán)指令特權(quán)指令:只能由操作系統(tǒng)使用的指令。特權(quán)指令的執(zhí)行一般會(huì)引起處理器狀態(tài)的切換。使用多道程序設(shè)計(jì)技術(shù)的計(jì)算機(jī)指令系統(tǒng)必須要區(qū)分為特權(quán)指令和非特權(quán)指令(why?)4.處理器的狀態(tài)根據(jù)運(yùn)行程序?qū)Y源和機(jī)器指令的使用權(quán)限將處理器設(shè)置為不同狀態(tài):多數(shù)系統(tǒng)將處理器工作狀態(tài)劃分為管態(tài)和目態(tài):管態(tài):操作系統(tǒng)管理程序運(yùn)行的狀態(tài),又稱為特權(quán)態(tài)、系統(tǒng)態(tài)、管理態(tài)或核心態(tài)目態(tài):用戶程序運(yùn)行時(shí)的狀態(tài),又稱為普通態(tài)或、用戶態(tài)有些系統(tǒng)將處理器狀態(tài)劃分核心狀態(tài),管理狀態(tài)和用戶程序狀態(tài)(目標(biāo)狀態(tài))三種實(shí)例:x86系列處理器-1386、486、Pentium系列都支持4個(gè)處理器特權(quán)級(jí)別(特權(quán)環(huán):R0、R1、R2和R3)從R0到R3特權(quán)能力依次降低R0相當(dāng)于雙狀態(tài)系統(tǒng)的管態(tài)R3相當(dāng)于目態(tài)R1和R2則介于兩者之間,它們能夠運(yùn)行的指令集合具有包含關(guān)系:各個(gè)級(jí)別有保護(hù)性檢查(地址校驗(yàn)、I/O限制),并分別運(yùn)行不同級(jí)別的程序:R0-運(yùn)行操作系統(tǒng)核心代碼R1-運(yùn)行關(guān)鍵設(shè)備驅(qū)動(dòng)程序和I/O處理例程R2-運(yùn)行其它受保護(hù)共享代碼,如語(yǔ)言系統(tǒng)運(yùn)行環(huán)境R3-運(yùn)行各種用戶程序現(xiàn)有基于x86處理器的操作系統(tǒng),多數(shù)UNIX、Linux以及Windows系列大都只用了R0和R3兩個(gè)特權(quán)級(jí)別實(shí)例:x86系列處理器-2管態(tài)和目態(tài)的比較:處理器處于管態(tài)時(shí)可以執(zhí)行全部指令(包括特權(quán)指令)可使用所有資源具有改變處理器狀態(tài)的能力處理器處于目態(tài)時(shí):只能執(zhí)行非特權(quán)指令特權(quán)級(jí)別不同,可運(yùn)行指令集合也不同特權(quán)級(jí)別越高,可以運(yùn)行指令集合越大高特權(quán)級(jí)別對(duì)應(yīng)的可運(yùn)行指令集合包含低特權(quán)級(jí)的2.1中央處理器(CPU)5.程序狀態(tài)字PSW程序狀態(tài)字(PSW):用來(lái)指示處理器條件和狀態(tài)的寄存器。不同的機(jī)器系統(tǒng),其PSW的格式和信息不盡相同。PSW提供的主要信息:CPU的工作狀態(tài)碼——指明管態(tài)還是目態(tài),用來(lái)說(shuō)明當(dāng)前在CPU上執(zhí)行的是操作系統(tǒng)還是一般用戶,從而決定其是否可以使用特權(quán)指令或擁有其它的特殊權(quán)力條件碼——反映指令執(zhí)行后的結(jié)果特征中斷屏蔽碼——指出是否允許中斷2.1中央處理器(CPU)目態(tài)→管態(tài):其轉(zhuǎn)換的唯一途徑是通過(guò)中斷管態(tài)→目態(tài):可用通過(guò)設(shè)置PSW(修改程序狀態(tài)字)對(duì)應(yīng)位的值來(lái)實(shí)現(xiàn)系統(tǒng)屏蔽鑰EMWP中斷碼ILCCC程序屏蔽指令地址0711153133353963例:IBM370的PSW鑰:用于存儲(chǔ)保護(hù)EMWP:E表示機(jī)器控制方式,M表示機(jī)器校驗(yàn)方式,W表示等待狀態(tài)位,P表示處理器的工作狀態(tài)。ILC:上一次執(zhí)行指令的長(zhǎng)度。CC:條件值。系統(tǒng)屏蔽:指出CPU是否接受特定通道的中斷。程序屏蔽:指示CPU是否接受某種程序性中斷。2.2存儲(chǔ)器系統(tǒng)1.存儲(chǔ)器的層次結(jié)構(gòu)2.存儲(chǔ)訪問(wèn)局部性原理提高存儲(chǔ)系統(tǒng)效能關(guān)鍵點(diǎn):程序存儲(chǔ)訪問(wèn)局部性原理。程序執(zhí)行時(shí),有很多的循環(huán)和子程序調(diào)用,一旦進(jìn)入這樣的程序段,就會(huì)重復(fù)存取相同的指令集合對(duì)數(shù)據(jù)存取也有局部性,在較短的時(shí)間內(nèi),穩(wěn)定地保持在一個(gè)存儲(chǔ)器的局部區(qū)域2.2存儲(chǔ)器系統(tǒng)3.存儲(chǔ)保護(hù):硬件支持對(duì)主存中的信息加以嚴(yán)格的保護(hù),使操作系統(tǒng)及其它程序不被破壞。地址寄存器(界限寄存器)存儲(chǔ)鍵2.2存儲(chǔ)器系統(tǒng)(1)界地址寄存器(界限寄存器)界地址寄存器被廣泛使用的一種存儲(chǔ)保護(hù)技術(shù),實(shí)現(xiàn)方法:在CPU中設(shè)置一對(duì)下限寄存器和上限寄存器存放用戶作業(yè)在主存中的下限和上限地址也可將一個(gè)寄存器作為基址寄存器,另一寄存器作為限長(zhǎng)寄存器(指示存儲(chǔ)區(qū)長(zhǎng)度)每當(dāng)CPU要訪問(wèn)主存,硬件自動(dòng)將被訪問(wèn)的主存地址與界限寄存器的內(nèi)容進(jìn)行比較,以判斷是否越界,如果未越界,則按此地址訪問(wèn)主存,否則將產(chǎn)生越界中斷——越界中斷(存儲(chǔ)保護(hù)中斷)界地址寄存器存儲(chǔ)保護(hù)技術(shù)(2)存儲(chǔ)鍵每個(gè)存儲(chǔ)塊有一個(gè)由二進(jìn)位組成的存儲(chǔ)保護(hù)鍵。作業(yè)被允許進(jìn)入主存時(shí),OS分為它分配一個(gè)唯一的存儲(chǔ)鍵號(hào)分配給該作業(yè)各存儲(chǔ)塊存儲(chǔ)鍵與作業(yè)的存儲(chǔ)鍵號(hào)相同。當(dāng)OS挑選該作業(yè)運(yùn)行時(shí),將作業(yè)的存儲(chǔ)鍵號(hào)存入程序狀態(tài)字PSW的存儲(chǔ)鍵(“鑰匙”)域中。每當(dāng)CPU訪問(wèn)主存時(shí),都將該主存塊的存儲(chǔ)鍵與PSW中的“鑰匙”進(jìn)行比較,如果相匹配,則允許訪問(wèn),否則,拒絕并報(bào)警。2.3中斷技術(shù)中斷對(duì)于操作系統(tǒng)的重要性就像機(jī)器中的驅(qū)動(dòng)齒輪一樣,所以有人把操作系統(tǒng)稱為是由“中斷驅(qū)動(dòng)”或者“(中斷)事件驅(qū)動(dòng)”。中斷協(xié)調(diào)系統(tǒng)對(duì)各種外部事件的響應(yīng)和處理中斷是多道程序?qū)崿F(xiàn)的必要條件中斷指CPU對(duì)系統(tǒng)內(nèi)或系統(tǒng)外發(fā)生異步事件的響應(yīng)。異步事件是指無(wú)一定時(shí)序關(guān)系隨機(jī)發(fā)生的事件中斷源(中斷事件):引起中斷發(fā)生的事件。中斷處理程序:處理中斷的程序代碼。1.概念例:UC/OS中斷響應(yīng)過(guò)程中斷隱指令----指令系統(tǒng)中沒(méi)有的指令,它由CPU在中斷響應(yīng)周期自動(dòng)完成。其功能是保護(hù)程序斷點(diǎn)、硬件關(guān)中斷、向量地址送PC(硬件向量法)或中斷識(shí)別程序入口地址送PC(軟件查詢法)。中斷類型:不同機(jī)器對(duì)中斷類型的劃分不完全相同。IBM-PC的中斷分為:可屏蔽中斷(I/O中斷)不可屏蔽中斷(機(jī)器故障中斷等)程序錯(cuò)誤中斷(溢出、缺頁(yè)和缺段中斷等)訪管中斷(Trap指令和INT指令等,Trap是在EFLAGES中陷入標(biāo)志TF=1時(shí)每執(zhí)行一條指令后便發(fā)生一次的異常,如斷點(diǎn)、INTO溢出等)。IBM370的中斷機(jī)器故障中斷:如電源故障,機(jī)器電路檢驗(yàn)錯(cuò)等輸入輸出中斷:輸入輸出設(shè)備和通道實(shí)現(xiàn)的數(shù)據(jù)傳輸外部中斷:時(shí)鐘中斷,操作員控制臺(tái)中斷,多機(jī)系統(tǒng)中其它機(jī)器的通信要求中斷,各種外設(shè)或傳感器發(fā)來(lái)的實(shí)時(shí)中斷等程序中斷:程序中問(wèn)題引起的中斷,如錯(cuò)誤地使用指令或數(shù)據(jù)、溢出等問(wèn)題,存儲(chǔ)保護(hù)等訪管中斷:訪管指令或陷阱指令(Trap指令)中的操作數(shù)規(guī)定了要求服務(wù)的類型。每當(dāng)CPU執(zhí)行訪管指令或陷阱指令時(shí),即引起中斷并調(diào)用操作系統(tǒng)相應(yīng)的功能模塊為其服務(wù)訪管中斷是用戶程序在運(yùn)行中請(qǐng)求操作系統(tǒng)為其提供服務(wù)而執(zhí)行一條“訪管指令”所引起的中斷,又稱軟件中斷。訪管中斷是進(jìn)程所期待的,是自愿性的中斷,又稱自愿中斷。引入中斷的目的:解決主機(jī)與外設(shè)的并行工作問(wèn)題提高可靠性實(shí)現(xiàn)多機(jī)聯(lián)系實(shí)現(xiàn)實(shí)時(shí)控制特點(diǎn):中斷是隨機(jī)的中斷是可恢復(fù)的中斷是自動(dòng)處理的2.中斷系統(tǒng)中斷系統(tǒng)=硬件中斷裝置+中斷處理程序中斷系統(tǒng)的硬件中斷裝置——中斷系統(tǒng)的機(jī)制部分,包括:發(fā)現(xiàn)中斷,響應(yīng)中斷的硬件。該裝置負(fù)責(zé)捕獲中斷源發(fā)出的中斷請(qǐng)求,以一定方式響應(yīng)中斷源,然后將處理器控制權(quán)交給特定的中斷處理程序。軟件中斷處理程序——中斷系統(tǒng)的策略部分,負(fù)責(zé)辨別中斷類型并做出相應(yīng)的操作。中斷裝置的基本功能提供識(shí)別中斷源的方法提供查詢中斷狀態(tài)的方法,通常使用一個(gè)寄存器存儲(chǔ)有關(guān)中斷的狀態(tài)信息,稱為中斷字提供中斷現(xiàn)場(chǎng)保護(hù)的能力提供中斷處理程序?qū)ぶ纺芰Γ业角‘?dāng)?shù)闹袛嗵幚沓绦蚓哂蓄A(yù)定義的系統(tǒng)控制棧和中斷處理程序入口地址映射表(中斷向量表)等數(shù)據(jù)結(jié)構(gòu)和它們?cè)谥鞔嬷械奈恢?,以輔助OS定制中斷處理策略和中斷調(diào)度機(jī)制3.中斷邏輯與中斷寄存器如何接受和響應(yīng)中斷源的中斷請(qǐng)求,因機(jī)器而異。如在PC中:可屏蔽的中斷請(qǐng)求INTR:主要指來(lái)輸入輸出設(shè)備的I/O中斷,通過(guò)建立在PSW中的中斷屏蔽位加以屏蔽,即使再有I/O中斷,處理器也不響應(yīng)不可屏蔽的中斷請(qǐng)求:屬于機(jī)器故障中斷,包括內(nèi)存奇偶校驗(yàn)錯(cuò)以及掉電等中斷源程序中的問(wèn)題引起的中斷(如溢出、除法錯(cuò)都可以引起中斷)和軟件中斷等當(dāng)多個(gè)中斷源請(qǐng)求同時(shí)發(fā)生時(shí),由中斷邏輯按中斷優(yōu)先級(jí)來(lái)判定響應(yīng)哪個(gè)中斷請(qǐng)求。非屏蔽中斷請(qǐng)求中斷邏輯中斷指令I(lǐng)NTn溢出中斷INT0除法錯(cuò)中斷單步中斷TF=1中斷控制器8259A可屏蔽性中斷請(qǐng)求…INTRNMIIBM-PC中斷邏輯和中斷源示意圖中斷寄存器有的計(jì)算機(jī)中,為了區(qū)分和不丟失中斷信號(hào),對(duì)應(yīng)每個(gè)中斷源分別用一固定觸發(fā)器來(lái)寄存中斷信號(hào)。通常規(guī)定:值為1時(shí),表示有中斷信號(hào),為0時(shí)表示無(wú)中斷信號(hào)。這些觸發(fā)器的全體組成中斷寄存器,中斷寄存器由若干個(gè)中斷位組成,每個(gè)觸發(fā)器對(duì)應(yīng)一個(gè)中斷位。3.中斷邏輯與中斷寄存器例:中斷請(qǐng)求的產(chǎn)生DQ&1INTR中斷請(qǐng)求觸發(fā)器MASK中斷屏蔽觸發(fā)器來(lái)自CPU的中斷查詢信號(hào)受設(shè)備本身控制INTRDMASKQD完成觸發(fā)器中斷請(qǐng)求INTR=1有請(qǐng)求MASK=1被屏蔽中斷掃描機(jī)構(gòu)在CPU的控制部件中,用于檢測(cè)是否有中斷發(fā)生的機(jī)構(gòu)。在每條指令執(zhí)行周期的最后時(shí)刻掃描中斷寄存器,詢問(wèn)是否有中斷信號(hào)若無(wú)中斷信號(hào),繼續(xù)執(zhí)行下一條指令若有中斷,中斷硬件將該中斷觸發(fā)器內(nèi)容按規(guī)定編碼送入PSW的相應(yīng)位,稱為中斷碼3.中斷邏輯與中斷寄存器4.多級(jí)中斷多級(jí)中斷多數(shù)微型處理器有多級(jí)中斷系統(tǒng),可以有多根中斷請(qǐng)求線(級(jí))從不同設(shè)備連接到中斷邏輯具有相同特性和優(yōu)先級(jí)的設(shè)備可連到同一中斷級(jí)上,由中斷排隊(duì)器(硬件)決定當(dāng)前響應(yīng)哪個(gè)中斷源。在多級(jí)中斷系統(tǒng)中,可能同時(shí)有多個(gè)中斷請(qǐng)求,CPU接受中斷優(yōu)先級(jí)為最高的那個(gè)中斷,忽略其中斷優(yōu)先級(jí)較低的那些中斷。高優(yōu)先級(jí)的中斷可以打斷低優(yōu)先級(jí)的中斷。5.中斷響應(yīng)

CPU如何響應(yīng)中斷,兩個(gè)問(wèn)題:CPU何時(shí)響應(yīng)中斷?通常在CPU執(zhí)行了一條指令以后,更確切地,在指令周期最后時(shí)刻接受中斷請(qǐng)求,或此時(shí)掃描中斷寄存器。如何知道提出中斷請(qǐng)求的設(shè)備或中斷源?用軟件指令去查詢各設(shè)備接口,比較費(fèi)時(shí)(非向量中斷)。使用“中斷向量表”(向量中斷)。非向量中斷:總是轉(zhuǎn)向中斷查詢程序的入口地址,執(zhí)行終端查詢程序,以確定被優(yōu)先批準(zhǔn)的中斷源,然后分支進(jìn)入相應(yīng)的中斷服務(wù)程序。例:中斷向量…向量地址…排隊(duì)器輸出

顯示器服務(wù)程序

打印機(jī)服務(wù)程序JMP400JMP300JMP200…………主存12H13H14H200300向量地址入口地址入口地址設(shè)備編碼器1000…0001001

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論