在大数据传送时,DMA方式与中断方式的传输速率比较
结论:
高速I/O设备批量交换数据时,只能采用DMA方式解决效率和速度问题。
DMA方式直接在外设和内存间进行数据交换,而不通过CPU,从而使得数据传送速度取决于外设和存储器的工作速度。
DMA方式和中断方式的区别
DMA方式是硬件方式。中断是软件方式。优先级:DMA方式比中断方式高。DMA只占用cpu少部分时间,不浪费cpu资源。但是中断方式全程占有cpu。中断方式能处理异常事件,但是DMA方式只能够传输数据。外设与内存进行数据传输的几种方式
DMA方式(DIRECT MEMORY ACCESS)即直接存储器存取,是指外部设备不通过CPU而直接与系统内存交换数据的接口技术。
外设请求传输,dma向cpu发出总线控制请求,cpu把总线控制下发给DMA控制器。DMA利用总线进行数据的快速传输。传输完毕后把总线控制权交还给cpu。优点:快、能传输大量数据而不降低CPU速度。
主要用于高速外设进行大批量数据传送的场合。
中断方式,是由CPU通过中断服务程序来传送,每次要保护断点,保护现场需要多条指令,每条指令要有取指和执行时间。
外设向cpu发出中断请求,cpu响应中断后进行数据传输。但是如果传输较多数据的情况下,cpu得一直花费时间在中断上,也会造成cpu利用率低。
主要用于CPU的任务比较忙的情况下,尤其适合实时控制和紧急事件的处理
程序传送,通过无条件或者if等条件语句使cpu主动进行数据传输,但是这种情况下要等待外设准备好,会浪费大量的等待时间。
原文1 原文2