这一章讲了I/O设备,这一章很多知识点和计算机组成原理重合,比如DMA,缓冲区等的概念。首先介绍了什么是I/O设备,他们的分类方式,如人机交互类的外部设备,如打印机,显示器,鼠标,键盘等。存储设备,如磁盘,磁带,光盘等,通络通信设备有网络接口,调制解调器。也可以按传输速率进行分类或者信息交换的单位分类。I/O的控制方式,是指外围设备和内存之间的输入/输出的控制方式。有程序直接控制方式,CPU利用率很低。中断驱动方式,DMA方式和通道控制方式。
之后介绍了I/O子系统的层次结构,这里面要注意I/O请求和I/O应答会从不同的方向进行。对各个层次的功能要有了解,不然做题真的很蒙,需要做题去拓展,有些王道书并没有讲的很细致。
设备控制器,设备控制器通过寄存器与CPU通信,根据寄存器的存储位置不同可以分为,内存映像I/O和寄存器独立编址。设备控制器有如下的功能,1> 接收和识别CPU或通道发来的命令。2> 实现数据的交换。3> 发现和记录设备及自身的状态信息。4> 地址识别
下一节讲了I/O核心子系统,首先介绍了I/O调度。之后介绍了高速缓存与缓冲区的概念,目的是缓和CPU和I/O设备的速度不匹配的问题。缓存区又分为单缓存区,双缓冲区,循环缓冲区和缓冲池,介绍了前两种的工作流程和大致的时间估算。之后讲解了设备的分配和回收,讲解了独占设备,共享设备和虚拟设备的分配。之后讲解了分配的数据结构,也就是通过设备控制表(DCT),控制器控制表(COCT),通道控制表(CHCT)和系统设备表(SDT)如和进行设备的分配和各个器件所起的作用。分配策略有动态分配和静态分配,对于分配的安全性也介绍了安全性分配和不安全性分配。为了提高设备分配的灵活性和设备的利用率这里,方便实现I/O的重定向,这里又介绍了逻辑设备到物理设备名之间的转换。最后讲解了SPOOLing技术,也是缓和I/O设备和CPU速度不匹配的问题,它可以使独占设备变为共享设备。介绍了它的结构和工作流程。
这一章就像一个独立的章节一样,很难连成块去记忆,感觉整个操作系统还是记忆的多少,而且各个知识点章节联系不多,各个章节都需要各自去理解记忆。要像王道说的那样,想要学好需要反复多次和全面了。