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

下載本文檔

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

文檔簡介

1、第第2章章 操作系統(tǒng)的運行環(huán)境操作系統(tǒng)的運行環(huán)境討論操作系統(tǒng)的主要運行環(huán)境討論操作系統(tǒng)的主要運行環(huán)境中央處理器(中央處理器(CPUCPU)存儲系統(tǒng)存儲系統(tǒng)中斷機制中斷機制作業(yè)與作業(yè)步作業(yè)與作業(yè)步2.1 中央處理器(中央處理器(CPU)1.單處理器與多處理器系統(tǒng)單處理器與多處理器系統(tǒng)一個計算機系統(tǒng)只有一個處理器,稱之為單處一個計算機系統(tǒng)只有一個處理器,稱之為單處理器系統(tǒng)理器系統(tǒng)如果有多個處理器稱之為多處理器系統(tǒng)如果有多個處理器稱之為多處理器系統(tǒng)處理器由運算器、控制器和以及高速緩存構(gòu)成。處理器由運算器、控制器和以及高速緩存構(gòu)成。程序計數(shù)器程序計數(shù)器 PC指令寄存器指令寄存器 IR處理器狀態(tài)字處理器

2、狀態(tài)字PSW堆棧指示器堆棧指示器 SP指令譯碼器指令譯碼器 IDI/O控制邏輯控制邏輯工作寄存器工作寄存器地址寄存器地址寄存器數(shù)據(jù)寄存器數(shù)據(jù)寄存器 ALU 控制器控制器2.1 中央處理器(中央處理器(CPU)例:2.處理器中的寄存器處理器中的寄存器兩類寄存器:兩類寄存器:用戶可見寄存器(工作寄存器):用戶可見寄存器(工作寄存器):由處理器執(zhí)行由處理器執(zhí)行的機器語言來引用,通常對所有程序都是可用的,的機器語言來引用,通常對所有程序都是可用的,包括系統(tǒng)程序和用戶程序。包括系統(tǒng)程序和用戶程序。控制和狀態(tài)寄存器控制和狀態(tài)寄存器:用于控制處理器的操作,大:用于控制處理器的操作,大部分對用戶不可見,部分對

3、用戶不可見, 由由OS的的特權(quán)代碼使用。特權(quán)代碼使用。2.1 中央處理器(中央處理器(CPU)(1)用戶可見寄存器)用戶可見寄存器 機器語言直接引用機器語言直接引用 包括數(shù)據(jù)寄存器、地址寄存器以及條件碼寄存器包括數(shù)據(jù)寄存器、地址寄存器以及條件碼寄存器 數(shù)據(jù)寄存器數(shù)據(jù)寄存器(data register)又稱通用寄存器,主要用于各種又稱通用寄存器,主要用于各種算術(shù)邏輯指令和訪存指令算術(shù)邏輯指令和訪存指令 地址寄存器地址寄存器(address register)用于存儲數(shù)據(jù)及指令的物理用于存儲數(shù)據(jù)及指令的物理地址、線性地址或者有效地址,用于某種特定方式的尋址。如地址、線性地址或者有效地址,用于某種特

4、定方式的尋址。如索引寄存器(索引寄存器(index register)、段寄存器()、段寄存器(segment pointer)、棧指針()、棧指針(stack pointer) 條件碼寄存器條件碼寄存器保存保存CPU操作結(jié)果的各種標記位,如算術(shù)運算產(chǎn)操作結(jié)果的各種標記位,如算術(shù)運算產(chǎn)生的溢出、符號等等生的溢出、符號等等(2)控制和狀態(tài)寄存器)控制和狀態(tài)寄存器 用于控制處理器的操作用于控制處理器的操作 對于用戶不可見的對于用戶不可見的 一部分可以在某種特權(quán)模式(由一部分可以在某種特權(quán)模式(由OS使用)下訪問常見使用)下訪問常見的控制和狀態(tài)寄存器的控制和狀態(tài)寄存器: : 程序計數(shù)器程序計數(shù)器(P

5、C:Program Counter),記錄將要取出的,記錄將要取出的指令的地址指令的地址 指令寄存器指令寄存器(IR:Instruction Register),包含最近取出,包含最近取出的指令的指令 程序狀態(tài)字程序狀態(tài)字(PSW:Program Status Word),記錄處理,記錄處理器的運行模式信息等等器的運行模式信息等等3.特權(quán)指令和非特權(quán)指令特權(quán)指令和非特權(quán)指令特權(quán)指令特權(quán)指令:只能由操作系統(tǒng)使用的指令。特權(quán)指令的執(zhí)行一般:只能由操作系統(tǒng)使用的指令。特權(quán)指令的執(zhí)行一般會引起處理器狀態(tài)的切換。會引起處理器狀態(tài)的切換。使用多道程序設(shè)計技術(shù)的計算機指令系統(tǒng)必須要區(qū)分為特權(quán)使用多道程序設(shè)計

6、技術(shù)的計算機指令系統(tǒng)必須要區(qū)分為特權(quán)指令和非特權(quán)指令(指令和非特權(quán)指令(why?why?)4.處理器的狀態(tài)處理器的狀態(tài)根據(jù)運行程序?qū)Y源和機器指令的使用權(quán)限將處理器設(shè)置為不根據(jù)運行程序?qū)Y源和機器指令的使用權(quán)限將處理器設(shè)置為不同狀態(tài):同狀態(tài):多數(shù)系統(tǒng)將處理器工作狀態(tài)劃分為多數(shù)系統(tǒng)將處理器工作狀態(tài)劃分為管態(tài)管態(tài)和和目態(tài)目態(tài):管態(tài)管態(tài):操作系統(tǒng)管理程序運行的狀態(tài),又稱為:操作系統(tǒng)管理程序運行的狀態(tài),又稱為特權(quán)特權(quán)態(tài)、態(tài)、系系統(tǒng)統(tǒng)態(tài)、態(tài)、管理管理態(tài)或態(tài)或核心核心態(tài)態(tài)目態(tài)目態(tài):用戶程序運行時的狀態(tài),又稱為:用戶程序運行時的狀態(tài),又稱為普通普通態(tài)或、態(tài)或、用戶用戶態(tài)態(tài)有些系統(tǒng)將處理器狀態(tài)劃分有些系統(tǒng)將處

7、理器狀態(tài)劃分核心狀態(tài)核心狀態(tài),管理狀態(tài)管理狀態(tài)和和用戶程序狀態(tài)用戶程序狀態(tài)(目標狀態(tài))三種(目標狀態(tài))三種實例:實例:x86系列處理器系列處理器-1386、486、Pentium系列都支持系列都支持4個處理器特個處理器特權(quán)級別(特權(quán)環(huán):權(quán)級別(特權(quán)環(huán):R0、R1、R2和和R3)從從R0到到R3特權(quán)能力依次降低特權(quán)能力依次降低R0相當于雙狀態(tài)系統(tǒng)的管態(tài)相當于雙狀態(tài)系統(tǒng)的管態(tài)R3相當于目態(tài)相當于目態(tài)R1和和R2則介于兩者之間,它們能夠運行的指令則介于兩者之間,它們能夠運行的指令集合具有包含關(guān)系:集合具有包含關(guān)系:3210RRRRIIII各個級別有保護性檢查(地址校驗、各個級別有保護性檢查(地址校驗

8、、I/O限制),并分限制),并分別運行不同級別的程序:別運行不同級別的程序:R0- -運行操作系統(tǒng)核心代碼運行操作系統(tǒng)核心代碼R1- -運行關(guān)鍵設(shè)備驅(qū)動程序和運行關(guān)鍵設(shè)備驅(qū)動程序和I/O處理例程處理例程R2- -運行其它受保護共享代碼,如語言系統(tǒng)運行環(huán)境運行其它受保護共享代碼,如語言系統(tǒng)運行環(huán)境R3- -運行各種用戶程序運行各種用戶程序現(xiàn)有基于現(xiàn)有基于x86處理器的操作系統(tǒng),多數(shù)處理器的操作系統(tǒng),多數(shù)UNIX、Linux以及以及Windows系列大都只用了系列大都只用了R0和和R3兩個特權(quán)級兩個特權(quán)級別別實例:實例:x86系列處理器系列處理器-2管態(tài)和目態(tài)的比較:管態(tài)和目態(tài)的比較:處理器處于管

9、態(tài)時處理器處于管態(tài)時可以執(zhí)行全部指令(包括特權(quán)指令)可以執(zhí)行全部指令(包括特權(quán)指令)可使用所有資源可使用所有資源具有改變處理器狀態(tài)的能力具有改變處理器狀態(tài)的能力處理器處于目態(tài)時處理器處于目態(tài)時:只能執(zhí)行非特權(quán)指令:只能執(zhí)行非特權(quán)指令特權(quán)級別不同,可運行指令集合也不同特權(quán)級別不同,可運行指令集合也不同特權(quán)級別越高,可以運行指令集合越大特權(quán)級別越高,可以運行指令集合越大高特權(quán)級別對應(yīng)的可運行指令集合包含低特權(quán)級的高特權(quán)級別對應(yīng)的可運行指令集合包含低特權(quán)級的2.1 中央處理器(中央處理器(CPU)5.程序狀態(tài)字程序狀態(tài)字PSW程序狀態(tài)字(程序狀態(tài)字(PSW):用來指示處理器條件和狀態(tài)的寄存:用來指示

10、處理器條件和狀態(tài)的寄存器。不同的機器系統(tǒng),其器。不同的機器系統(tǒng),其PSW的格式和信息不盡相同。的格式和信息不盡相同。PSW提供的主要信息:提供的主要信息:CPU的工作狀態(tài)碼的工作狀態(tài)碼指明管態(tài)還是目態(tài),用來說明當指明管態(tài)還是目態(tài),用來說明當前在前在CPU上執(zhí)行的是操作系統(tǒng)還是一般用戶,從而決定上執(zhí)行的是操作系統(tǒng)還是一般用戶,從而決定其是否可以使用特權(quán)指令或擁有其它的特殊權(quán)力其是否可以使用特權(quán)指令或擁有其它的特殊權(quán)力條件碼條件碼反映指令執(zhí)行后的結(jié)果特征反映指令執(zhí)行后的結(jié)果特征中斷屏蔽碼中斷屏蔽碼指出是否允許中斷指出是否允許中斷2.1 中央處理器(中央處理器(CPU)目態(tài)目態(tài)管態(tài)管態(tài) :其轉(zhuǎn)換的唯

11、一途徑是通過中斷:其轉(zhuǎn)換的唯一途徑是通過中斷管態(tài)管態(tài)目態(tài)目態(tài) :可用通過設(shè)置:可用通過設(shè)置PSW(PSW(修改程序狀態(tài)字修改程序狀態(tài)字) )對應(yīng)位的值來實現(xiàn)對應(yīng)位的值來實現(xiàn)系統(tǒng)屏蔽系統(tǒng)屏蔽鑰鑰EMWP中斷碼中斷碼ILCCC程序屏蔽程序屏蔽指令地址指令地址0711153133353963例:例:IBM370的的PSW鑰:用于存儲保護鑰:用于存儲保護EMWP:E表示機器控制方式,表示機器控制方式,M表示機器校驗方式,表示機器校驗方式,W表示表示 等待狀態(tài)位,等待狀態(tài)位,P表示處理器的工作狀態(tài)。表示處理器的工作狀態(tài)。ILC:上一次執(zhí)行指令的長度。:上一次執(zhí)行指令的長度。CC:條件值。:條件值。系統(tǒng)屏

12、蔽:指出系統(tǒng)屏蔽:指出CPU是否接受特定通道的中斷。是否接受特定通道的中斷。程序屏蔽:指示程序屏蔽:指示CPU是否接受某種程序性中斷。是否接受某種程序性中斷。2.2 存儲器系統(tǒng)存儲器系統(tǒng)1.存儲器的層次結(jié)構(gòu)存儲器的層次結(jié)構(gòu)2.存儲訪問局部性原理存儲訪問局部性原理提高存儲系統(tǒng)效能關(guān)鍵點:程序存儲訪問提高存儲系統(tǒng)效能關(guān)鍵點:程序存儲訪問局部性局部性原理。原理。程序執(zhí)行時,有很多的循環(huán)和子程序調(diào)用,一旦進入這樣程序執(zhí)行時,有很多的循環(huán)和子程序調(diào)用,一旦進入這樣的程序段,就會重復存取相同的指令集合的程序段,就會重復存取相同的指令集合對數(shù)據(jù)存取也有局部性,在較短的時間內(nèi),穩(wěn)定地保持在對數(shù)據(jù)存取也有局部性

13、,在較短的時間內(nèi),穩(wěn)定地保持在一個存儲器的局部區(qū)域一個存儲器的局部區(qū)域2.2 存儲器系統(tǒng)存儲器系統(tǒng)3.3.存儲保護:硬件支持存儲保護:硬件支持對主存中的信息加以嚴格的保護,使操作系統(tǒng)及其對主存中的信息加以嚴格的保護,使操作系統(tǒng)及其它程序不被破壞。它程序不被破壞。地址寄存器(界限寄存器)地址寄存器(界限寄存器)存儲鍵存儲鍵2.2 存儲器系統(tǒng)存儲器系統(tǒng)(1)界地址寄存器(界限寄存器)界地址寄存器(界限寄存器)界地址寄存器界地址寄存器被廣泛使用的一種存儲保護技術(shù),實現(xiàn)方法:被廣泛使用的一種存儲保護技術(shù),實現(xiàn)方法:在在CPUCPU中設(shè)置一對中設(shè)置一對下限寄存器下限寄存器和和上限寄存器上限寄存器存放用戶

14、作業(yè)存放用戶作業(yè)在主存中的下限和上限地址在主存中的下限和上限地址也可將一個寄存器作為基址寄存器,另一寄存器作為限長也可將一個寄存器作為基址寄存器,另一寄存器作為限長寄存器(指示存儲區(qū)長度)寄存器(指示存儲區(qū)長度)每當每當CPUCPU要訪問主存,硬件自動將被訪問的主存地址與界要訪問主存,硬件自動將被訪問的主存地址與界限寄存器的內(nèi)容進行比較,以判斷是否越界,如果未越界,限寄存器的內(nèi)容進行比較,以判斷是否越界,如果未越界,則按此地址訪問主存,否則將產(chǎn)生越界中斷則按此地址訪問主存,否則將產(chǎn)生越界中斷越界中斷越界中斷(存儲保護中斷)(存儲保護中斷)界地址寄存器界地址寄存器存儲保護技術(shù)存儲保護技術(shù)(2)存

15、儲鍵)存儲鍵每個存儲塊有一個由二進位組成的每個存儲塊有一個由二進位組成的存儲保護鍵。存儲保護鍵。作業(yè)被允許進入主存時,作業(yè)被允許進入主存時,OSOS分為它分配一個唯一的存儲鍵分為它分配一個唯一的存儲鍵號號分配給該作業(yè)各存儲塊存儲鍵與作業(yè)的存儲鍵號相同。分配給該作業(yè)各存儲塊存儲鍵與作業(yè)的存儲鍵號相同。當當OSOS挑選該作業(yè)運行時,將作業(yè)的存儲鍵號存入程序狀態(tài)挑選該作業(yè)運行時,將作業(yè)的存儲鍵號存入程序狀態(tài)字字PSWPSW的存儲鍵(的存儲鍵(“鑰匙鑰匙”)域中。)域中。每當每當CPUCPU訪問主存時,都將該主存塊的存儲鍵與訪問主存時,都將該主存塊的存儲鍵與PSWPSW中的中的“鑰匙鑰匙”進行比較,如

16、果相匹配,則允許訪問,否則,拒進行比較,如果相匹配,則允許訪問,否則,拒絕并報警。絕并報警。2.3 中斷技術(shù)中斷技術(shù)中斷中斷對于操作系統(tǒng)的重要性就像機器中的對于操作系統(tǒng)的重要性就像機器中的驅(qū)動齒輪一樣,所以有人把操作系統(tǒng)稱為驅(qū)動齒輪一樣,所以有人把操作系統(tǒng)稱為是由是由 “中斷驅(qū)動中斷驅(qū)動”或者或者 “(中斷)事件(中斷)事件驅(qū)動驅(qū)動”。中斷中斷協(xié)調(diào)系統(tǒng)對各種外部事件的響應(yīng)和處協(xié)調(diào)系統(tǒng)對各種外部事件的響應(yīng)和處理理中斷中斷是多道程序?qū)崿F(xiàn)的是多道程序?qū)崿F(xiàn)的必要條件必要條件中斷中斷指指CPUCPU對系統(tǒng)內(nèi)或系統(tǒng)外發(fā)生異步事件的響應(yīng)。對系統(tǒng)內(nèi)或系統(tǒng)外發(fā)生異步事件的響應(yīng)。異步事件是指無一定時序關(guān)系隨機發(fā)生

17、的事異步事件是指無一定時序關(guān)系隨機發(fā)生的事件件中斷源中斷源(中斷事件):引起中斷發(fā)生的事件。(中斷事件):引起中斷發(fā)生的事件。中斷處理程序中斷處理程序:處理中斷的程序代碼。:處理中斷的程序代碼。1.概念概念例:例:UC/OS中斷響應(yīng)過程中斷響應(yīng)過程中斷隱指令中斷隱指令-指令系統(tǒng)中沒有的指令,它由指令系統(tǒng)中沒有的指令,它由CPUCPU在中斷響應(yīng)周在中斷響應(yīng)周期自動完成。其功能是保護程序斷點、硬件關(guān)中斷、向量地址期自動完成。其功能是保護程序斷點、硬件關(guān)中斷、向量地址送送PCPC(硬件向量法)或中斷識別程序入口地址送(硬件向量法)或中斷識別程序入口地址送PCPC(軟件查詢(軟件查詢法)。法)。 中斷

18、類型中斷類型:不同機器對中斷類型的劃分不完:不同機器對中斷類型的劃分不完全相同。全相同。IBM-PC的中斷分為:的中斷分為:可屏蔽中斷(可屏蔽中斷(I/O中斷)中斷)不可屏蔽中斷(機器故障中斷等)不可屏蔽中斷(機器故障中斷等)程序錯誤中斷(溢出、缺頁和缺段中斷等)程序錯誤中斷(溢出、缺頁和缺段中斷等)訪管中斷(訪管中斷(Trap 指令和指令和INT指令等,指令等, Trap 是在是在EFLAGES中陷入標志中陷入標志TF=1時每執(zhí)行一條指令后時每執(zhí)行一條指令后便發(fā)生一次的異常,如斷點、便發(fā)生一次的異常,如斷點、INTO溢出等)。溢出等)。IBM370的中斷的中斷機器故障中斷機器故障中斷:如電源

19、故障,機器電路檢驗錯等:如電源故障,機器電路檢驗錯等輸入輸出中斷輸入輸出中斷:輸入輸出設(shè)備和通道實現(xiàn)的數(shù)據(jù)傳輸:輸入輸出設(shè)備和通道實現(xiàn)的數(shù)據(jù)傳輸外部中斷外部中斷:時鐘中斷,操作員控制臺中斷,多機系統(tǒng):時鐘中斷,操作員控制臺中斷,多機系統(tǒng)中其它機器的通信要求中斷,各種外設(shè)或傳感器發(fā)來中其它機器的通信要求中斷,各種外設(shè)或傳感器發(fā)來的實時中斷等的實時中斷等 程序中斷程序中斷:程序中問題引起的中斷,如錯誤地使用指:程序中問題引起的中斷,如錯誤地使用指令或數(shù)據(jù)、溢出等問題,存儲保護等令或數(shù)據(jù)、溢出等問題,存儲保護等訪管中斷訪管中斷:訪管指令或陷阱指令(:訪管指令或陷阱指令(TrapTrap指令)中的操指

20、令)中的操作數(shù)規(guī)定了要求服務(wù)的類型。每當作數(shù)規(guī)定了要求服務(wù)的類型。每當CPUCPU執(zhí)行訪管指令或執(zhí)行訪管指令或陷阱指令時,即引起中斷并調(diào)用操作系統(tǒng)相應(yīng)的功能陷阱指令時,即引起中斷并調(diào)用操作系統(tǒng)相應(yīng)的功能模塊為其服務(wù)模塊為其服務(wù)訪管中斷是用戶程序在運行中請求操作系統(tǒng)為其提供服務(wù)而訪管中斷是用戶程序在運行中請求操作系統(tǒng)為其提供服務(wù)而執(zhí)行一條執(zhí)行一條“訪管指令訪管指令”所引起的中斷所引起的中斷,又稱軟件中斷。訪管又稱軟件中斷。訪管中斷是進程所期待的中斷是進程所期待的,是自愿性的中斷是自愿性的中斷,又稱自愿中斷。又稱自愿中斷。 引入中斷的目的:引入中斷的目的:解決主機與外設(shè)的并行工作問題解決主機與外設(shè)

21、的并行工作問題提高可靠性提高可靠性實現(xiàn)多機聯(lián)系實現(xiàn)多機聯(lián)系實現(xiàn)實時控制實現(xiàn)實時控制特點:特點: 中斷是隨機的中斷是隨機的 中斷是可恢復的中斷是可恢復的 中斷是自動處理的中斷是自動處理的2.中斷系統(tǒng)中斷系統(tǒng)中斷系統(tǒng)中斷系統(tǒng)= =硬件中斷裝置硬件中斷裝置+ +中斷處理程序中斷處理程序中斷系統(tǒng)的中斷系統(tǒng)的硬件中斷裝置硬件中斷裝置中斷系統(tǒng)的機制部分,包中斷系統(tǒng)的機制部分,包括:發(fā)現(xiàn)中斷,響應(yīng)中斷的硬件。該裝置負責捕獲中斷源括:發(fā)現(xiàn)中斷,響應(yīng)中斷的硬件。該裝置負責捕獲中斷源發(fā)出的中斷請求,以一定方式響應(yīng)中斷源,然后將處理器發(fā)出的中斷請求,以一定方式響應(yīng)中斷源,然后將處理器控制權(quán)交給特定的中斷處理程序。控

22、制權(quán)交給特定的中斷處理程序。軟件中斷處理程序軟件中斷處理程序中斷系統(tǒng)的策略部分,中斷系統(tǒng)的策略部分, 負責辨負責辨別中斷類型并做出相應(yīng)的操作。別中斷類型并做出相應(yīng)的操作。中斷裝置的基本功能中斷裝置的基本功能 提供識別中斷源的方法提供識別中斷源的方法 提供查詢中斷狀態(tài)的方法,通常使用一個寄存器存儲有關(guān)提供查詢中斷狀態(tài)的方法,通常使用一個寄存器存儲有關(guān)中斷的狀態(tài)信息,稱為中斷字中斷的狀態(tài)信息,稱為中斷字 提供中斷現(xiàn)場保護的能力提供中斷現(xiàn)場保護的能力 提供中斷處理程序?qū)ぶ纺芰Γ业角‘數(shù)闹袛嗵幚沓绦蛱峁┲袛嗵幚沓绦驅(qū)ぶ纺芰Γ业角‘數(shù)闹袛嗵幚沓绦?具有預定義的系統(tǒng)控制棧和中斷處理程序入口地址映射表具

23、有預定義的系統(tǒng)控制棧和中斷處理程序入口地址映射表(中斷向量表)等數(shù)據(jù)結(jié)構(gòu)和它們在主存中的位置,以輔(中斷向量表)等數(shù)據(jù)結(jié)構(gòu)和它們在主存中的位置,以輔助助OS定制中斷處理策略和中斷調(diào)度機制定制中斷處理策略和中斷調(diào)度機制3.中斷邏輯與中斷寄存器中斷邏輯與中斷寄存器如何接受和響應(yīng)中斷源的中斷請求,因機器而異。如在如何接受和響應(yīng)中斷源的中斷請求,因機器而異。如在PCPC中:中:可屏蔽的中斷請求可屏蔽的中斷請求INTRINTR: :主要指來輸入輸出設(shè)備的主要指來輸入輸出設(shè)備的I/OI/O中斷中斷, , 通過建立在通過建立在PSWPSW中的中斷屏蔽位加以屏蔽,即使再有中的中斷屏蔽位加以屏蔽,即使再有I/O

24、I/O中中斷,處理器也不響應(yīng)斷,處理器也不響應(yīng)不可屏蔽的中斷請求不可屏蔽的中斷請求: :屬于機器故障中斷,包括內(nèi)存奇偶校屬于機器故障中斷,包括內(nèi)存奇偶校驗錯以及掉電等中斷源驗錯以及掉電等中斷源程序中的問題引起的中斷程序中的問題引起的中斷(如溢出、除法錯都可以引起中(如溢出、除法錯都可以引起中斷)和軟件中斷等斷)和軟件中斷等當多個中斷源請求同時發(fā)生時,由當多個中斷源請求同時發(fā)生時,由中斷邏輯中斷邏輯按中斷優(yōu)先級來按中斷優(yōu)先級來判定響應(yīng)哪個中斷請求。判定響應(yīng)哪個中斷請求。非屏蔽中斷請求非屏蔽中斷請求中斷邏輯中斷邏輯中斷指令中斷指令I(lǐng)NTn溢出中斷溢出中斷INT0除法錯除法錯中斷中斷單步中斷單步中斷

25、TF=1中斷控中斷控制器制器8259A可屏蔽性中斷請求可屏蔽性中斷請求INTRNMIIBM-PC中斷邏輯和中斷源示意圖中斷邏輯和中斷源示意圖中斷寄存器中斷寄存器有的計算機中,為了區(qū)分和不丟失中斷信號,有的計算機中,為了區(qū)分和不丟失中斷信號,對應(yīng)每個對應(yīng)每個中斷源中斷源分別用一固定分別用一固定觸發(fā)器觸發(fā)器來寄存中來寄存中斷信號。通常規(guī)定:值為斷信號。通常規(guī)定:值為1 1時,表示有中斷信時,表示有中斷信號,為號,為0 0時表示無中斷信號。時表示無中斷信號。這些觸發(fā)器的全體組成中斷寄存器,中斷寄存這些觸發(fā)器的全體組成中斷寄存器,中斷寄存器由若干個中斷位組成,每個觸發(fā)器對應(yīng)一個器由若干個中斷位組成,每

26、個觸發(fā)器對應(yīng)一個中斷位。中斷位。 3.中斷邏輯與中斷寄存器中斷邏輯與中斷寄存器例:中斷請求的產(chǎn)生例:中斷請求的產(chǎn)生DQ&1INTR 中斷請求觸發(fā)器中斷請求觸發(fā)器MASK 中斷屏蔽觸發(fā)器中斷屏蔽觸發(fā)器來自來自 CPU 的的中斷查詢信號中斷查詢信號受設(shè)備本身控制受設(shè)備本身控制INTR D MASKQD 完成觸發(fā)器完成觸發(fā)器中斷請求中斷請求INTR = 1 有請求有請求MASK = 1 被屏蔽被屏蔽中斷掃描機構(gòu)中斷掃描機構(gòu) 在在CPU的控制部件中,用于檢測是否有中斷發(fā)生的的控制部件中,用于檢測是否有中斷發(fā)生的機構(gòu)。機構(gòu)。在每條指令執(zhí)行周期的在每條指令執(zhí)行周期的最后時刻最后時刻掃描中斷寄存器,

27、掃描中斷寄存器,詢問是否有中斷信號詢問是否有中斷信號若無中斷信號,繼續(xù)執(zhí)行下一條指令若無中斷信號,繼續(xù)執(zhí)行下一條指令若有中斷,中斷硬件將該中斷觸發(fā)器內(nèi)容按規(guī)定編若有中斷,中斷硬件將該中斷觸發(fā)器內(nèi)容按規(guī)定編碼送入碼送入PSWPSW的相應(yīng)位,稱為中斷碼的相應(yīng)位,稱為中斷碼 3.中斷邏輯與中斷寄存器中斷邏輯與中斷寄存器4.多級中斷多級中斷多級中斷多級中斷多數(shù)微型處理器有多級中斷系統(tǒng),可以有多根中斷請求線多數(shù)微型處理器有多級中斷系統(tǒng),可以有多根中斷請求線(級)從不同設(shè)備連接到中斷邏輯(級)從不同設(shè)備連接到中斷邏輯具有相同特性和優(yōu)先級的設(shè)備可連到同一中斷級上,由中斷具有相同特性和優(yōu)先級的設(shè)備可連到同一中

28、斷級上,由中斷排隊器(硬件)決定當前響應(yīng)哪個中斷源。排隊器(硬件)決定當前響應(yīng)哪個中斷源。在多級中斷系統(tǒng)中,可能同時有多個中斷請求,在多級中斷系統(tǒng)中,可能同時有多個中斷請求,CPUCPU接受中斷接受中斷優(yōu)先級為最高的那個中斷,忽略其中斷優(yōu)先級較低的那些中優(yōu)先級為最高的那個中斷,忽略其中斷優(yōu)先級較低的那些中斷。斷。高優(yōu)先級的中斷可以打斷低優(yōu)先級的中斷。高優(yōu)先級的中斷可以打斷低優(yōu)先級的中斷。5.中斷響應(yīng)中斷響應(yīng)CPUCPU如何響應(yīng)中斷如何響應(yīng)中斷, , 兩個問題:兩個問題:CPUCPU何時響應(yīng)中斷?何時響應(yīng)中斷? 通常在通常在CPUCPU執(zhí)行了一條指令以后,更確切地,在執(zhí)行了一條指令以后,更確切地

29、,在指令周期指令周期最后時刻最后時刻接受中斷請求,或此時掃描中斷寄存器。接受中斷請求,或此時掃描中斷寄存器。 如何知道提出中斷請求的設(shè)備或中斷源?如何知道提出中斷請求的設(shè)備或中斷源?用用軟件指令軟件指令去查詢各設(shè)備接口,比較費時(非向量中去查詢各設(shè)備接口,比較費時(非向量中斷)。斷)。使用使用 “中斷向量表中斷向量表” (向量中斷)。(向量中斷)。非向量中斷非向量中斷:總是轉(zhuǎn)向中斷查詢程序的入口地址,執(zhí)行終端:總是轉(zhuǎn)向中斷查詢程序的入口地址,執(zhí)行終端查詢程序,以確定被優(yōu)先批準的中斷源,然后分支進入相應(yīng)查詢程序,以確定被優(yōu)先批準的中斷源,然后分支進入相應(yīng)的中斷服務(wù)程序。的中斷服務(wù)程序。例:中斷向量例:中斷向量向量地址向量地址排隊器輸出排隊器輸出 顯示器服務(wù)程序顯示器服務(wù)程序 打印機服務(wù)程序打印機服務(wù)程序JMP 400JMP 300JMP 200主存主存12H13H14H200300向量地址向量地址入口地址入口地址入口地址入口地址 設(shè)備設(shè)備編碼器編碼器1 0 0 0000100100 1 0 000010011由由 硬件

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論