目錄
一、I/O特點
1.設備接口類型
1.1字符設備
- 訪問特徵:以字節爲單位順序訪問
- I/O命令:get()、put()等,通常使用文件訪問接口和語義。
1.2塊設備
- 訪問特徵:均勻的數據塊訪問。
- I/O命令:原始I/O或者文件系統接口、內存映射文件訪問。
1.3網絡設備
- 訪問特徵:格式化報文交換。
- I/O命令:send/receive網絡報文、通過網絡節後支持多種網絡協議。
2.同步與異步I/O
2.1阻塞I/O
首先I/O請求——(通過系統調用)內核的設備驅動——內核的硬件控制數據傳輸——中斷處理——內核設備驅動——I/O請求獲取數據
2.1非阻塞I/O
2.3異步I/O
二、I/O結構
1.一個實際例子
北橋連接高速設備,南橋連接I/O設備
2.CPU與設備的連接
CPU與設備通信的三種方式:輪詢、設備中斷和DMA
- 輪詢:CPU直接訪問設備端口或者直接訪問設備對應的內存地址空間
- 設備中斷:外部時間需要經過中斷才能到CPU
- DMA:外部設備需要直接把數據放到內存中,通過CPU讀然後放到內存中去,在DMA控制器的作用下把數據從I/O設備直接到內存單元。
3.I/O指令和內存映射I/O
4.內核I/O
5.I/O生命週期
三、I/O數據傳輸
1.CPU與設備控制器的數據傳輸:程序控制I/O、DMA
DMA的流程:
2.I/O設備通知操作系統的機制
2.1輪詢
2.2設備中斷
3.設備中斷I/O處理流程
CPU在執行指令的過程中產生了I/O請求,設備驅動會初始化這個I/O請求,設備驅動中的I/O控制器會初始化I/O操作,然後由設備進行相應的操作。操作完成或者出錯都會產生中斷,CPU在完成I/O請求初始化之後就可以幹別的事情了,但是在每執行一條指令之後都會檢查是否有中斷請求。收到中斷請求後轉到中斷處理,並分發給相應的中斷服務例程進行處理,處理完成之後CPU恢復被中斷的進程的執行。
四、磁盤調
1.磁盤工作機制和性能參數度
2.磁盤I/O傳輸時間
3.磁盤調度算法
3.1 先進先出(FIFO)算法
3.2 最短服務時間優先(SSTF)
3.3 掃描算法(SCAN)
3.4 循環掃描算法(C-SCAN)
3.5 C-LOOK算法
3.6 N步掃描算法、雙隊列掃描算法
五、磁盤緩存
1.磁盤緩存定義
是放在內存裏的磁盤數據緩存
2.單緩存與雙緩存
3.訪問頻率置換算法
LRU:最近最久未使用算法
LFU:最近最少使用算法