程式查詢方式 中斷方式 DMA方式的優缺點有哪些

時間 2021-09-10 11:58:48

1樓:zhurenyan水瓶

程式查詢方式,最簡單的i/o方式,資料在cpu和外設之間的傳送完全靠計算機程式控制,外設和cpu之間是序列工作,cpu效率低。

dma方式,完全由硬體執行i/o交換,其主要優點是資料傳送速度很高,cpu根本不參加傳送操作,而直接在記憶體和外設之間進行,傳送速率僅受記憶體訪問時間的限制。缺點是需要更多的硬體。中斷方式,外設主動提出資料傳送要求的i/o方式,cpu在收到這個要求之前,則執行著本身的程式,突出的優點是cpu效率高。

缺點是硬體結構相對複雜,服務開銷時間較大。

dma傳送方式

dma傳送方式有3種:單元傳送方式、塊傳送方式和on-the-fly傳送方式。與外部dma請求/應答協議不同的是,dma傳送方式定義了每次傳送讀/寫的單元數。

(1)單元傳送方式(單位元組傳送方式)

單元傳送方式意味著每個dma請求對應一對dma讀/寫週期,即1個單元讀,然後1個單元寫。

(2)塊傳送方式(連續傳送方式)

塊傳送方式意味著在連續4個字的dma寫週期前有連續的4個字的dma讀週期,即4個字突發讀,然後4個字突發寫,因此傳輸的資料個數應該是16位元組的倍數。

(3)on-the-fly傳送方式(請求傳送方式)

在on-the-fly傳送方式下dma讀/寫可以同時進行。dma應答訊號通知外部裝置去讀或者寫。同時,儲存控制器將產生與讀/寫相關的控制訊號給外部儲存器。

如果外部裝置能夠支援on-the-fly傳送方式,將會使得外設的資料傳輸速率大大地增加。

2樓:匿名使用者

程式查詢模式:檢查條件及處理要占用cpu時間。

中斷模式: 檢查條件不佔cpu時間,滿足條件時進入中斷子程,所以處理需佔cpu時間。

該模式主要用於處理事件或事務。

dma的英文拼寫是「direct memory access」,是一種不經過cpu而直接與記憶體交換資料模式。

在dma模式下,cpu只須向dma控制器下達指令,讓dma控制器來處理數的傳送,資料傳送完畢再把資訊反饋給cpu,這樣就很大程度上減輕了cpu資源占有率。該模式主要用於交換資料,如硬碟與記憶體的資料交換。

在程式查詢,i/o中斷以及dma方式中,實際應用中選擇傳輸方式的主要依據是什麼?

3樓:匿名使用者

根據cpu是否忙碌,比如cpu需要做許多事情,忙不過來,就可以考慮用dma輔助傳輸資料,但程式設計稍微複雜,要求dma傳輸成塊資料,如果資料量小且零碎,可以考慮用中斷傳輸,但比dma占用cpu要多,輪詢方式io傳輸要占用更多的cpu時間,在簡單程式設計場合可以使用.

4樓:哈哈呵呵你好

能用dma就盡量用dma的方式,cpu訪問io的速度是比較慢的。輪詢的話占用cpu的資源太多無論從省電還是執行效率來說都不是乙個太好的選擇。另外現在的dma還支援dma串,這樣位址不連續的多組資料也可以通過暫存器配置讓dma來依次做資料搬移。

DMA方式和中斷方式的區別,什麼是dma控制方式 與中斷控制方式的主要區別是什麼?

常用的裝置和cpu之間資料傳送控制方式有4種,它們是程式直接控制方式 中斷控制方式 dma方式和通道方式。程式直接控制方式和中斷控制方式都只適用於簡單的 外設很少的計算機系統,因為程式直接控制方式耗費大量的cpu時間,而且無法檢測發現裝置或其他硬體產生的錯誤,裝置和cpu 裝置和裝置只能序列工作。中...

DMA方式與程式中斷方式相比,其主要特點是什麼

因為程式直接控制方式耗費大量的cpu時間,而且無法檢測發現裝置或其他硬體產生的錯誤,裝置和cpu 裝置和裝置只能序列工作。中斷控制方式雖然在某種程度上解決了上述問題,但由於中斷次數多,因而cpu仍需要花較多的時間處理中斷,而且能夠並行操作的裝置台數也受到中斷處理時間的限制,中斷次數增多導致資料丟失。...

微控制器的查詢和中斷兩種方式怎麼從程式裡面看出來

月下獨酌 查詢方式裡面就是看中斷響應標誌位的變化跳轉程式例如tf 而中斷方式是等待中斷 例如here sjmp here 然後跳轉到中斷向量表執行中斷 執行往後返回 爬行的山羊 查詢的的當然沒有中斷。彙編中可以看到很多jb 或者jnb c語言中可以看到很多case 中斷形式的肯定有開關中斷的程式。 ...