这一章讲的是用指令来同外围设备进行输入输出操作,而这指令就是IN和OUT。每个外设内部都有I/O控制器,是通过外设的端口号来控制的,除此之外外设中还有IRQ和DMA(两者不是必需具备的,IRQ是对中断处理的外设来说是必须的,DMA通道则只对需要DMA机制的外设来说是必须的)。IRQ指的是用来执行硬件中断请求的编号,DMA指的是不经过CPU中介处理,外设直接同计算机的主内存进行数据传输。
外设中断请求:当外设通过IRQ发送中断请求链接外设的控制器,然后通过CPU把当前正在运行的主程序中断,并切换到中断处理程序(是有操作系统或BIOS提供),而中断处理程序首先做的是把当前CPU寄存器中的值保存在CPU中,等结束后,中断之前的程序将会从栈中返回到寄存器(若寄存器不够,则存储在栈中)继续执行。
DMA可以实现短时间内传送大量数据,不需要通过CPU,直接传给住内存。文字及图片的显示机制,是通过VRAM来决定的,实现该功能的程序是操作系统或BIOS提供,并借助中断来进行处理的,只要在VRAM中写入数据,该数据就会在显示器中显示出来。
这是对这一章的理解。