版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第8章設備管理8.1引言8.2數據傳送控制方式8.3中斷技術8.4緩沖技術8.5設備分配8.6I/O進程控制8.7設備驅動程序
文件系統的主要功能有哪些?邏輯文件發能為幾類?物理文件有幾類?優缺點?成組塊鏈的分配過程(示意圖)?磁盤結構中的物理塊通常使用哪些參數描述?
根據磁盤結構特點,如何訪問磁盤速率較高?思考題
I/O設備的特點
1)I/O性能經常成為系統性能的瓶頸
CPU性能不等于系統性能;
響應時間也是一個重要因素
CPU性能越高,與I/O差距越大; 彌補:多進程并發執行進程切換多,系統開銷大;
2)OS中設備資源多、雜,并發性受I/O影響大外設種類繁多,結構各異;輸入輸出數據信號類型不同;速度差異很大;8.1引言
I/O設備的特點
3)理解I/O的工作過程與結構是理解操作系統的工作過程與結構的關鍵。
4)與其他功能聯系密切,特別是文件系統8.1引言
設備分類
1)按使用特性分:存儲型設備輸入型設備(外設主機)輸出型設備(主機外設)
輸入輸出型設備(交互型設備)
2)按數據組織分
塊設備:以數據塊為單位存儲、傳輸信息,如磁盤、磁帶等;
字符設備:以字符為單位存儲、傳輸信息,鍵盤、終端、打印機;8.1引言
設備分類
3)按資源分配角度分
獨占設備在一段時間內只能有一個進程使用的設備,一般為低速I/O設備(如打印機,磁帶等);共享設備在一段時間內可有多個進程共同使用的設備,多個進程以交叉的方式來使用設備,其資源利用率高(如硬盤);8.1引言
設備分類
4)按設備的從屬關系系統設備系統設備是指那些在操作系統生成時就已配置好的各種標準設備。例如:鍵盤、打印機以及文件存儲設備等。用戶設備用戶設備則是那些在系統生成時沒有配置,而由用戶自己安裝配置后由操作系統統一管理的設備。例如,網絡系統中的各種網板、圖像處理系統的圖像設備等。8.1引言
設備分類
4)從程序使用角度分邏輯設備、物理設備
5)按數據傳輸率分高速設備、低速設備8.1引言8.1引言
設備管理的功能和任務(1)選擇和分配設備;(2)控制設備和CPU(或內存)之間交換數據;(3)為用戶提供友好的透明接口,便于用戶使用;(4)保證在多道程序環境下,當多個進程競爭使用設備時,按一定策略分配和管理各種設備,使系統能有條不紊的工作。(5)保護設備傳送或管理的數據應該是安全的、不被破壞的、保密的8.1引言
設備管理的主要任務之一是控制設備和內存或CPU之間的數據傳送。選擇和衡量控制方式有如下幾條原則:
(1)數據傳送速度足夠高;
(2)系統開銷小,所需的處理控制程序少;
(3)能充分發揮硬件資源的能力,使得I/O設備盡量忙,而CPU等待時間少。8.2數據傳送方式
外圍設備和內存之間的常用數據傳送控制方式有4種。即:
(1)程序直接控制方式;
(2)中斷控制方式;
(3)DMA方式;
(4)通道方式。8.2數據傳送方式
程序直接控制方式由用戶進程來直接控制內存或CPU和外圍設備之間的信息傳送。這種方式的控制者是用戶進程。當用戶進程需要傳輸數據時,它通過CPU發出啟動設備命令,然后,用戶進程進入測試等待狀態,直到相應設備空閑,且準備好,即開始傳輸數據。8.2數據傳送方式
程序直接控制方式優點:控制簡單,不需要多少硬件支持;
缺點:(1)CPU和外圍設備串行工作,CPU利用率低;(2)CPU只能和一臺外圍設備交換數據信息,從而不能實現設備之間的并行工作;(3)由于程序直接控制方式依靠測試設備標志觸發器的狀態位來控制數據傳送,因此無法發現和處理由于設備或其他硬件所產生的錯誤。因此,該方式只適用于CPU速度慢,外圍設備較少的系統。8.2數據傳送方式中斷方式為了減少程序直接控制方式中CPU等待時間以及提高系統的并行工作程度,中斷(interrupt)方式被用來控制外圍設備和內存與CPU之間的數據傳送。這種方式要求CPU與設備(或控制器)之間有相應的中斷請求線,且在設備控制器的控制狀態寄存器中保存中斷允許位。數據的輸入步驟:
(1)進程通過CPU發出啟動外圍設備準備數據指令,同時將中斷允許位置1,以便在需要時,中斷程序可以被調用執行。8.2數據傳送方式8.2數據傳送方式中斷方式
(2)在進程發出指令啟動設備之后,該進程放棄處理機,等待輸入完成。
(3)當輸入完成時,I/O控制器通過中斷請求線向CPU發出中斷信號。CPU在接收到中斷信號之后,轉向中斷處理程序對數據進行處理。
(4)進程調度選中該進程后,該進程即從約定的內存特定單元中取出數據繼續工作。中斷控制方式的處理過程:8.2數據傳送方式8.2數據傳送方式中斷方式優點:中斷方式支持多道程序和設備的并行操作,提高CPU利用率缺點:(1)中斷發生在I/O設備數據緩沖器裝滿數據時,而數據緩沖器通常較小,因此,一次數據傳送發生中斷次數較多,將耗去大量CPU處理時間。(2)如果很多設備通過中斷處理方式進行并行操作,則OS可能由于中斷次數急劇增加而造成CPU無法響應中斷和出現數據丟失現象。(3)如果外圍設備速度較高,可能造成數據緩沖器的數據由于CPU來不及取走而丟失。8.2數據傳送方式
DMA(DirectMemoryAccess)又稱直接存取方式。基本思想是在外圍設備和內存之間開辟直接的數據交換通路。在DMA方式中,I/O控制器具有比中斷方式和程序直接控制方式時更強的功能。
DMA方式采用竊取或挪用系統的總線控制權把數據直接送到內存。即,DMA控制器可用來代替CPU控制內存和設備之間進行成批的數據交換。8.2數據傳送方式DMA方式
DMA方式除了在數據塊傳送開始時需要CPU的啟動指令和在整個數據塊傳送結束時需發中斷通知CPU進行中斷處理之外,不再像中斷控制方式時那樣需要CPU的頻繁干涉。DMA方式的數據輸入處理過程如下:(1)當進程輸入數據時,CPU把內存始址和要傳送的字節數送入DMA控制器;中斷允許位和啟動位置1;從而啟動設備開始進行數據輸入。8.2數據傳送方式圖8.5DMA方式的傳送結構8.2數據傳送方式
DMA方式
(2)發出數據要求的進程進入等待狀態,進程調度程序調度其他進程占據CPU。
(3)輸入設備不斷地挪用CPU工作周期,直到所要求的字節全部傳送完畢。
(4)DMA控制器在傳送字節數完成時通過中斷請求線發出中斷信號,CPU在接收到中斷信號后轉中斷處理程序進行善后處理。
(5)中斷處理結束時,CPU返回被中斷進程處執行或被調度到新的進程上下文環境中執行。DMA方式的處理過程如圖8.6所示。8.2數據傳送方式8.2數據傳送方式
DMA方式
DMA方式與中斷方式的主要區別:(1)中斷方式時是在數據緩沖寄存器滿之后發中斷要求CPU進行中斷處理,而DMA方式則是在所要求轉送的數據塊全部傳送結束時要求CPU進行中斷處理。減少了CPU進行中斷處理的次數。(2)中斷方式的數據傳送由CPU控制完成,而DMA方式是在DMA控制器的控制下完成的。這就排除了因并行操作設備過多時CPU來不及處理或因速度不匹配而造成數據丟失等現象。8.2數據傳送方式
DMA方式優點:減少了中斷次數,DMA控制器與CPU并行,避免了設備緩沖器中的數據丟失問題;缺點:(1)DMA方式對外圍設備的管理和某些操作仍由CPU控制。(2)功能較差,不能滿足復雜的I/O要求。因此,大中型計算機系統中除了設置DMA器件,還設置專門的硬件裝置—通道。8.2數據傳送方式通道控制方式通道又稱輸入輸出處理器,它能完成主存儲器和外圍設備之間的信息傳送,與中央處理器并行地執行操作。此外,外圍設備和中央處理器能實現并行操作;通道和通道之間能實現并行操作;各通道上的外圍設備也能實現并行操作,以達到提高整個系統效率這一根本目的。(優點)8.2數據傳送方式
通道控制方式具有通道裝置計算機的主機、通道、控制器和設備之間采用四級連接,實施三級控制。通常,一個中央處理器可以連接若干通道,一個通道可以連接若干控制器,一個控制器可以連接若干臺設備。中央處理器執行輸入輸出指令對通道實施控制,通道執行通道命令(CCW)對控制器實施控制,控制器發出動作序列對設備實施控制,設備執行相應的輸入輸出操作。8.2數據傳送方式
通道控制方式輸入輸出過程如下:(1)CPU遇到IO請求,啟動指定通道上的外設;(2)通道啟動成功,通道進行IO操作;(3)此時,CPU與通道并行工作;(4)IO結束,通道發出中斷請求;(5)CPU響應請求,處理IO操作結束事件。(6)中斷處理結束后,CPU調度進程運行。8.2數據傳送方式
通道控制方式通道分類:按照信息交換方式和加接設備種類不同,通道可分為三種類型:(1)字節多路通道。連接大量慢速外圍設備,如軟盤機、紙帶機、卡片機等。以字節為單位交叉地為多個設備輪流服務。(2)選擇通道。它用于連接高速磁帶機和磁盤機等設備。選擇通道在一段時間內只能執行一個通道程序,選擇一臺設備進行數據傳輸,傳輸完成后再選擇另一設備。8.2數據傳送方式
通道控制方式通道分類:(3)數組多路通道。對于磁盤類似設備,雖然傳輸時間短,但移臂定位時間長。使用選擇通道在移臂時間內,通道只能空等。數組多路通道則先為一臺設備執行一條通道命令,然后再為另一臺設備執行一條通道命令。對于若干臺磁盤機,可以按次序交叉傳輸一批批信息,這樣就避免了移臂操作過長地占用通道。數組多路通道的實質是:對通道程序采用多道程序設計技術的硬件實現。8.2數據傳送方式8.2數據傳送方式8.2數據傳送方式
中斷的概念中斷(Interrupt)是指計算機在執行期間,系統內發生任何非尋常的或非預期的急需處理事件,使得CPU暫時中斷當前正在執行的程序而轉去執行相應的事件處理程序,待處理完畢后又返回原來被中斷處繼續執行或調度新的進程執行的過程。引起中斷發生的事件被稱為中斷源。中斷源向CPU發出的請求中斷處理信號稱為中斷請求,而CPU收到中斷請求后轉相應的事件處理程序稱為中斷響應。8.3中斷技術系統允許CPU響應中斷稱為禁止中斷。禁止中斷也稱為關中斷,PSW的中斷允許位的設置也被稱為開中斷。中斷請求、關中斷、開中斷等都由硬件實現。其中開中斷和關中斷是操作原語。中斷屏蔽是指在中斷請求產生之后,系統用軟件方式有選擇地封鎖部分中斷而允許其余部分的中斷仍能得到響應。8.3中斷技術
中斷的分類與優先級操作系統一般對中斷進行分類并對不同的中斷賦予不同的處理優先級,以便在不同的中斷同時發生時,按輕重緩急進行處理。根據中斷源產生的條件,可把中斷分為外中斷和內中斷。
外中斷指來自處理機和內存外部的中斷,包括I/O中斷、外部信號中斷、時鐘中斷、調試中斷等。外中斷在狹義上一般被稱為中斷。8.3中斷技術中斷的分類與優先級內中斷主要指在處理機和內存內部產生的中斷。內中斷一般稱為陷阱(trap)。它包括程序運算引起的各種錯誤,如地址非法、校驗錯、頁面失效、存取訪問控制錯、算術操作溢出、數據格式非法、除數為零、非法指令、用戶程序執行系統調用指令、分時系統中的時間片中斷以及從用戶態到核心態的切換等都是陷阱的例子。8.3中斷技術
中斷和陷阱的區別
(1)陷阱由處理機正在執行的現行指令引起,而中斷則是由與現行指令無關的中斷源引起的。
(2)陷阱處理程序提供的服務為當前進程所用,而中斷處理程序的服務則不是為了當前進程的。
(3)CPU在執行完一條指令之后,下一條指令開始之前響應中斷,而在一條指令執行中也可以響應陷阱。8.3中斷技術軟中斷中斷和陷阱都可以看作是硬中斷,因為這些中斷和陷阱要通過硬件產生相應的中斷請求。軟中斷是通信進程之間用來模擬硬中斷的一種信號通信方式。相同:其中斷源發中斷請求或軟中斷信號后,CPU或接收進程在適當的時機自動進行中斷處理或完成軟中斷信號所對應的功能。8.3中斷技術中斷處理過程一旦CPU響應中斷,轉入中斷處理程序,系統就開始進行中斷處理。
(1)CPU檢查響應中斷的條件是否滿足:有中斷請求、CPU允許中斷。
(2)如果CPU響應中斷,則CPU關中斷,使其進入不可再次響應中斷的狀態。
(3)保存被中斷進程現場。必須保存處理機狀態字PSW和程序計數器PC等的值。8.3中斷技術中斷處理過程
(4)分析中斷原因,調用中斷處理子程序。
(5)執行中斷處理子程序。
(6)退出中斷,恢復被中斷進程的現場或調度新進程占據處理機。
(7)開中斷,CPU繼續執行。8.3中斷技術
緩沖的引入(1)匹配外設與CPU之間的處理速度;(2)減少中斷次數和CPU的中斷處理時間;(3)解決DMA或通道方式時的瓶頸問題;為此,在設備管理中引入了用來暫存數據的緩沖技術。硬緩沖:在設備中設置緩沖區,由硬件實現。軟緩沖:在內存中開辟一個空間,用作緩沖區。8.4緩沖技術
緩沖的種類根據系統設置的緩沖器的個數,可把緩沖技術分為單緩沖、雙緩沖和多緩沖以及緩沖池幾種。單緩沖是在設備和處理機之間設置一個緩沖器。設備和處理機交換數據時,先把被交換數據寫入緩沖器,然后,需要數據的設備或處理機從緩沖器取走數據。由于緩沖器屬于臨界資源,即不允許多個進程同時對一個緩沖器操作,因此,設備和設備之間不能通過單緩沖達到并行操作。8.4緩沖技術緩沖的種類解決兩臺外設、打印機和終端之間的并行操作問題的辦法是設置雙緩沖。有了兩個緩沖器之后,CPU可把輸出到打印機的數據放入其中一個緩沖器(區),讓打印機慢慢打印;然后,它又可以從另一個為終端設置的緩沖器(區)中讀取所需要的輸入數據。8.4緩沖技術
緩沖的種類現代計算機系統中一般使用多緩沖或緩沖池結構。多緩沖是把多個緩沖區連接起來組成兩部分,一部分專門用于輸入,另一部分專門用于輸出的緩沖結構。緩沖池則是把多個緩沖區連接起來統一管理,既可用于輸入又可用于輸出的緩沖結構。顯然,無論是多緩沖,還是緩沖池,由于緩沖器是臨界資源,在使用緩沖區時都有一個申請、釋放和互斥的問題。8.4緩沖技術
緩沖池的結構緩沖池由多個緩沖區組成。而一個緩沖區由兩部分組成:一部分是用來標識該緩沖器和用于管理的緩沖首部,另一部分是用于存放數據的緩沖體。這兩部分有一一對應的映射關系。對緩沖池的管理是通過對每一個緩沖器的緩沖首部進行操作實現的。緩沖首部包括設備號、設備上的數據塊號(塊設備時)、互斥標識位以及緩沖隊列連接指針和緩沖器號等。8.4緩沖技術緩沖池的結構系統把各緩沖區按其使用狀況連成三種隊列:(1)空白緩沖隊列em,其隊首指針為F(em),隊尾指針為L(em);(2)裝滿輸入數據的輸入緩沖隊列in,其隊首指針為F(in),隊尾指針為L(in);(3)裝滿輸出數據的輸出緩沖隊列out,其隊首指針為F(out),隊尾指針為L(out)。8.4緩沖技術圖8.10緩沖區隊列8.4緩沖技術
緩沖池的結構除了三種緩沖隊列之外,申請并獲得、處于正在使用的緩沖器稱為工作緩沖區。在緩沖池中,有4種工作緩沖區,即:(1)用于收容設備輸入數據的收容輸入緩沖區hin;(2)用于提取設備輸入數據的提取輸入緩沖區sin;(3)用于收容CPU輸出數據的收容輸出緩沖區hout;(4)用于提取CPU輸出數據的提取輸出緩沖區sout。8.4緩沖技術圖8.11緩沖池的工作緩沖區8.4緩沖技術概念當某進程向系統提出I/O請求時,設備分配程序按一定策略分配設備、控制器和通道,形成一條數據傳輸通路,以供主機和設備間信息交換。8.5設備分配
設備獨立性通常用戶不指定特定的設備,而指定邏輯設備,使得用戶作業和物理設備獨立開來,再通過其他途徑建立邏輯設備和物理設備之間的對應關系,稱設備的這種特性為“設備獨立性”。優點:用戶應用程序與物理設備無關,系統增減或變更物理設備時程序不必修改;易于對付輸入輸出設備的故障;提高了系統的可靠性,增加了外圍設備分配的靈活性,能更有效地利用外圍設備資源,實現多道程序設計技術。8.5設備分配數據結構(1)系統設備表SDT(2)設備控制塊DCB(設備控制表DCT)(3)通道控制塊CHCB(通道控制表CHCT)(4)控制器控制塊COCB(控制器控制表COCT)8.5設備分配
數據結構
1、系統設備表SDT
整個系統一張表,記錄系統中所有I/O設備的信息,為每個物理設備設一表項。表目包括:設備類型、設備標識符、進程標識符、DCT表指針等。
2、設備控制表DCT
每個物理設備一張表,包括設備類型、設備標識符、設備狀態、與此設備相連的COCT、等待隊列的隊首和隊尾指針、I/O程序地址等。設備表8.5設備分配
數據結構
3、控制器表COCT(COntrolerControlTable)
每個控制器一張,它反映I/O控制器的使用狀態以及和通道的連接情況等。
4、通道控制表CHCT(CHannelControlTable)
每個通道一張。包括通道標識符、通道忙/閑標識、等待獲得該通道的進程等待隊列的隊首指針與隊尾指針等;顯然,一個進程只有獲得了通道、控制器和所需設備三者之后,才具備了進行I/O操作的物理條件。8.5設備分配圖8.12數據結構表8.5設備分配設備分配的原則設備分配的總原則是既要充分發揮設備的使用效率,盡可能的讓設備忙,但又要避免由于不合理的分配方法造成進程死鎖;另外還要做到把用戶程序和具體物理設備隔離開來,即用戶程序面對的是邏輯設備,而分配程序將在系統把邏輯設備轉換成物理設備之后,再根據要求的物理設備號進行分配。8.5設備分配設備分配的原則
靜態分配方式是在用戶作業開始執行之前,由系統一次分配該作業所要求的全部設備、控制器和通道。靜態分配方式不會出現死鎖,但設備的使用效率低。
動態分配在進程執行過程中通過系統調用命令向系統提出設備請求.動態分配方式有利于提高設備的利用率,但如果分配算法使用不當,則有可能造成進程死鎖。8.5設備分配
設備分配策略與進程調度相似,動態設備分配也是基于一定的分配策略的。
1)先請求先分配系統按提出I/O請求的先后順序,將進程發出的I/O請求命令排成隊列,其隊首指向被請求設備的DCT。當該設備空閑時,系統從該設備的請求隊列的隊首取下一個I/O請求消息,將設備分配給發出這個請求消息的進程。8.5設備分配
設備分配策略
2)優先級高者先分配進程的優先級高,它的I/O請求也優先予以滿足。對于相同優先級的進程來說,則按先請求先分配策略分配。因此,優先級高者先分配策略把請求某設備的I/O請求命令按進程的優先級組成隊列,從而保證在該設備空閑時,系統能從I/O請求隊列隊首取下一個具有最高優先級進程發來的I/O請求命令,并將設備分配給發出該命令的進程。8.5設備分配設備驅動程序設備驅動程序是驅動物理設備和DMA控制器或I/O控制器等直接進行I/O操作的子程序的集合。為了對驅動程序進行管理,系統中設置有設備開關表DST。設備開關表中給出相應設備的各種操作子程序的入口地址。8.7設備驅動程序
概念
在一類設備上模擬另一類設備,常用共享設備模擬獨占設備,用高速設備模擬低速設備,被模擬的設備稱為虛設備。目的:將慢速的獨占設備改造成多個用戶可共享的設備,提高設備的利用率;(實例:SPOOLing技術,利用虛設備技術
——用硬盤模擬輸入輸出設備)虛設備
SPOOLING的設計和實現為了存放從輸入設備輸入的信息以及作業執行的結果,系統在輔助存儲器上開辟了輸入井和輸出井?!熬笔怯米骶彌_的存儲區域,采用井的技術能調節供求之間的矛盾,消除人工干預帶來的損失。虛設備虛設備
SPOOLING的設計和實現兩個例子:(1)打印機spooling守護進程對于打印機,屬于獨占設備。系統可創建一個守護進程(daemon)以及一個特殊的目錄,稱spooling打印目錄。在打印之前,進程產生完整的待打印文件并放在spooling
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026自我創新面試題及答案
- 回轉動力泵碳足跡核算模板
- 文化藝術行業經理年度工作匯報
- 輸血后的健康宣教
- 設備大修施工管理規范
- 2026年銑工工作計劃
- 大班安全《尖利的東西》
- 社區健康教育戒煙
- 重癥患者心理護理完整版護理查房
- 檢修安全管理經驗
- 廠房照明拆除施工方案(3篇)
- 機械工業規劃研究院有限公司招聘筆試題庫2026
- 低空經濟產業園項目環境影響評估
- 小學漢字書寫規范與教學策略研究
- 六年級閱讀題打印20篇
- GB/T 15822.2-2024無損檢測磁粉檢測第2部分:檢測介質
- 2024年軍考英語真題歷年軍考真題系列
- 落地式盤扣腳手架專項施工方案
- 義務教育數學課程標準(2024年版)
- 架線導地線各種弧垂的含義及計算方法(附計算表格)徹底弄懂弧垂
- 建立與維護客戶關系
評論
0/150
提交評論