第五章I/O管理
I/O章節
- 5.1.1I/O分類
- (1)按使用特性分
- (2)I/O設備按傳輸速率分類
- (3)I/O設備按信息交換的單位分
- 5.1.2I/O控制器
- 5.1.3I/O控制方式
- (1)程序直接控制方式(輪詢)
- (2)中斷驅動方式
- (3)DMA方式
- (4)通道控制方式
- 5.1.4I/O軟件層次結構
- 5.1.6假脫機技術
- (1)脫機技術
- (2)假脫機和脫機的關系
- (3)應用
- 5.1.7設備的分配與回收
- (1)設備分配時應考慮的因素
- (2)設備分配管理中的數據結構
- 缺點:
- 5.1.8緩沖區管理
- (1)單緩沖
- (2)雙緩沖區
- (3)緩沖池
5.1.1I/O分類
(1)按使用特性分
人機交互類外部設備存、存儲設備、網絡通信設備
(2)I/O設備按傳輸速率分類
低速設備、中速設備、高速設備
(3)I/O設備按信息交換的單位分
塊設備、字符設備
5.1.2I/O控制器
5.1.3I/O控制方式
(1)程序直接控制方式(輪詢)
(2)中斷驅動方式
(3)DMA方式
主要改進方面:
①數據的傳送單位是“塊”。不再是一個字、一個字的傳送;
②數據的流向是從設備直接放入內存,或者從內存直接到設備。不再需要CPU作為“快遞小哥”。
③僅在傳送一個或多個數據塊的開始和結束時,才需要CPU干預。
DMA控制器:
(4)通道控制方式
通道:小型CPU
原理:增加一個小型CPU讓他專門管理I/O操作
5.1.4I/O軟件層次結構
設備獨立性軟件作用:
①向上層提供統一的調用接口 ( 如read/write系統調用)
②設備的保護
③差錯處理
④設備的分配與回收
⑤數據緩沖區管理
⑥建立邏輯設備名到物理設備名的映射關系;根據設備類型選擇調用相應的驅動程序
設備驅動程序軟件的作用:
主要負責對硬件設備的具體控制,將上層發出的一系列命令(如read/write)轉化成特定設備“能聽得懂”的一系列操作。 包括設置設備寄存器;檢查設備狀態等
中斷處理程序的作用:
5.1.6假脫機技術
(1)脫機技術
(2)假脫機和脫機的關系
①輸入井、輸出井模擬磁帶
②輸入進程、輸出技術模擬外圍控制機
(3)應用
獨占式設備:只允許各個進程串行使用的設備。一段時間內只能滿足一個進程的請求。
共享設備:允許多個進程“同時”使用的設備(宏觀上同時使用,微觀上可能是交替使
用)。可以同時滿足多個進程的使用請求。
例如:打印機本來是一種獨占式設備,但是可以用Spooling技術改造成共享設備
5.1.7設備的分配與回收
(1)設備分配時應考慮的因素
(2)設備分配管理中的數據結構
設備控制表(DCT)、控制器控制表(COCT)、通道控制表(CHCT)都有狀態位、標識位、進程等待隊列
簡單來說設備、控制器、通道的關系就是:進程等設備、設備等控制器、控制器等通道
①設備控制表(DCT)
②控制器控制表(COCT)
③通道控制表(CHCT)
④系統設備表(SDT)
缺點:
5.1.8緩沖區管理
(1)單緩沖
**處理一塊數據耗時時間:采用單緩沖策略,處理- - 塊數據平均耗時Max(C,T)+M
**
(2)雙緩沖區
處理一塊數據耗時時間:采用雙緩沖策略,處理一個數據塊的平均耗時為Max (T, C+M)
(3)緩沖池
總結
- 上一篇: Python对IP地址列表排序、对列表进
- 下一篇: Hadoop 副本存储策略的源码修改和设