計算機操作系統(tǒng)ch2.ppt_第1頁
計算機操作系統(tǒng)ch2.ppt_第2頁
計算機操作系統(tǒng)ch2.ppt_第3頁
計算機操作系統(tǒng)ch2.ppt_第4頁
計算機操作系統(tǒng)ch2.ppt_第5頁
已閱讀5頁,還剩52頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、計算機操作系統(tǒng),Operating System of Computer,第二章 操作系統(tǒng)的硬件環(huán)境,主要內容: 個人計算機的組成 中央處理器(CPU) 存儲系統(tǒng) 中斷機制 時鐘 知識點及要求: 學習本章的目的是了解OS的基礎硬件環(huán)境。,2.1 概述,任何系統(tǒng)軟件都是硬件功能的延伸 操作系統(tǒng)直接依賴于硬件條件 硬件環(huán)境以較分散的形式同各種管理相結合,簡單的個人計算機中的部件,Monitor,Bus,2.2 中央處理器(CPU),具有特權級別的處理器狀態(tài),能在不同特權級運行各種特權指令 硬件機制使得OS可以和普通程序隔離實現(xiàn)保護和控制,CPU的構成與基本工作方式,處理器由運算器、控制器、一系列的

2、寄存器以及高速緩存構成 運算器實現(xiàn)指令中的算術和邏輯運算,是計算機計算的核心 控制器負責控制程序運行的流程,包括取指令、維護CPU狀態(tài)、CPU與內存的交互等等,寄存器是指令在CPU內部作處理的過程中暫存數(shù)據(jù)、地址以及指令信息的存儲設備; 在計算機的存儲系統(tǒng)中它具有最快的訪問速度。 高速緩存處于CPU和物理內存之間,一般由控制器中的內存管理單元(MMU:Memory Management Unit)管理,訪問速度快于內存,低于寄存器。 利用程序局部性原理使得高速指令處理和低速內存訪問得以匹配,從而提高CPU的效率。,處理器中的寄存器,寄存器提供了一定的存儲能力 速度比主存快得多 造價高,容量一般

3、都很小 兩類寄存器: 用戶可見寄存器,高級語言編譯器通過算法分配并使用之,以減少程序訪問主存次數(shù) 控制和狀態(tài)寄存器,用于控制處理器的操作 由OS的特權代碼使用, 以控制其它程序的執(zhí)行,用戶可見寄存器,機器語言(匯編語言)直接引用 包括數(shù)據(jù)寄存器、地址寄存器等 數(shù)據(jù)寄存器(data register)又稱通用寄存器 地址寄存器(address register)用于存儲數(shù)據(jù)及指令的物理地址。如index register、segment pointer、stack pointer,控制和狀態(tài)寄存器,用于控制處理器的操作 大部分對于用戶是不可見的 一部分可以在某種特權模式(由OS使用)下訪問 常見

4、的控制和狀態(tài)寄存器: 程序計數(shù)器(PC:Program Counter),記錄將要取出的指令的地址 指令寄存器(IR:Instruction Register),包含最近取出的指令 程序狀態(tài)字(PSW:Program Status Word),記錄處理器的運行模式信息等等,指令執(zhí)行的基本過程(1),兩個步驟: 先從存儲器中每次讀取一條指令 然后執(zhí)行這條指令 一個單條指令處理過程稱為一個指令周期 程序的執(zhí)行是由不斷取指和執(zhí)行的指令周期組成,指令執(zhí)行的基本過程(2),每個指令周期開始時,依據(jù)在程序計數(shù)器中的指令地址從存儲器中取一條指令 在取指完成后根據(jù)指令類別自動將程序計數(shù)器的值變成下條指令的地址

5、 取到的指令放在指令寄存器(IR)中 處理器解釋并執(zhí)行所要求的動作,5類指令,訪問存儲器指令: 處理器和存儲器間數(shù)據(jù)傳送 I/O指令: 處理器和I/O設備間數(shù)據(jù)傳送和命令發(fā)送 算術邏輯指令(數(shù)據(jù)處理指令): 執(zhí)行數(shù)據(jù)算術和邏輯操作 控制轉移指令: 指定一個新的指令的執(zhí)行起點 處理器控制指令: 修改處理器狀態(tài),改變處理器工作方式,特權指令和非特權指令,特權指令:只能由操作系統(tǒng)使用的指令 使用多道程序設計技術的計算機指令系統(tǒng)必須要區(qū)分為特權指令和非特權指令 CPU如何知道當前運行的是操作系統(tǒng)還是一般應用軟件?有賴于處理器狀態(tài),處理器的狀態(tài),根據(jù)運行程序對資源和機器指令的使用權限將處理器設置為不同狀

6、態(tài) 多數(shù)系統(tǒng)將處理器工作狀態(tài)劃分為管態(tài)和目態(tài) 管態(tài):操作系統(tǒng)管理程序運行的狀態(tài),較高的特權級別,又稱為特權態(tài)(特態(tài))、系統(tǒng)態(tài) 、核心態(tài) 目態(tài):用戶程序運行時的狀態(tài),較低的特權級別,又稱為普通態(tài)(普態(tài))、用戶態(tài) 有些系統(tǒng)將處理器狀態(tài)劃分核心狀態(tài),管理狀態(tài)和用戶程序狀態(tài)(目標狀態(tài))三種,實例:x86系列處理器,386、486、Pentium系列都支持4個處理器特權級別(特權環(huán):R0、R1、R2和R3) 從R0到R3特權能力依次降低 R0相當于雙狀態(tài)系統(tǒng)的管態(tài) R3相當于目態(tài) R1和R2則介于兩者之間,它們能夠運行的指令集合具有包含關系:,四個級別運行不同類別的程序,R0-運行操作系統(tǒng)核心代碼 R1

7、-運行關鍵設備驅動程序和I/O處理例程 R2-運行其它受保護共享代碼,如語言系統(tǒng)運行環(huán)境 R3-運行各種用戶程序 現(xiàn)有基于x86處理器的操作系統(tǒng),如UNIX、Linux以及Windows系列大都只用了R0和R3兩個特權級別,管態(tài)和目態(tài)的差別,處理器處于管態(tài)時: 全部指令(包括特權指令)可以執(zhí)行 可使用所有資源 并具有改變處理器狀態(tài)的能力 處理器處于目態(tài)時: 只有非特權指令能執(zhí)行,程序狀態(tài)字PSW,PSW (Program Status Word ): CPU的狀態(tài)指明管態(tài)還是目態(tài),用來說明當前在CPU上執(zhí)行的是操作系統(tǒng)還是一般用戶程序,從而決定其是否可以使用特權指令或擁有其它的特殊權力 條件碼

8、反映指令執(zhí)行后的結果特征 中斷屏蔽碼指出是否允許中斷,例1:微處理器M68000的程序狀態(tài)字,條件位: C: 進位標志位 V: 溢出標志位 Z: 結果為零標志位N: 結果為負標志位 I0 I2:三位中斷屏蔽位 S:CPU狀態(tài)標志位,為1處于管態(tài),為0處于目態(tài) T:陷阱(Trap)中斷指示位為1, 在下一條指令執(zhí)行后引起自陷中斷,CPU狀態(tài)的轉換,目態(tài)-管態(tài) 其轉換的唯一途徑是通過中斷 管態(tài)-目態(tài) 可用設置PSW(修改程序狀態(tài)字)可實現(xiàn),2.3 存儲系統(tǒng),支持OS運行硬件環(huán)境的一個重要方面: 作業(yè)必須把它的程序和數(shù)據(jù)存放在內存中才能運行 多道程系統(tǒng)中,若干個程序和相關的數(shù)據(jù)要放入主存儲器 操作系

9、統(tǒng)要管理、保護程序和數(shù)據(jù),使它們不至于受到破壞 操作系統(tǒng)本身也要存放在主存儲器中并運行,存儲器的類型,兩類存儲器:讀寫型的存儲器 只讀型的存儲器 讀寫型的存儲器 可把數(shù)據(jù)存入其中任一地址單元,并可在以后的任何時候把數(shù)據(jù)讀出,或者重新存入新的數(shù)據(jù)的一種存儲器 常被稱為隨機訪問存儲器(RAM:Random Access Memory) RAM主要用作存放隨機存取的程序的數(shù)據(jù),只讀型的存儲器: 只能從其中讀取數(shù)據(jù),但不能隨意用普通方法寫入數(shù)據(jù)(寫入數(shù)據(jù)只能用特殊方法) 稱為只讀存儲器(ROM:Read-Only Memory) 變型:PROM和EPROM PROM:一種可編程只讀存儲器,使用特殊PR

10、OM寫入器寫入數(shù)據(jù) EPROM:用特殊的紫外線光照射此芯片,以“擦去”信息,恢復原來狀態(tài),然后使用特殊EPROM寫入器寫入數(shù)據(jù) 在微機中,一些常駐內存的模塊以微程序形式固化在ROM中 如:PC BIOS和CBASIC解釋程序被固化于ROM中,存儲器的層次結構,存儲系統(tǒng)設計三個問題: 容量、速度和成本 容量:需求無止境 速度:能匹配處理器的速度 成本問題:成本和其它部件相比應在合適范圍之內,容量、速度和成本 三個目標不可能同時達到最優(yōu),要作權衡 存取速度快,每比特價格高 容量大,每比特價格越低,同時存取速度也越慢 解決方案:采用層次化的存儲體系結構 當沿著層次下降時 每比特的價格將下降,容量將增

11、大 速度將變慢,處理器的訪問頻率也將下降,層次化的存儲體系結構,存儲訪問局部性原理,提高存儲系統(tǒng)效能關鍵點:程序存儲訪問局部性原理 程序執(zhí)行時,有很多的循環(huán)和子程序調用,一旦進入這樣的程序段,就會重復存取相同的指令集合 對數(shù)據(jù)存取也有局部性,在較短的時間內,穩(wěn)定地保持在一個存儲器的局部區(qū)域 處理器主要和存儲器的局部打交道 在經(jīng)過一段時間以后,使用的代碼和數(shù)據(jù)集合會改變,2.4 中斷技術,中斷對于操作系統(tǒng)的重要性 就像機器中的驅動齒輪一樣 所以有人把操作系統(tǒng)稱為是由 “中斷驅動”或者 “(中斷)事件驅動”,中斷機制,中斷機制是操作系統(tǒng)得以正常工作的最重要的手段 它使得OS可以捕獲普通程序發(fā)出的系

12、統(tǒng)功能調用 及時處理設備的中斷請求 防止用戶程序中破壞性的活動等等,2.4.1 中斷的概念,什么是中斷? 指CPU對系統(tǒng)中或系統(tǒng)外發(fā)生異步事件的響應 異步事件是指無一定時序關系的隨機發(fā)生事件 如外部設備完成數(shù)據(jù)傳輸,實時設備出現(xiàn)異常等 “中斷”名稱源于: 當異步事件發(fā)生后,打斷了對當前程序的執(zhí)行 而轉去處理該異步事件 直到處理完了后,再轉回原程序中斷點繼續(xù)執(zhí)行,從用戶角度看中斷,引入中斷的目的,解決主機與外設的并行工作問題 提高可靠性 實現(xiàn)多機聯(lián)系 實現(xiàn)實時控制 特點: 1) 中斷是隨機的 2) 中斷是可恢復的 3) 中斷是自動處理的,幾個概念,中斷源:引起中斷發(fā)生的事件 中斷寄存器:記錄中斷

13、 中斷字:中斷寄存器的內容 系統(tǒng)堆棧:在內存開辟的一塊區(qū)域,用于臨時保存現(xiàn)場,中斷類型,強迫性中斷 正在運行的程序所不期望的,由于某種硬件故障或外部請求引起的 自愿性中斷 用戶在程序中有意識安排的中斷,是由于用戶在編制程序時因為要求操作系統(tǒng)提供服務,有意使用“訪管”指令或系統(tǒng)調用,使中斷發(fā)生,強迫性中斷,輸入/輸出(I/O)中斷:主要來自外部設備通道 程序性中斷:運行程序中本身的中斷 (如溢出,缺頁中斷,缺段中斷,地址越界) 時鐘中斷 控制臺中斷 硬件故障,自愿性中斷,執(zhí)行I/O,創(chuàng)建進程,分配內存 信號量操作,發(fā)送/接收消息,微機中的中斷,1.可屏蔽中斷(I/O中斷) 2.不可屏蔽中斷(機器

14、內部故障、掉電中斷) 3.程序錯誤中斷(溢出、除法錯等中斷) 4.軟件中斷(Trap指令或中斷指令INT),2.4.2 中斷系統(tǒng),中斷系統(tǒng)的兩大組成部分:硬件中斷裝置和軟件中斷處理程序 中斷系統(tǒng)的硬件中斷裝置-中斷系統(tǒng)的機制部分 負責捕獲中斷源發(fā)出的中斷請求,以一定方式響應中斷源,然后將處理器控制權交給特定的中斷處理程序 軟件中斷處理程序-中斷系統(tǒng)的策略部分 負責辨別中斷類型并做出相應的操作,2.4.3 中斷裝置的基本功能,提供識別中斷源的方法 提供查詢中斷狀態(tài)的方法,通常使用一個寄存器存儲有關中斷的狀態(tài)信息,稱為中斷字 提供中斷現(xiàn)場保護的能力 提供中斷處理程序尋址能力,找到恰當?shù)闹袛嗵幚沓绦?/p>

15、 具有預定義的系統(tǒng)控制棧和中斷處理程序入口地址映射表(中斷向量表)等數(shù)據(jù)結構和它們在主存中的位置,以輔助OS定制中斷處理策略和中斷調度機制,中斷寄存器,中斷寄存器: 有的計算機中,為了區(qū)分和不丟失中斷信號 對應每個中斷源分別用一固定觸發(fā)器寄存中斷信號 規(guī)定值為1時,表示有中斷信號,為0時表示無 這些觸發(fā)器的全體稱為中斷寄存器 每個觸發(fā)器稱為一個中斷位 所以中斷寄存器是由若干個中斷位組成,發(fā)現(xiàn)中斷,處理器如何發(fā)現(xiàn)中斷信號? 處理器的控制部件中設一個能檢測中斷的機構 稱為中斷掃描機構 在每條指令執(zhí)行周期的最后時刻掃描中斷寄存器,詢問是否有中斷信號 若無中斷信號,繼續(xù)執(zhí)行下一條指令 若有中斷,中斷硬

16、件就進行中斷響應,2.4.4 中斷響應,CPU如何響應中斷, 兩個問題: CPU何時響應中斷? 通常在CPU執(zhí)行了一條指令以后,更確切地,在指令周期最后時刻接受中斷請求,或此時掃描中斷寄存器 如何知道提出中斷請求的設備或中斷源? 因為只有知道中斷源或中斷設備,才能調用相應的中斷處理程序,兩種解決方法,用軟件指令去查詢各設備接口 這種方法比較費時 多數(shù)微型機對此問題的解決方法: 使用一種“向量中斷”的硬件設施 “向量中斷”: 當CPU接受某中斷請求時,該設備接口給處理器發(fā)送具有唯一性的“中斷向量”,以標識該設備 “中斷向量”在各計算機上實現(xiàn)方法差別比較大,中斷向量表,在有的機器中: 將主存最低位

17、128個字保留作為中斷向量表,每個中斷向量占兩個字 中斷請求的設備接口為了標識自己,向處理器發(fā)送一個該設備在中斷向量表中表目的編號,中斷優(yōu)先級,在一些機器中,中斷優(yōu)先級按中斷類型劃分: 以機器故障中斷的優(yōu)先級最高 程序中斷和訪問管理程序中斷次之 外部中斷更次之 輸入輸出的優(yōu)先級最低,中斷屏蔽,在CPU上運行的程序,有時由于種種原因,不希望其在執(zhí)行過程中被別的事件所中斷,稱為中斷屏蔽 在PSW中設置中斷屏蔽碼以屏蔽某些指定的中斷類型 各設備接口中也有中斷禁止位,以禁止該設備的中斷,2.4.5 中斷處理,中斷處理一般過程: (1)設備給處理器發(fā)一個中斷信號。 (2)處理器處理完當前指令后檢測到中斷

18、,判斷出中斷來源并向發(fā)送中斷的設備發(fā)送了確認中斷信號,確認信號使得該設備將中斷信號恢復到一般狀態(tài)。 (3)處理器開始為軟件處理中斷做準備: 保存中斷點的程序執(zhí)行上下文環(huán)境,這通常包括程序狀態(tài)字PSW,程序計數(shù)器PC,一些寄存器的值,它們通常保存在系統(tǒng)棧中,處理器狀態(tài)被切換到管態(tài)。,(4)處理器根據(jù)中斷源查詢中斷向量表,獲得與該中斷相聯(lián)系的處理程序入口地址,并將PC置成該地址,處理器開始一個新的指令周期,控制轉移到中斷處理程序 (5)中斷處理程序開始工作 (6)中斷處理結束時,執(zhí)行中斷返回指令,被中斷程序的上下文環(huán)境從系統(tǒng)堆棧中被恢復,處理器狀態(tài)恢復成原來的狀態(tài)。 (7)PSW和PC被恢復成中斷前的值,處理器開始一個新的指令周期,中斷處理結束,中斷系統(tǒng)硬件完成的工作,中斷系統(tǒng)軟件完成的工作,2.5 時鐘,時鐘為計算機完成以下必不可少的工作: 在多道程序運行環(huán)境中,為系統(tǒng)發(fā)現(xiàn)陷入死循環(huán)(編程錯誤)的作業(yè),防止機時的浪費 在分時系統(tǒng)中,間隔時鐘實現(xiàn)作業(yè)間按時間片輪轉 在實時系統(tǒng)中,按要求的間隔輸出正確時間信號給實時的控制設備(如AD、D/A轉換設備) 定時喚醒要求延遲執(zhí)行的各外部事件(如定時為

溫馨提示

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

評論

0/150

提交評論