湘潭大學(xué)操作系統(tǒng)第2章課件_第1頁
湘潭大學(xué)操作系統(tǒng)第2章課件_第2頁
湘潭大學(xué)操作系統(tǒng)第2章課件_第3頁
湘潭大學(xué)操作系統(tǒng)第2章課件_第4頁
湘潭大學(xué)操作系統(tǒng)第2章課件_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1計(jì)算機(jī)操作系統(tǒng)第2章中斷2目錄2.1中斷的基本概念2.2中斷在操作系統(tǒng)中的地位2.3中斷響應(yīng)過程2.4中斷處理過程2.5向量中斷32.1中斷的基本概念所謂中斷,就是指CPU在執(zhí)行一個(gè)程序時(shí),對(duì)系統(tǒng)發(fā)生的某個(gè)事件(程序自身或外界的原因引起的)會(huì)做出的一種反應(yīng),即CPU暫停正在執(zhí)行的程序,保留當(dāng)前程序的運(yùn)行現(xiàn)場(chǎng)后自動(dòng)轉(zhuǎn)去處理相應(yīng)的事件,處理完該事件后,又返回到之前的程序斷點(diǎn),繼續(xù)執(zhí)行被中斷的程序。42.1中斷的基本概念圖2.1中斷概念示意圖52.1中斷的基本概念中斷具有以下特點(diǎn):隨機(jī)性:在系統(tǒng)運(yùn)行過程中,中斷事件隨時(shí)可能出現(xiàn)??苫謴?fù)性:完成對(duì)某一事件的中斷處理程序后,系統(tǒng)會(huì)返回到原程序的斷點(diǎn)處繼續(xù)執(zhí)行。自動(dòng)性:在中斷事件發(fā)生后,進(jìn)入中斷、執(zhí)行中斷處理程序以及中斷返回都是由系統(tǒng)自動(dòng)完成的。62.1中斷的基本概念系統(tǒng)在進(jìn)入中斷時(shí),會(huì)訪問中斷寄存器和程序狀態(tài)字(ProgramStatementWord,PSW)寄存器的內(nèi)容。系統(tǒng)硬件會(huì)為每個(gè)中斷源設(shè)置中斷寄存器,中斷發(fā)生時(shí)的相關(guān)信息被記錄在該寄存器中,以便分析處理。中斷寄存器中的內(nèi)容稱為中斷字。程序狀態(tài)字寄存器的作用是控制指令的執(zhí)行順序并保留和指示與程序相關(guān)的系統(tǒng)狀態(tài)。72.1中斷的基本概念PSW主要包括:指令地址:程序當(dāng)前應(yīng)該執(zhí)行的指令的地址,有些機(jī)器會(huì)將該信息存放在一個(gè)單獨(dú)的寄存器——程序計(jì)數(shù)器(PC)當(dāng)中。條件碼:當(dāng)前指令的執(zhí)行情況。目態(tài)(用戶態(tài))/管態(tài)(系統(tǒng)態(tài)):CPU處于何種工作狀態(tài)。中斷屏蔽位:程序在執(zhí)行時(shí)應(yīng)該屏蔽哪些中斷,即哪些中斷發(fā)生時(shí)CPU不予響應(yīng)。常用于需要連續(xù)運(yùn)行的程序中,防止任務(wù)被中斷干擾。在中斷服務(wù)中設(shè)置適當(dāng)?shù)钠帘挝?,可以起到?duì)優(yōu)先級(jí)不同的中斷源的屏蔽作用,防止在執(zhí)行某一類中斷處理時(shí)受其它中斷干擾。尋址方式、編址、保護(hù)鍵。響應(yīng)中斷的內(nèi)容。82.1.1中斷的作用中斷具有如下一些作用:(1)實(shí)現(xiàn)CPU與I/O設(shè)備并行工作。(2)實(shí)現(xiàn)硬件故障處理。(3)實(shí)現(xiàn)人-機(jī)聯(lián)系。(4)實(shí)現(xiàn)多道程序和分時(shí)操作。(5)實(shí)現(xiàn)實(shí)時(shí)處理。(6)實(shí)現(xiàn)應(yīng)用程序和操作系統(tǒng)的聯(lián)系。(7)實(shí)現(xiàn)多處理機(jī)系統(tǒng)中處理機(jī)之間的聯(lián)系。92.1.2中斷的類型按中斷功能分類①硬件故障中斷:機(jī)器發(fā)生故障時(shí)所產(chǎn)生的中斷叫做硬件故障中斷。②程序性中斷:在執(zhí)行程序的過程中,發(fā)現(xiàn)了程序性質(zhì)的錯(cuò)誤或出現(xiàn)了某些程序的特定狀態(tài)而產(chǎn)生的中斷叫做程序性中斷。③外部中斷:對(duì)某臺(tái)中央處理機(jī)而言,它的外部非通道式裝置所引起的中斷叫做外部中斷。④輸入/輸出中斷:輸入/輸出中斷是當(dāng)外部設(shè)備或通道操作正常結(jié)束或發(fā)生某種錯(cuò)誤時(shí)所發(fā)生的中斷。⑤訪管中斷:對(duì)操作系統(tǒng)提出某種需求(請(qǐng)求I/O傳輸、創(chuàng)建進(jìn)程等)時(shí)所發(fā)出的中斷叫做訪管中斷,即用戶在程序中有意識(shí)安排的中斷。這是由于用戶在編制程序時(shí)需要使用操作系統(tǒng)提供的服務(wù),有意使用訪管指令或系統(tǒng)調(diào)用所引起的中斷,又稱軟中斷。102.1.2中斷的類型按中斷方式分類①?gòu)?qiáng)迫性中斷:中斷事件不是正在運(yùn)行的程序所期待的這類中斷稱之為強(qiáng)迫性中斷,這類中斷通常是由某種事故或外部請(qǐng)求信號(hào)所引起的,如:硬件故障中斷、外部中斷、輸入/輸出中斷等。②自愿中斷:正在運(yùn)行的程序所期待的事件引起的中斷稱之為自愿中斷,這類中斷通常是由運(yùn)行程序自身請(qǐng)求操作系統(tǒng)服務(wù)而引起的,如:訪管中斷。112.1.2中斷的類型按中斷來源分類①外中斷:由處理機(jī)外部事件引起的中斷稱為外中斷,又稱為中斷或異步中斷,它是隨著CPU的時(shí)鐘隨機(jī)產(chǎn)生的,可能發(fā)生在一條指令的執(zhí)行過程中,也可能發(fā)生在一條指令執(zhí)行之后,但只能在一條指令執(zhí)行結(jié)束之后才能響應(yīng)該中斷。②內(nèi)中斷:由處理機(jī)內(nèi)部事件引起的中斷稱為內(nèi)中斷,又稱為異常或同步中斷,它是由CPU控制單元產(chǎn)生,在一條指令執(zhí)行完畢之后才會(huì)發(fā)出中斷,一旦發(fā)出中斷,因立即響應(yīng)該中斷。內(nèi)中斷包括訪管中斷、程序性中斷、硬件故障中斷。122.1.3中斷嵌套、中斷優(yōu)先級(jí)和中斷屏蔽①中斷嵌套在處理一個(gè)中斷事件時(shí),系統(tǒng)允許響應(yīng)新的中斷事件,此時(shí),就可能出現(xiàn)中斷嵌套的情況,即前一個(gè)中斷處理程序的執(zhí)行被終止,轉(zhuǎn)而執(zhí)行新的中斷處理程序。132.1.3中斷嵌套、中斷優(yōu)先級(jí)和中斷屏蔽②中斷優(yōu)先級(jí)系統(tǒng)根據(jù)中斷事件的重要性和緊迫程度,將中斷源劃分為若干個(gè)級(jí)別,稱為中斷優(yōu)先級(jí),中斷優(yōu)先級(jí)是由硬件規(guī)定的。當(dāng)有多個(gè)中斷同時(shí)發(fā)生時(shí),系統(tǒng)會(huì)根據(jù)優(yōu)先級(jí)的高低來決定響應(yīng)中斷的先后次序,即優(yōu)先響應(yīng)優(yōu)先級(jí)別高的中斷。對(duì)相同級(jí)別的中斷,則按照硬件規(guī)定的次序響應(yīng)。中斷優(yōu)先級(jí)的存在就保證了系統(tǒng)在響應(yīng)中斷時(shí),不會(huì)出現(xiàn)低優(yōu)先級(jí)的中斷打斷高優(yōu)先級(jí)中斷工作的情況。一般情況下,中斷優(yōu)先級(jí)的順序?yàn)椋河布收现袛?gt;自愿性中斷>程序性中斷>外部中斷>輸入/輸出中斷。142.1.3中斷嵌套、中斷優(yōu)先級(jí)和中斷屏蔽③中斷屏蔽某些時(shí)候,系統(tǒng)在處理低優(yōu)先級(jí)的中斷事件時(shí),并不希望它被高優(yōu)先級(jí)的中斷所打斷,那這個(gè)時(shí)候就可以借助中斷屏蔽技術(shù)來實(shí)現(xiàn)該需求。程序狀態(tài)字(PSW)中的中斷屏蔽位與一些中斷事件相對(duì)應(yīng),當(dāng)某一位有屏蔽標(biāo)志時(shí),表示屏蔽掉系統(tǒng)對(duì)相應(yīng)事件的響應(yīng)。要注意的一點(diǎn)是:自愿性中斷是不能屏蔽的。152.2中斷在操作系統(tǒng)中的地位中斷是多道程序并發(fā)執(zhí)行的推動(dòng)力在單CPU的計(jì)算機(jī)系統(tǒng)中,要使多道程序得以并發(fā)執(zhí)行,關(guān)鍵在于CPU要能在這些程序間不斷地切換,使得每道程序都有機(jī)會(huì)在CPU上運(yùn)行,從而實(shí)現(xiàn)宏觀上的并行性,而導(dǎo)致這種切換的動(dòng)力主要就是時(shí)鐘中斷。多道程序通常是按照一定的“時(shí)間片”交替的使用CPU。當(dāng)一個(gè)正在CPU上運(yùn)行的程序的“時(shí)間片”到期后,便會(huì)把CPU讓給另一個(gè)程序使用,這就是CPU的按“時(shí)間片”的切換,而“時(shí)間片”是否到期,顯然是由時(shí)鐘計(jì)時(shí)的。162.2中斷在操作系統(tǒng)中的地位操作系統(tǒng)是由中斷驅(qū)動(dòng)的操作系統(tǒng)是一個(gè)由眾多模塊組成的集合,這些模塊大致可以分為三類:第一類是在系統(tǒng)初啟之后便和用戶態(tài)程序一起主動(dòng)地參與并發(fā)執(zhí)行第二類是直接面對(duì)用戶態(tài)的程序第三類是那些既不主動(dòng)運(yùn)行、也不直接面對(duì)用戶態(tài)程序的程序172.3中斷響應(yīng)過程發(fā)現(xiàn)中斷源182.3中斷響應(yīng)過程保護(hù)和恢復(fù)現(xiàn)場(chǎng)現(xiàn)場(chǎng)是指在中斷的那一時(shí)刻能確保程序繼續(xù)運(yùn)行的有關(guān)信息。為了確保被中斷的程序能從恢復(fù)點(diǎn)繼續(xù)運(yùn)行,必須在該程序重新運(yùn)行之前,把保留的該程序的現(xiàn)場(chǎng)信息從主存中送至相應(yīng)的各個(gè)寄存器當(dāng)中,把完成這些工作稱為恢復(fù)現(xiàn)場(chǎng)。192.3中斷響應(yīng)過程中斷響應(yīng)中斷響應(yīng)是當(dāng)CPU發(fā)現(xiàn)已有中斷請(qǐng)求時(shí),終止現(xiàn)行程序的執(zhí)行,并自動(dòng)引出中斷處理程序的過程。當(dāng)發(fā)生中斷事件時(shí),中斷系統(tǒng)必須立即將程序斷點(diǎn)的現(xiàn)場(chǎng)信息存放到主存約定單元進(jìn)行保存,用于中斷返回時(shí)恢復(fù)現(xiàn)場(chǎng)使用。中斷響應(yīng)的實(shí)質(zhì)就是交換用戶程序和相應(yīng)中斷處理程序的指令執(zhí)行地址和處理器狀態(tài),以達(dá)到保存斷點(diǎn)和自動(dòng)執(zhí)行中斷處理程序的目的。202.4中斷處理過程

2.4.1中斷處理流程保護(hù)現(xiàn)場(chǎng)和傳遞參數(shù)對(duì)現(xiàn)場(chǎng)進(jìn)行保護(hù),包括對(duì)斷點(diǎn)的保護(hù)和對(duì)通用寄存器以及狀態(tài)寄存器的保護(hù)。執(zhí)行相應(yīng)的中斷服務(wù)程序針對(duì)響應(yīng)的中斷事件,執(zhí)行處理該事件的中斷服務(wù)程序?;謴?fù)現(xiàn)場(chǎng)并退出中斷執(zhí)行完中斷處理程序,系統(tǒng)要返回到之前的斷點(diǎn)處繼續(xù)執(zhí)行,所以要將先前保存的斷點(diǎn)信息重新加載進(jìn)系統(tǒng)的各個(gè)寄存器當(dāng)中,并將中斷屏蔽字還原,這一過程稱為恢復(fù)現(xiàn)場(chǎng)。21222.4.2中斷服務(wù)程序簡(jiǎn)介硬件故障中斷事件的處理由硬件故障引起的中斷,往往需要人為干預(yù)去排除故障,而操作系統(tǒng)所做的工作一般只是保護(hù)現(xiàn)場(chǎng),防止故障蔓延,并向操作員報(bào)告和提供相關(guān)故障信息。例如,當(dāng)主存的奇偶校驗(yàn)裝置發(fā)現(xiàn)主存讀寫錯(cuò)誤時(shí),便產(chǎn)生讀主存錯(cuò)的中斷事件。232.4.2中斷服務(wù)程序簡(jiǎn)介程序性中斷事件的處理處理程序性中斷事件一般有兩種方法:一是對(duì)于那些純屬程序錯(cuò)誤而又難以克服的事件,如地址越界、非管態(tài)時(shí)使用了管態(tài)指令、企圖寫入半固定存儲(chǔ)器或禁寫區(qū)等,操作系統(tǒng)只能將出錯(cuò)的進(jìn)程名、出錯(cuò)地址和錯(cuò)誤性質(zhì)報(bào)告給操作員,請(qǐng)求干預(yù);二是對(duì)于其它一些程序性中斷事件,如溢出、跟蹤等,不同的用戶往往有不同的要求,所以,操作系統(tǒng)可以將這些程序性中斷事件交給用戶自行處理。242.4.2中斷服務(wù)程序簡(jiǎn)介外部中斷事件的處理外部中斷是由外部非通道式裝置所引起的中斷,包括有時(shí)鐘中斷、操作員控制臺(tái)中斷、多機(jī)系統(tǒng)中CPU到CPU的通信中斷等。輸入/輸出中斷事件的處理輸入/輸出中斷主要是指外部設(shè)備中斷,一般可分為傳輸結(jié)束中斷、傳輸錯(cuò)誤中斷和設(shè)備故障中斷。訪管中斷事件的處理252.5向量中斷當(dāng)中斷發(fā)生時(shí),由中斷源引起CPU進(jìn)入中斷服務(wù)程序的中斷過程稱為向量中斷。為了提高中斷處理的速度,在向量中斷中,對(duì)每一個(gè)中斷類型都設(shè)置一個(gè)中斷向量。中斷向量包括該類中斷的中斷服務(wù)程序的入口地址和處理器狀態(tài)字(PSW)。系統(tǒng)中所有不同類型中斷的中斷向量集中存放在一起,形成中斷向量表。在中斷向量表中,存放每一個(gè)中斷向量的地址稱為中斷向量地址。262.5向量中斷圖2.6集中在CPU內(nèi)的向量地址形成部件272.5向量中斷圖2.7向量中斷處理28小結(jié)中

溫馨提示

  • 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. 人人文庫(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)論