# 六、设备管理

# 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 设备之间的并行性
# 专用缓冲区
image-20210109085745202
  • 专用缓冲区只适用于特定的IO进程。
  • 当这样的IO进程比较多时,对内存的消耗也很大。
# 缓冲池

操作系统划出可供多个进程使用的公共缓冲区,称之为缓冲池。

image-20210109085937615

# 3. SPOOLing 技术

SPOOLing 是关于慢速字符设备如何与计算机主机交换信息的一种技术。

它利用高速共享设备将低速的独享设备模拟为高速的共享设备。

逻辑上,系统为每一个用户都分配了一台独立的高速独享设备。

在Spooling系统中,用一道程序模拟脱机输入时的外围控制机功能,把低速输入设备上的数据传送到高速磁盘上;再用另一道程序来模拟脱机输出时的外围控制机功能,把数据从磁盘传送到低速输出设备上。

image-20210109090938024
上次更新: 8/6/2021, 8:10:03 PM