5设备管理
5.1_1 I-O设备的概念和分类
1、什么是I-O设备
输入/输出:I/O设备就是可以将数据输入到计算机,或者可以接收计算机输出数据的外部设备,属于计算机中的硬件部件。
2、按使用特性分类
- 人机交互的外部设备
- 存储设备
- 网络通信设备
3、按传输速率分类
- 低俗设备
- 中速设备
- 高速设备
4、按信息交换的单位分类
- 块设备:传输速率高,可寻址,可随机读写在任一块
- 字符设备:慢,不可寻址
5.1_2 I-O控制器
(I-O设备=电子部件(I-O控制器)+机械部件)
机械部件:如鼠标等
电子部件功能:
1、接受和识别CPU发出的命令
控制寄存器
2、向CPU报告设备的状态
状态寄存器
3、数据交换
数据寄存器
4、地址识别
两种寄存器编址方式:内存映射I-O、寄存器独立编制
5.1_3 I-O控制方式
1、程序直接控制方式
轮询:完成一次读/写操作的流程
CPU干预频繁
每次读写一个字
实现简单
会使CPU忙等
2、中断驱动方式
让CPU发出IO指令后做其它的事情
大量中断会使cpu效率低
每次读写一个字
CPU和IO可并行工作
3、DMA方式:直接存储器存取
数据单位:连续的多个块
直接从设备到内存
减少了cpu干预
DR:数据寄存器
MAR:内存地址寄存器
DC:剩余读写字节数
CR:命令/状态寄存器
4、通道控制方式
弱鸡版cpu
通道程序:任务清单
cpu发送命令给通道,然后让通道处理IO操作就行了
处理完了,向cpu发送中断信号
5.1_4 I-O软件层次结构
1、用户层软件
实现与用户交互的接口,向上提供方便易用的库函数
2、设备独立性软件(设备无关性软件)
向上层提供统一的调用接口(read/write)
设备的保护
差错处理
设备的分配与回收
数据缓冲区管理
建立逻辑设备名到物理设备名的映射关系
根据设备类型选择调用相应的驱动程序
3、设备驱动程序(比如打印机驱动)
设置设备寄存器、检查设备状态
4、中断处理程序
进行中断处理
5、硬件
执行IO操作,有机械部件+电子部件组成