利用DMA实现短时间内大量数据传输及文字和图片显示机制

CSDN话题挑战赛第2期
参赛话题:学习笔记

目录

一、利用DMA实现短时间内大量数据传输

二、文字和图片的显示机制


一、利用DMA实现短时间内大量数据传输

        上一篇博客介绍了I/O处理和中断的关系。下面介绍另一个机制,这个机制就是DMA(Direct Memory Access)。DMA是指在不通过CPU的情况下,外围设备直接和主存进行数据传输。磁盘等硬件设备都用到了DMA机制,通过DMA,大量数据可以在短时间内实现传输,之所以这么快,是因为CPU作为中介的时间被节省了,下面式DMA的传输过程

使用DMA的外围设备和不使用DMA的外围设备:

        I/O端口号、IRQ、DMA通道可以说是识别外围设备的3点组合。不过,IRQ、DMA通道并不是所有外围设备都具备的。计算机主机通过软件控制硬件时所需要的信息的最低限,是外围设备的1/O端口号。IRQ只对需要中断处理的外围设备来说是必须的,DMA通道则只对需要DMA机制的外围设备来说是必须的。假如多个外围设备都设定成相同的端口号、IRQ和DMA通道的话,计算机就无法正常工作,会提示 设备冲突

二、文字和图片的显示机制

        你知道文字和图片是如何显示出来的吗?事实上,如果用一句话来简单的概括一下该机制,那就是显示器中显示的信息一直存储在某内存中。该内存称为 VRAM(Video RAM)。在程序中,只要往VRAM中写入数据,该数据就会在显示器中显示出来。实现该功能的程序,是由操作系统或者BIOS提供,并借助中断来进行处理

        在MS-DOS 时代,对于大部分计算机来说,VRAM都是主内存的一部分。在现代计算机中,显卡等专用硬件中一般都配置有与主内存相独立的VRAM和GPU(Graphics Processing Unit),也叫做图形处理器或者图形芯片。这是因为,对经常描绘图形的windows来说,数百兆的VRAM都是必需的。

VRAM中写入的数据被显示在显示器上:

        用软件来控制硬件听起来好像很难,但实际上知识利用输入输出指令同外围设备进行输入输出而已。中断处理是根据需要来使用的功能选项。DMA则直接交给对应的外围设备即可

        虽然计算机领域新技术在不断涌现,但是计算机所能处理的事情,始终只是对输入的数据进行运算,并把结果输出,这一点永远不会发送变化的

猜你喜欢

转载自blog.csdn.net/m0_61961937/article/details/127230267