windows操作系統(tǒng)概述課件_第1頁
windows操作系統(tǒng)概述課件_第2頁
windows操作系統(tǒng)概述課件_第3頁
windows操作系統(tǒng)概述課件_第4頁
windows操作系統(tǒng)概述課件_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、windows操作系統(tǒng)概述第三講 中斷系統(tǒng)目的與要求:理解內(nèi)核程序運行機制中理解內(nèi)核程序運行機制中斷斷/異常(陷入)機制及中斷異常(陷入)機制及中斷/異常(陷入)異常(陷入)處理過程。處理過程。重點與難點:中斷系統(tǒng)概念及中斷中斷系統(tǒng)概念及中斷/異常(陷異常(陷入)處理過程。入)處理過程。作業(yè):1,5,6windows操作系統(tǒng)概述中斷的引入中斷的引入:為了開發(fā)為了開發(fā)CPUCPU和通道和通道( (或設(shè)備或設(shè)備) )之之間的并行操作,當(dāng)間的并行操作,當(dāng)CPUCPU啟動通道啟動通道( (或設(shè)備或設(shè)備) )進進行輸入輸出后,通道行輸入輸出后,通道( (或設(shè)備或設(shè)備) )可以獨立工作,可以獨立工作,CP

2、UCPU也可以轉(zhuǎn)去做與此次輸入輸出不相關(guān)的也可以轉(zhuǎn)去做與此次輸入輸出不相關(guān)的其它任務(wù)。其它任務(wù)。通道通道( (或設(shè)備或設(shè)備) ) 輸入輸出完成后,必須告訴輸入輸出完成后,必須告訴CPUCPU,讓,讓CPUCPU繼續(xù)輸入輸出以后的事情,通道繼續(xù)輸入輸出以后的事情,通道( (或設(shè)備或設(shè)備) )通過向通過向CPUCPU發(fā)中斷告訴發(fā)中斷告訴CPUCPU此次輸入此次輸入輸出結(jié)束輸出結(jié)束。第二章第二章 操作系統(tǒng)結(jié)構(gòu)操作系統(tǒng)結(jié)構(gòu)2.12.1中斷中斷/ /異常(陷入)異常(陷入)windows操作系統(tǒng)概述異常(陷入)引入:用于表示表示CPUCPU執(zhí)行指令執(zhí)行指令時本身出現(xiàn)算術(shù)溢出,零做除數(shù),取數(shù)時的時本身出現(xiàn)

3、算術(shù)溢出,零做除數(shù),取數(shù)時的奇偶錯,訪存指令越界,或就是執(zhí)行了一條奇偶錯,訪存指令越界,或就是執(zhí)行了一條所謂所謂“陷入指令陷入指令”(用于實現(xiàn)系統(tǒng)調(diào)用)等(用于實現(xiàn)系統(tǒng)調(diào)用)等情況,這時中斷當(dāng)前的執(zhí)行流程,轉(zhuǎn)到相應(yīng)情況,這時中斷當(dāng)前的執(zhí)行流程,轉(zhuǎn)到相應(yīng)的錯誤處理程序或陷入處理程序。的錯誤處理程序或陷入處理程序。中斷中斷/ /異常(陷入)異常(陷入):指系統(tǒng)發(fā)生某個異步指系統(tǒng)發(fā)生某個異步/同同步事件后步事件后,處理機暫停正在執(zhí)行的程序處理機暫停正在執(zhí)行的程序,轉(zhuǎn)去轉(zhuǎn)去執(zhí)行處理該事件程序的過程。執(zhí)行處理該事件程序的過程。 windows操作系統(tǒng)概述2.1.1中斷/異常(陷入)分類中斷中斷( (外中

4、斷外中斷) )異常異常( (內(nèi)中斷內(nèi)中斷) )陷入陷入I/OI/O中斷中斷時鐘中斷時鐘中斷系統(tǒng)調(diào)用系統(tǒng)調(diào)用缺頁缺頁斷點指令斷點指令其它程序性異常其它程序性異常( (如算術(shù)溢出等如算術(shù)溢出等) )中斷中斷( (狹義狹義) )與異常(陷入)的區(qū)別與異常(陷入)的區(qū)別: :中斷中斷: : 與正執(zhí)行指令無關(guān),可以屏蔽與正執(zhí)行指令無關(guān),可以屏蔽異常或陷入異?;蛳萑? : 與正執(zhí)行指令有關(guān),不可屏蔽與正執(zhí)行指令有關(guān),不可屏蔽*廣義中斷廣義中斷windows操作系統(tǒng)概述2.1.2中斷的分級與屏蔽中斷寄存器中斷寄存器:寄存中斷事件的全部觸發(fā)器。寄存中斷事件的全部觸發(fā)器。中斷位中斷位:每個觸發(fā)器稱為一個中斷位,

5、當(dāng)發(fā)每個觸發(fā)器稱為一個中斷位,當(dāng)發(fā)生某個中斷事件時相應(yīng)位被置上。生某個中斷事件時相應(yīng)位被置上。中斷序號中斷序號:給中斷的一個順序編號給中斷的一個順序編號. .中斷響應(yīng)中斷響應(yīng):由硬件在執(zhí)行每一條指令的最后由硬件在執(zhí)行每一條指令的最后時刻判斷是否有中斷時刻判斷是否有中斷, ,有則無條件轉(zhuǎn)入操作有則無條件轉(zhuǎn)入操作系統(tǒng)的中斷處理程序系統(tǒng)的中斷處理程序. .中斷寄存器圖示* 1 0 1 2 1 0windows操作系統(tǒng)概述高級中斷處理高級中斷處理中級中斷處理中級中斷處理低級中斷處理低級中斷處理中斷優(yōu)先級:中斷的優(yōu)先程度中斷的優(yōu)先程度. .原則上原則上, ,高、高、低優(yōu)先級中斷同時到先響應(yīng)高級中斷。高級

6、低優(yōu)先級中斷同時到先響應(yīng)高級中斷。高級中斷可以打斷低級中斷處理程序的運行,同中斷可以打斷低級中斷處理程序的運行,同級中斷同時到時,則按位序響應(yīng)。級中斷同時到時,則按位序響應(yīng)。windows操作系統(tǒng)概述中斷優(yōu)先級設(shè)計原則中斷優(yōu)先級設(shè)計原則:一般來說,高速設(shè)備:一般來說,高速設(shè)備的中斷優(yōu)先級高,慢速設(shè)備的中斷優(yōu)先級低。的中斷優(yōu)先級高,慢速設(shè)備的中斷優(yōu)先級低。因為高速設(shè)備的中斷被處理機優(yōu)先響應(yīng)可以因為高速設(shè)備的中斷被處理機優(yōu)先響應(yīng)可以讓處理機盡快地向他發(fā)出下一個讓處理機盡快地向他發(fā)出下一個I/OI/O請求,請求,提高高速設(shè)備的利用率。在交互式系統(tǒng)中也提高高速設(shè)備的利用率。在交互式系統(tǒng)中也可以考慮用戶

7、響應(yīng)滿意優(yōu)先原則??梢钥紤]用戶響應(yīng)滿意優(yōu)先原則。如某機上的如某機上的UNIXUNIX系統(tǒng)把中斷級別分為:系統(tǒng)把中斷級別分為:時鐘中斷:中斷優(yōu)先級時鐘中斷:中斷優(yōu)先級6 6級級磁盤中斷:中斷優(yōu)先級磁盤中斷:中斷優(yōu)先級5 5級級終端等其它外設(shè)中斷:中斷優(yōu)先級終端等其它外設(shè)中斷:中斷優(yōu)先級4 4級級windows操作系統(tǒng)概述處理機優(yōu)先級處理機優(yōu)先級:指處理機正運行程序的中斷指處理機正運行程序的中斷響應(yīng)級別。在中斷處理程序運行前設(shè)置。即響應(yīng)級別。在中斷處理程序運行前設(shè)置。即當(dāng)處理機處理某一優(yōu)先級中斷時,只允許處當(dāng)處理機處理某一優(yōu)先級中斷時,只允許處理機去響應(yīng)比該優(yōu)先級高的中斷理機去響應(yīng)比該優(yōu)先級高的中

8、斷, ,而屏蔽低而屏蔽低于或等于該優(yōu)先級的中斷。于或等于該優(yōu)先級的中斷。中斷屏蔽中斷屏蔽:指禁止處理機響應(yīng)中斷或禁止中指禁止處理機響應(yīng)中斷或禁止中斷出現(xiàn)斷出現(xiàn). .windows操作系統(tǒng)概述 中斷寄存器中斷寄存器 屏蔽寄存器屏蔽寄存器1110響應(yīng)中斷*軟件實現(xiàn)中斷屏蔽圖示中斷屏蔽有兩種方法中斷屏蔽有兩種方法:硬件實現(xiàn)硬件實現(xiàn)( (軟件置處理機優(yōu)先級軟件置處理機優(yōu)先級, ,硬件按系硬件按系統(tǒng)設(shè)計時的約定屏蔽那些低優(yōu)先級中斷統(tǒng)設(shè)計時的約定屏蔽那些低優(yōu)先級中斷) )軟件實現(xiàn)軟件實現(xiàn)( (由軟件按中斷優(yōu)先級約定置屏蔽由軟件按中斷優(yōu)先級約定置屏蔽寄存器寄存器) )* *windows操作系統(tǒng)概述2.22

9、.2中斷中斷/ /異常(陷入)響應(yīng)和處理異常(陷入)響應(yīng)和處理CPUCPU能夠在每條機器指令執(zhí)行周期內(nèi)的最后能夠在每條機器指令執(zhí)行周期內(nèi)的最后時刻掃描中斷寄存器,時刻掃描中斷寄存器,“詢問詢問”是否有中斷是否有中斷信號。若無中斷信號,信號。若無中斷信號,CPUCPU繼續(xù)執(zhí)行程序的繼續(xù)執(zhí)行程序的后續(xù)指令,否則后續(xù)指令,否則CPUCPU停止執(zhí)行當(dāng)前程序的后停止執(zhí)行當(dāng)前程序的后續(xù)指令,無條件地轉(zhuǎn)入操作系統(tǒng)內(nèi)的中斷處續(xù)指令,無條件地轉(zhuǎn)入操作系統(tǒng)內(nèi)的中斷處理程序。這一過程稱為中斷響應(yīng)。理程序。這一過程稱為中斷響應(yīng)。異常(陷入)是在執(zhí)行指令的時候,由指異常(陷入)是在執(zhí)行指令的時候,由指令本身的原因發(fā)生的

10、,令本身的原因發(fā)生的,CPUCPU中指令的執(zhí)行邏中指令的執(zhí)行邏輯發(fā)現(xiàn)發(fā)生了異常(陷入)則轉(zhuǎn)入操作系統(tǒng)輯發(fā)現(xiàn)發(fā)生了異常(陷入)則轉(zhuǎn)入操作系統(tǒng)內(nèi)的異常(陷入)處理程序。內(nèi)的異常(陷入)處理程序。 windows操作系統(tǒng)概述1 1、斷點和恢復(fù)點、斷點和恢復(fù)點PCPC: 程序計數(shù)器程序計數(shù)器. .指向馬上要執(zhí)行的那一條指向馬上要執(zhí)行的那一條指令指令. .斷點斷點: 檢測到中斷時檢測到中斷時, ,處理機剛執(zhí)行完的那處理機剛執(zhí)行完的那條指令地址條指令地址. .恢復(fù)點恢復(fù)點:斷點的邏輯后續(xù)指令地址斷點的邏輯后續(xù)指令地址.PC.PC的值的值. .現(xiàn)場信息現(xiàn)場信息:指中斷那一刻確保被中斷程序能指中斷那一刻確保被

11、中斷程序能繼續(xù)運行的有關(guān)信息繼續(xù)運行的有關(guān)信息. .如如PC,PC,通用寄存器通用寄存器, ,特特殊寄存器等殊寄存器等. .* *幾個基本概念幾個基本概念windows操作系統(tǒng)概述斷點和恢復(fù)點圖示斷點恢復(fù)點windows操作系統(tǒng)概述2 2、核心態(tài)與用戶態(tài)、核心態(tài)與用戶態(tài)核心態(tài)核心態(tài)(系統(tǒng)態(tài),監(jiān)督方式,管態(tài)):允許特權(quán)允許特權(quán)指令執(zhí)行的狀態(tài)指令執(zhí)行的狀態(tài), ,在此狀態(tài)下地址空間也較在此狀態(tài)下地址空間也較大大. .用戶態(tài)用戶態(tài)(用戶態(tài),用戶方式,目態(tài)):一般程序一般程序所運行的狀態(tài)所運行的狀態(tài). .PS(PSW):PS(PSW):處理機狀態(tài)字處理機狀態(tài)字. .寄存處理機運行狀寄存處理機運行狀態(tài)的寄

12、存器態(tài)的寄存器. .當(dāng)前處理機狀態(tài)當(dāng)前處理機狀態(tài). .處理機優(yōu)先級處理機優(yōu)先級各種控制位各種控制位( (如如, ,外中斷賦能位外中斷賦能位) )* *windows操作系統(tǒng)概述 3 3、中斷向量、中斷向量中斷向量:一片存放中斷處理程序入口地址一片存放中斷處理程序入口地址和程序運行所需處理機狀態(tài)字的內(nèi)存單元。和程序運行所需處理機狀態(tài)字的內(nèi)存單元。硬件按中斷號,異常(陷入)類型的不同通硬件按中斷號,異常(陷入)類型的不同通過中斷向量表散轉(zhuǎn)。過中斷向量表散轉(zhuǎn)。windows操作系統(tǒng)概述中斷中斷/ /異常(陷入)處理的一般過程異常(陷入)處理的一般過程中斷中斷, ,異常(陷入)進入異常(陷入)進入保存

13、現(xiàn)場保存現(xiàn)場分析原因分析原因, ,轉(zhuǎn)中斷轉(zhuǎn)中斷/ /異常(陷入)處理程序異常(陷入)處理程序恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場windows操作系統(tǒng)概述中斷處理的流程圖:保護現(xiàn)場保護現(xiàn)場分析中斷原因分析中斷原因 該級還有中斷該級還有中斷? ? 有條件地有條件地進行低調(diào)進行低調(diào)恢復(fù)現(xiàn)場恢復(fù)現(xiàn)場windows操作系統(tǒng)概述某機UNIX中斷處理詳細過程:1.中斷,異常(陷入)進入硬件自動將當(dāng)前硬件自動將當(dāng)前PC,PSPC,PS存入暫存寄存器存入暫存寄存器. .硬件按中斷號從指定的中斷向量單元中取硬件按中斷號從指定的中斷向量單元中取出新的出新的PC,PSPC,PS內(nèi)容裝入內(nèi)容裝入 PC,PSPC,PS寄存器寄存器. .將

14、原將原PC,PSPC,PS保存到現(xiàn)場保護區(qū)棧保存到現(xiàn)場保護區(qū)棧* *windows操作系統(tǒng)概述2.保存現(xiàn)場 現(xiàn)場保存現(xiàn)場保存/ /恢復(fù)過程示例恢復(fù)過程示例. .windows操作系統(tǒng)概述一個現(xiàn)場區(qū)棧幀的形成過程:硬件將硬件將PS,PCPS,PC壓棧壓棧, ,且根據(jù)中斷類將中斷向量表中且根據(jù)中斷類將中斷向量表中的新的的新的PS,PCPS,PC值送值送PS,PCPS,PC寄存器寄存器. .中斷入口第一條為轉(zhuǎn)總控程序指令中斷入口第一條為轉(zhuǎn)總控程序指令, ,該特殊轉(zhuǎn)移指該特殊轉(zhuǎn)移指令將令將r0r0壓棧且將中斷處理程序地址存入壓棧且將中斷處理程序地址存入r0.r0.由總控程序?qū)⑿碌挠煽偪爻绦驅(qū)⑿碌腜SP

15、S壓棧壓棧( (因其中有陷入號信息因其中有陷入號信息).).由總控將由總控將r1,r6r1,r6壓棧壓棧(r6(r6中為棧指針中為棧指針, ,此時是上一棧此時是上一棧幀頂或用戶棧頂幀頂或用戶棧頂).).由總控從新由總控從新PSPS低五位截取低五位截取traptrap號號進入棧進入棧. .總控在轉(zhuǎn)相應(yīng)中斷總控在轉(zhuǎn)相應(yīng)中斷(trap)(trap)處理程序時處理程序時, ,將返回地址將返回地址壓棧壓棧. .由各中斷由各中斷(trap)(trap)處理程序先將處理程序先將r5,r4,r3,r2r5,r4,r3,r2壓棧壓棧, ,返回總控時恢復(fù)返回總控時恢復(fù)r2,r3,r4,r5.r2,r3,r4,r5

16、.* *windows操作系統(tǒng)概述 PS 硬件保存硬件保存 增增 PC 長長 r0 方方 nps(新(新ps)ps) 向向 r1 r6 總控程序保存總控程序保存 dev (trap(trap號)號) tpc (總控返回地址總控返回地址) r5 r4 處理程序保存處理程序保存 r3 r2 sp windows操作系統(tǒng)概述3.分析原因,轉(zhuǎn)中斷/異常(陷入)處理程序總控程序直接根據(jù)總控程序直接根據(jù)r0(r0(已存放好中斷程序的已存放好中斷程序的入口地址入口地址) )內(nèi)容轉(zhuǎn)子內(nèi)容轉(zhuǎn)子. .進行中斷進行中斷( (陷入陷入) )處理處理, ,轉(zhuǎn)子時已將返回地址壓棧轉(zhuǎn)子時已將返回地址壓棧( (轉(zhuǎn)子指令自轉(zhuǎn)子

17、指令自動動).).* *注:注:中斷處理中斷處理通常是向設(shè)備控制器發(fā)下一通常是向設(shè)備控制器發(fā)下一個個I/OI/O請求,并就緒原等請求,并就緒原等I/OI/O結(jié)束的進程。結(jié)束的進程。異常(陷入)處理異常(陷入)處理包含操作系統(tǒng)系統(tǒng)調(diào)用包含操作系統(tǒng)系統(tǒng)調(diào)用處理,及異常時進程結(jié)束處理。處理,及異常時進程結(jié)束處理。windows操作系統(tǒng)概述4.恢復(fù)現(xiàn)場(總控程序)1.1.回退到核態(tài)時回退到核態(tài)時: : 退棧退棧. . 恢復(fù)恢復(fù)r0,r1r0,r1執(zhí)行執(zhí)行rttrtt指令指令. .該指令自動將棧幀中保存的該指令自動將棧幀中保存的原原PC,PSPC,PS值裝入值裝入PC,PSPC,PS寄存器寄存器. .2.2.回退到用戶態(tài)時回退到用戶態(tài)時: :低調(diào)(進行進程調(diào)度)低調(diào)(進行進程調(diào)度). .退棧退棧.

溫馨提示

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

評論

0/150

提交評論