1、广义的IO设备

==对CPU而言,凡是对CPU进行数据输入的都是输入设备==

==对CPU而言,凡是CPU进行数据输出的都是输出设备==

1.1、按使用特性分类

20211226144118.png

1.2、按信息交换的单位分类

20211226144132.png

1.3、按设备的共享属性分类

20211226144142.png

1.4、按传输速率分类

20211226144151.png

2、IO设备的缓冲区

目的

原因:==CPU与IO设备的速率不匹配==

  • 减少CPU处理IO请求的频率
  • 提高CPU与IO设备之间的并行性

20211226144202.png

  • 专用缓冲区只适用于特定的IO进程
  • 当这样的IO进程比较多时,对内存的消耗也很大
  • 操作系统划出可供多个进程使用的公共缓冲区,称之为缓冲池

20211226144212.png

3、SPOOLing技术

虚拟设备技术

  • 是关于慢速字符设备如何与计算机主机交换信息的一种技术
  • 利用高速共享设备将低速的独享设备模拟为高速的共享设备
  • 逻辑上,系统为每一个用户都分配了一台独立的高速独享设备

20211226144223.png

==SPOOLing技术把同步调用低速设备改为异步调用==

  • 在输入、输出之间增加了排队转储环节(输入井、输出井)
  • SPOOLing负责输入(出)井与低速设备之间的调度
  • 逻辑上,进程直接与高速设备交互,减少了进程的等待时间

==完成后触发中断,CPU读取内容==???这是哪个部分的?