I/O管理概述
I/O设备

分类




I/O控制器





I/O控制方式
程序直接控制方式(轮询)

数据准备好,放到数据寄存器才会修改状态寄存器,CPU一查到就读取数据


中断驱动方式

DMA方式(Direct Memory Access:直接存储器存取)

DMA寄存器

- DMA控制器也是一次读一个字然后放到内存中的,存够一批

- 读入的块或者在内存存放的块必须是连续的(因为它要求是一批连续的),如果想要读非连续的或者非连续的存放必须要多个I/O指令,一次是不行的
- 一个DMA控制器只对应一台设备与内存传递数据
通道控制方式

- 通道执行的指令很单一,且和CPU共享内存
- 通道程序相当于任务清单,由一系列通道指令构成
- 一个通道控制多个I/O控制器,一个I/O控制器控制多个I/O设备,也就是一个通道可以控制多台设备与内存交换数据

小结

I/O系统层次

用户层I/O软件

设备独立性软件
- 向上层提供统一的调用接口(如write/read系统调用)
- 设备保护
- 差错处理
- 设备分配与回收
- 数据缓冲区管理
- 建立逻辑设备名到物理设备名的映射关系,根据设备类型调用相应的设备驱动程序
设备独立性也叫设备无关性
类似于单级目录和两级目录
设备驱动程序
中断处理程序

硬件设备
- 电子部件(设备控制器/适配器)
- 机械部件(本身)
小结

I/O核心子系统
I/O调度与设备保护


SPOOLing技术(假脱机技术)

利用SPOOLing技术将独占设备改造成共享式设备



设备的分配与回收



设备分配的数据结构
分配过程
高速缓存与缓冲区


单缓冲区

解题技巧:

双缓冲区
区别
循环缓冲区

缓冲池

小结
