1. 程式人生 > >I/O與主機交換資訊有哪幾種控制方式?各有何特點?

I/O與主機交換資訊有哪幾種控制方式?各有何特點?

(1)程式查詢方式。其特點是主機與I/O序列工作。CPU啟動I/O後,時刻查詢I/O是否準備好,若裝置準備就緒,CPU便轉入處理I/O與主機間傳送資訊的程式;若裝置未做好準備,則CPU反覆查詢,直到I/O準備就緒為止。可見這種方式CPU效率很低
(2)程式中斷方式。其特點是主機與I/O並行工作。CPU啟動I/O後,不必時刻查詢I/O是否準備好,而是繼續執行程式,當I/O準備就緒時。向CPU發中斷請求訊號,CPU在適當時候響應I/O的中斷請求,暫停現行程式為I/O服務。這種方式消除了“踏步”現象,提高了CPU效率,(特點為:CPU與裝置並行工作,傳送與主程式序列工作
(3)DMA方式。其特點是主機與I/O並行工作,主存和I/O之間有一條直接資料通路。CPU啟動I/O後,不必查詢I/O是否準備好,當I/O準備就緒後,發出DMA請求,此時CPU不參與I/O和主存間的資訊交換,只是把外部匯流排(地址線、資料線以及有關的控制線)的使用權暫時賦予DMA,仍然可以完成自身內部的操作(如加法、位移等),故不必中斷現行程式,只需暫停一個存取週期訪存(即週期挪用),CPU的效率高,(特點為:CPU與裝置並行工作,傳送與主程式並行工作


(4)通道方式。通道是一個具有特殊功能的處理器,CPU把部分權力下放給通道,由它實現對外圍裝置的統一管理和外圍裝置與主存之間的資料交換,大大提高了CPU的效率,但它是以花費更多的硬體為代價。
(5)I/O處理機方式。它是通道方式的進一步發展,CPU將I/O操作及外圍裝置的管理權全部交給I/O處理機,其實質是多機系統,因而效率有更大提高