主要从两方面进行讲解,一个是I/O管理概述、另一个是I/O核心子系统。
1 I/O管理概述
1.1 I/O设备
计算机系统中的I/O设备按使用特性可分为以下类型:
人机交互类外部设备、存储设备、网络通信设备。
按传输速率分类:低速设备、中速设备、高速设备
按嘻嘻交换的单位分类:块设备、字符设备。
1.2 I/O控制方式
设备管理的主要任务之一是控制设备和内存或处理机之间的数据传送,外围设备和内存之间的输入/输出控制方式有四种,分别为:程序直接控制方式、中断驱动方式、DMA方式(直接存储器存取)、通道控制方式。
1.3 I/O子系统的层次结构
用户层I/O软件、设备独立性软件、设备驱动程序、中断处理程序、硬件设备。
2 I/O核心子系统
2.1 I/O子系统概述
I/O核心子系统提供的服务主要有:I/O调度、缓冲与高速缓存、设备分配与回收、假脱机、设备保护和差错处理等。
2.2 I/O调度概念
I/O调度就是确定一个好的顺序来执行这些I/O请求。
2.3 高速缓存与缓冲区
包括磁盘高速缓存、缓冲区(单缓冲、双缓冲、循环缓冲、缓冲池)。
2.4 设备分配与回收
(1)设备分配概述:独占式使用设备、分时式共享使用设备、以SPOOLIng方式使用外部设备。
(2)设备分配的数据结构:设备控制表DCT、控制器控制表COCT、通道制表CHCT、系统设备表SDT。
(3)设备分配的策略:设备分配原则应根据设备特性、用户要求和系统配置情况。设备分配方式有静态分配和动态分配两种。设备分配算法:常用的动态设备分配算法有先请求先分配、优先级高者优先等。
(4)设备分配的安全性:是指设备分配中应防止发生进程死锁
(5)逻辑设备名到物理设备名的映射
2.5 SPOOLing技术(假脱机技术)
为了缓和CPU的高速性与I/O设备低速性之间的矛盾而引入了脱机输入/输出技术。该技术是利用专门的外围控制机,将低速I/O设备上的数据传送到高速磁盘上;或者相反。SPOOLing的意思是外部设备同时联机操作,又称为假脱机输入/输出操作,是操作系统中采用的一项将独占设备改造成共享设备的技术。
SPOOLing系统的主要特点有:提高了I/O的速度;将独占设备改造为共享设备;实现了虚拟设备功能。