第十一章—I/O管理和磁盤調度【計算機操作系統】

11.1 列出並簡單定義執行I/O的三種技術。

可編程I/O:處理器代表進程給I/O模塊發送給一個I/O命令,該進程進入忙等待,等待操作的完成,然後纔可以繼續執行。

中斷驅動I/O:處理器代表進程向I/O模塊發送一個I/O命令,然後繼續執行後續指令,當I/O模塊完成工作後,處理器被該模塊中斷。如果該進程不需要等待I/O完成,則後續指令可以仍是該進程中的指令,否則,該進程在這個中斷上被掛起,處理器執行其他工作。

直接存儲器訪問(DMA):一個DMA模塊控制主存和I/O模塊之間的數據交換。爲傳送一塊數據,處理器給DMA模塊發送請求,只有當整個數據塊傳送完成後,處理器才被中斷。

11.2 邏輯I/O和設備I/O有什麼區別?

邏輯I/O:邏輯I/O模塊把設備當作一個邏輯資源來處理,它並不關心實際控制設備的細節。邏輯I/O模塊代表用戶進程管理的一般I/O功能,允許它們根據設備標識符以及諸如打開、關閉、讀、寫之類的簡單命令與設備打交道。

設備I/O:請求的操作和數據(緩衝的數據、記錄等)被轉換成適當的I/O指令序列、通道命令和控制器命令。可以使用緩衝技術,以提高使用率。

11.3 面向塊的設備和麪向流的設備有什麼區別?請舉例說明。

面向塊的設備將信息保存在塊中,塊的大小通常是固定的,傳輸過程中一次傳送一塊。通常可以通過塊號訪問數據。磁盤和磁帶都是面向塊的設備。

面向流的設備以字節流的方式輸入輸出數據,其末使用塊結構。終端、打印機通信端口、鼠標和其他指示設備以及大多數非輔存的其他設備,都屬於面向流的設備。

11.4 爲什麼希望用雙緩衝區而不是單緩衝區來提高I/O的性能?

雙緩衝允許兩個操作並行處理,而不是依次處理。典型的,在一個進程往一個緩衝區中傳送數據(從這個緩衝區中取數據)的同時,操作系統正在清空(或者填充)另一個緩衝區。

11.5 在磁盤讀或寫時有哪些延遲因素?

尋道時間,旋轉延遲,傳送時間

11.6 簡單定義圖11.7中描述的磁盤調度策略。

FIFO:按照先來先服務的順序處理隊列中的項目。

SSTF:選擇使磁頭臂從當前位置開始移動最少的磁盤I/O請求。

SCAN:磁頭臂僅僅沿一個方向移動,並在途中滿足所有未完成的請求,直到它到達這個方向上最後一個磁道,或者在這個方向上沒有其他請求爲止。接着反轉服務方向,沿相反方向掃描,同樣按順序完成所有請求。

C-SCAN:類似於SCAN,

11.7 簡單定義圖7層RAID。

0:非冗餘

1:被鏡像;每個磁盤都有一個包含相同數據的鏡像磁盤。

2:通過漢明碼實現冗餘;對每個數據磁盤中的相應都計算一個錯誤校正碼,並且這個碼位保存在多個奇偶校驗磁盤中相應的文件。

3:交錯位奇偶校驗;類似於第二層,不同之處在於RAID3爲所有數據磁盤中同一位置的位的集合計算一個簡單的奇偶校驗位,而不是錯誤校正碼。

4:交錯塊分佈奇偶校驗;對每個數據磁盤中相應的條帶計算一個逐位奇偶。

5:交錯塊分佈奇偶校驗;類似於第四層,但把奇偶校驗條帶分佈在所有磁盤中。

6:交錯塊雙重分佈奇偶校驗;兩種不同的奇偶校驗計算保存在不同磁盤的不同塊中。

11.8 典型的磁盤扇區大小是多少?

512比特

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章