操作系统丨(六)设备管理

同步发布: (排版更佳!)

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

经验分享 程序员 微信小程序 职场和发展