第六章 裝置管理
知識點
1.I/O系統的組成
2.I/O系統的軟體層次
①中斷處理過程
②I/O控制方式
③緩衝管理、裝置分配、裝置處理
3.磁碟排程
I/O系統的主要功能:
1.隱藏物理裝置細節,方便使用者 使用者使用抽象的I/O命令即可
2.實現裝置無關性,方便使用者 使用者可用抽象的邏輯裝置名來使用裝置,同時也提高了OS的可移植性和易適應性。
3.提高處理機和裝置的並行性,提高利用率:緩衝區管理
4.對I/O裝置進行控制:控制方式、裝置分配、裝置處理
5.確保對裝置正確共享:虛擬裝置及裝置獨立性等
6.錯誤處理
I/O系統的組成
1.需要用於輸入、輸出和儲存資訊的裝置;
2.需要相應的裝置控制器;
3.控制器與CPU連線的高速匯流排;
4.有的大中型計算機系統,配置I/O通道;
中斷處理流程
1.測定是否有未響應的中斷訊號
2.保護被中斷程序的CPU環境
3.轉入相應的裝置處理程式
4.中斷處理
5.恢復CPU的現場
直接儲存器訪問DMA 方式特點:
1.資料傳輸的基本單位是資料塊;
2.所傳送的資料是從裝置直接送入記憶體的,或者直接從記憶體進裝置;不需要CPU操作。
3.CPU干預進一步減少:僅在傳送一個或多個數據塊的開始和結束時,才需CPU干預,整塊資料的傳送是在控制器的控制下完成的。
DMA控制器的組成
1.主機與DMA控制器的介面;
2.DMA控制器與塊裝置的介面;
3.I/O控制邏輯。
DMA工作過程
1.CPU先向磁碟控制器傳送一條讀命令。
2.該命令被送到命令暫存器CR中。
3.同時傳送資料讀入到記憶體的起始地址,該地址被送入MAR中;
4.要讀資料的字數則送入資料計數器DC中;
5.將磁碟中的資料原地址直接送入DMA控制器的I/O控制邏輯上,按裝置狀態啟動磁頭到相應位置。
6.啟動DMA控制器控制邏輯開始進行資料傳送
①DMA控制器讀入一個數據到資料暫存器DR中,然後傳到記憶體MAR地址中;
②接著MAR+1,DC-1,判斷DC是否為0,如否,繼續,反之控制器發中斷請求,傳送完畢。
SPOOLing系統的組成
1.輸入井和輸出井
2.輸入緩衝區和輸出緩衝區
3.輸入程序和輸出程序
SPOOLing系統的特點
1.提高了I/O的速度。利用輸入輸出井模擬成離線輸入輸出,緩和了CPU和I/O裝置速度不匹配的矛盾。
2.將獨佔裝置改造為共享裝置。並沒有為程序分配裝置,而是為程序分配一儲存區和建立一張I/O請求表。
3.最終,實現了虛擬裝置功能。多個程序可“同時”使用一臺獨佔裝置。
引入緩衝區的主要原因:
1.緩和CPU與I/O裝置間速度不匹配的矛盾。
2.緩衝區資料成批傳入記憶體,也可進一步減少對CPU的中斷頻率
3.最終目的:提高CPU和I/O裝置的並行性。
使用緩衝區的方式:
1.單緩衝、多緩衝
2.迴圈緩衝
3.緩衝池(Buffer Pool)
磁碟排程方法
1.FCFS
2.最短尋道時間優先SSTF
3.掃描演算法SCAN(磁碟電梯排程演算法)
①迴圈掃描演算法CSCAN
②N-Step-SCAN演算法
③FSCAN演算法
訪問磁碟過程
1.CPU給出地址,需要訪問某儲存單元;
2.並行進行TLB查詢和cache查詢;
3.TLB查詢後申明沒有找到;
4.停止並行查詢,並通知作業系統處理;
5.作業系統檢查頁表,發現該頁不在記憶體中,需要從硬碟調入。
虛擬裝置是指:
通過虛擬技術將一臺獨佔裝置改造成若干臺邏輯裝置,供若干個使用者程序同時使用。
按資訊交換單位分類,可將裝置分為:
塊裝置和字元裝置
通道是:
一種負責I/O的處理機。
位元組多路通道主要用作:
連線大量的低速I/O裝置。
從資源分配的角度看,作業系統將外部裝置分為:
獨佔型裝置、共享型裝置、虛擬裝置。
根據資訊交換方式的不同,可以將通道分為:
位元組多路通道、資料選擇通道、資料多路通道。
裝置獨佔性是指:
應用程式獨立於具體使用的物理裝置。
緩衝技術中的緩衝池在:主存中。
進行裝置分配時所需要的資料表格主要有:
裝置控制表、裝置控制器控制表、通道控制表和系統裝置表。
大多數低速裝置都屬於:獨享裝置。
Spooling系統是由:
磁碟中的輸入井和輸出井、記憶體中的輸入緩衝區和輸出緩衝區以及輸入程序和輸出程序組成。
裝置與記憶體之間的傳輸方式有:
程式直接控制方式、中斷控制方式、通道控制方式和DMA控制方式,其中通道方式佔用CPU時間最短。
Spooling技術是指:
在共享裝置上模擬獨佔裝置。由預輸入程式將作業執行中需訪問的資料預先讀入到輸入井中,緩輸出程式則負責將輸出井中的資訊在輸出裝置上輸出。