1、通道技术
设备管理的通道技术是为了数据传输可以独立于CPU,让CPU从繁琐的I/O工作中解脱出来。设置通道后,CPU、只需要向通道发I/O指令,通道接收到指令后,从主存中取出本次要执行的通道程序并执行,只有完成了I/O任何后才会向CPU发送中断信号。
通道技术的分类:字节多路通道、数组选择通道、数组多路通道。
因为通道价格昂贵,这样计算机系统的通道数是有限的。针对于单通路的I/O系统,主存和设备之间只有一条通路,一旦被占用,即使另一端空闲,连接通道的其他设备只能等待。
解决这个问题的最有效的方法是增加设备到主机之间的通路,使得主存和设备之间有两条以上的通路。
2、DMA技术
直接主存存储技术:数据在主存与I/O设备之间成数据块传送,期间不需要CPU的任何干涉。只需要向设备发送数据传输指令、传输结束的指令。这样可以把CPU空出来去完成别的任务。
3、缓冲技术
缓冲技术的用途:可以提高外设的利用率,尽可能让外设处于忙碌状态。缓冲技术分为:硬件缓冲和软件缓冲。
硬件缓冲:使用硬件寄存器作为缓冲。
软件缓冲:通过操作系统来管理。
3.1 引入缓冲技术能解决哪些问题
1、解决CPU和I/O设备速度之间差异太大的问题。
2、减少对CPU的中断频率,放宽对中断响应时间的限制。
3、提高CPU和I/O设备的并行性。
4、Spooling(外围设备联机操作)技术
实际上是利用一类物理设备模拟另一类物理设备的技术。让独占使用的设备变成多台虚拟设备的一种技术,也是一种速度匹配技术。
Spooling系统组成:预输入程序、缓输出程序、井管理程序、输入井、输出井。
Spooling系统中有一张作业表用来登记进入系统的所有作业名、状态、预输入表位置信息。每个用户作业拥有一张预输入表来登记该作业的各个文件情况,包括设备类、信息长度、存放位置等。
输入井作业的状态有四种:
1、提交状态:作业的信息正从输入设备上预输入。
2、后备状态:作业预输入结束但未被选中执行。
3、执行状态:作业已选中运行。运行过程中可以从输入井中读取、写入数据信息。