[理工] Polling, Interrupt, DMA
各位大大好
I/O的這三種溝通方式不管在OS還是在計組上面都有談
我想要問的是
Interrupt 和 DMA 的不同
Interrupt的工作大概是
需要OS工作 interrupt, 結束時還要再丟一個 interrupt
DMA (需要硬體額外支援):
OS需要主動先去設置 ID, Operation, Addr, Length
結束之後還是要polling
感覺interrupt 的工作順序和 DMA很接近
有沒有甚麼更決定性的不同
可以更清楚瞭解到DMA和 INTERRUPT的差別
註:
我看白算盤上導出DMA是先講一個例子
說如果這顆硬碟時時刻刻忙碌的話 會消耗processor 25%的時間
所以很難接受
但是他用來說明DMA比較好所採用的例子
把硬碟傳的BLOCK SIZE放大從 4Byte -> 8KB
感覺有點像是用設計數據的方式來說明DMA的優點耶...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.166.44.182
推
11/29 23:53, , 1F
11/29 23:53, 1F
→
11/29 23:54, , 2F
11/29 23:54, 2F
→
11/29 23:55, , 3F
11/29 23:55, 3F
→
11/29 23:56, , 4F
11/29 23:56, 4F
→
11/29 23:57, , 5F
11/29 23:57, 5F
→
11/29 23:57, , 6F
11/29 23:57, 6F
→
11/29 23:57, , 7F
11/29 23:57, 7F
→
11/29 23:59, , 8F
11/29 23:59, 8F
→
11/30 00:16, , 9F
11/30 00:16, 9F
推
11/30 00:18, , 10F
11/30 00:18, 10F