CPU與外設傳輸方式

如果外設想要工作,那麼他就必須去找CPU請求服務,只有得到CPU的批准,這樣纔可以爲其分配計算機資源,讓其完成任務。

隨着進步,CPU與外設之間產生了4種訪問方式。

1.輪詢方式。
每隔一段時間CPU就會在一定的週期時間內按照一定次序向外設輪流發送詢問,問下他們要不要使用計算機資源,如果需要,則進行相應的輸入/輸出服務;反之或者已經完成外設的I/O任務,CPU就接着查詢下一個外設。
很明顯,這是一位多麼體貼的老媽子啊!但這種傳輸方式不利於提高CPU的效率,在詢問外設上浪費很多的時間。於是,人們提出了中斷查詢的方式。

2.中斷查詢。
CPU只有在外設準備充足時,纔會爲其分配計算機資源。在速度較慢的外設準備自己的數據時,CPU照常幹自己的事 。這就意味着,CPU和外設的一些操作是並行地進行的,因而同輪詢的方式相比,計算機系統的效率是大大提高了。
拿一個例子來講。課堂上,老師每講完了一節課,都會答疑,老師不會每個同學都問,只有那些提前準備好了問題的同學,老師纔會解決他們的問題,這樣老師從主動就變爲了被動,大大節省了答疑的時間。由此,衍生出了中斷查詢方式。
簡單來說,就是CPU從輪詢的像老媽子似的每個都關照,一有問題就服務,變爲了後媽,你只有將解決問題的所有條件都準備好了,才爲你服務。
但是由於中斷方式會根據外設的優先級爲其分配計算機資源,同時允許多重中斷。譬如,現在有A,B兩外設,優先級A>B,假設CPU現在正在處理B的請求,這時,A突然請求服務,那麼CPU就需要保存A 的資源配置,成爲保護現場,然後去執行B的服務命令。
由此可見,CPU在保護現場需要佔用內存,無法避免的多重中斷甚至會造成外設永久等待的問題

3.DMA( 直接數據通道傳送)方式。
外設不經過CPU直接與內存進行數據傳遞。這一般適用於高速設備或者頻繁需要與內存進行數據交流的外設,爲他們專門開闢一條VIP通道,避免了等待

4.通道傳輸。
通道與DMA很類似,也是爲外設開了一條VIP道路。具有通道的機器一般是大型計算機和服務器,數據流量很大。

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