操作系统 第六章 3 设备独立性 + 用户层的I/O软件

1、设备独立性概念:

指应用程序中所使用的设备,不局限于使用某个具体的物理设备,也称为设备无关性

2、设备独立性软件:

为了实现设备独立性,在设备驱动程序之上设置一层软件,称为与  设备无关的I/O软件  或  设备独立性软件

设备无关的软件    是I/O系统最高层软件

3、设备独立性好处:

用户编程时所用的设备名(逻辑上的)与实际物理设备无关;

1)设备分配时的灵活性

2)易于实现I/O重定向

4、逻辑设备名到物理设备名的映射

通过    逻辑设备表LUT   (存在pcb中)

5、设备分配中的数据结构

  1. 设备控制表 (DCT)
  2. 控制器控制表 (COCT)
  3. 通道控制表 (CHCT)
  4. 系统设备(总)表(SDT)

IO请求中的

设备名  -》 SDT -》 DCT -》 COCT --》CHCT


用户层的I/O软件:

1、 小部分I/O系统软件放在了用户应用层上。

  1. 库函数(与应用程序链接)
  2. 假脱机技术(虚拟设备)

2、系统调用与库函数

OS在用户层中引入了系统调用,应用程序可以通过它,间接调用OS中的I/O过程,对I/O设备进行操作。

3、设备分配中的虚拟技术       

                              —— SPOOLing技术  或 假脱机操作 (联机情况下实现的同时外围操作为SPOOLing 技术)

  1) SPOOLing系统的组成:

  •  输入井和输出井(外存上)
  • 输入缓冲区和输出缓冲区(内存上)
  • 输入进程和输出进程

2)SPOOLing系统的特点:

  • 提高了I/O的速度
  • 将独占设备改造为共享设备。
  • 最终,实现了虚拟设备功能

猜你喜欢

转载自blog.csdn.net/weixin_43214005/article/details/84429553