操作系统丨(六)设备管理
同步发布: (排版更佳!)
1. 广义的 IO 设备
对CPU而言,凡是对CPU进行数据输入的都是输入设备,凡是CPU进行数据输出的都是输出设备。
1.1 按使用特性分类
存储设备
-
U 盘 内存 磁盘
交互 IO 设备
-
键盘 显示器 鼠标
1.2 按设备的共享属性分类
-
独占设备 共享设备 虚拟设备
1.3 按信息交换的单位分类
块设备
-
磁盘 SD 卡
字符设备
-
打印机 Shell 终端
1.4 按传输速率分类
-
低速设备 中速设备 高速设备
2. IO 设备的缓冲区
IO 设备缓冲区的作用是解决 CPU 与 IO 设备速率不匹配的问题。
思路
-
减少 CPU 处理 IO 请求的频率 提高 CPU 与 IO 设备之间的并行性
专用缓冲区
-
专用缓冲区只适用于特定的IO进程。 当这样的IO进程比较多时,对内存的消耗也很大。
缓冲池
操作系统划出可供多个进程使用的公共缓冲区,称之为缓冲池。
3. SPOOLing 技术
SPOOLing 是关于慢速字符设备如何与计算机主机交换信息的一种技术。 它利用高速共享设备将低速的独享设备模拟为高速的共享设备。 逻辑上,系统为每一个用户都分配了一台独立的高速独享设备。
在Spooling系统中,用一道程序模拟脱机输入时的外围控制机功能,把低速输入设备上的数据传送到高速磁盘上;再用另一道程序来模拟脱机输出时的外围控制机功能,把数据从磁盘传送到低速输出设备上。