I/O章节
- 5.1.1I/O分类
- (1)按使用特性分
- (2)I/O设备按传输速率分类
- (3)I/O设备按信息交换的单位分
- 5.1.2I/O控制器
- 5.1.3I/O控制方式
- (1)程序直接控制方式(轮询)
- (2)中断驱动方式
- (3)DMA方式
- (4)通道控制方式
- 5.1.4I/O软件层次结构
- 5.1.6假脱机技术
- (1)脱机技术
- (2)假脱机和脱机的关系
- (3)应用
- 5.1.7设备的分配与回收
- (1)设备分配时应考虑的因素
- (2)设备分配管理中的数据结构
- 缺点:
- 5.1.8缓冲区管理
- (1)单缓冲
- (2)双缓冲区
- (3)缓冲池
5.1.1I/O分类
(1)按使用特性分
人机交互类外部设备存、存储设备、网络通信设备
(2)I/O设备按传输速率分类
低速设备、中速设备、高速设备
(3)I/O设备按信息交换的单位分
块设备、字符设备
5.1.2I/O控制器
5.1.3I/O控制方式
(1)程序直接控制方式(轮询)
(2)中断驱动方式
(3)DMA方式
主要改进方面:
①数据的传送单位是“块”。不再是一个字、一个字的传送;
②数据的流向是从设备直接放入内存,或者从内存直接到设备。不再需要CPU作为“快递小哥”。
③仅在传送一个或多个数据块的开始和结束时,才需要CPU干预。
DMA控制器:
(4)通道控制方式
通道:小型CPU
原理:增加一个小型CPU让他专门管理I/O操作
5.1.4I/O软件层次结构
设备独立性软件作用:
①向上层提供统一的调用接口 ( 如read/write系统调用)
②设备的保护
③差错处理
④设备的分配与回收
⑤数据缓冲区管理
⑥建立逻辑设备名到物理设备名的映射关系;根据设备类型选择调用相应的驱动程序
设备驱动程序软件的作用:
主要负责对硬件设备的具体控制,将上层发出的一系列命令(如read/write)转化成特定设备“能听得懂”的一系列操作。 包括设置设备寄存器;检查设备状态等
中断处理程序的作用:
5.1.6假脱机技术
(1)脱机技术
(2)假脱机和脱机的关系
①输入井、输出井模拟磁带
②输入进程、输出技术模拟外围控制机
(3)应用
独占式设备:只允许各个进程串行使用的设备。一段时间内只能满足一个进程的请求。
共享设备:允许多个进程“同时”使用的设备(宏观上同时使用,微观上可能是交替使
用)。可以同时满足多个进程的使用请求。
例如:打印机本来是一种独占式设备,但是可以用Spooling技术改造成共享设备
5.1.7设备的分配与回收
(1)设备分配时应考虑的因素
(2)设备分配管理中的数据结构
设备控制表(DCT)、控制器控制表(COCT)、通道控制表(CHCT)都有状态位、标识位、进程等待队列
简单来说设备、控制器、通道的关系就是:进程等设备、设备等控制器、控制器等通道
①设备控制表(DCT)
②控制器控制表(COCT)
③通道控制表(CHCT)
④系统设备表(SDT)
缺点:
5.1.8缓冲区管理
(1)单缓冲
**处理一块数据耗时时间:采用单缓冲策略,处理- - 块数据平均耗时Max(C,T)+M
**
(2)双缓冲区
处理一块数据耗时时间:采用双缓冲策略,处理一个数据块的平均耗时为Max (T, C+M)