从程序员的角度简单介绍I/O的硬件组成和原理。
操作系统的主要功能之一是控制所有的输入输出,必须向设备发出指令,捕获中断并进行错误处理,还要提供一个设备与系统其余部分简单的接口。
I/O设备
I/O设备在速度上覆盖了巨大的范围,这给数据传输的性能保持上造成了巨大压力。
按交互对象分类
- 人机交互设备:视频显示设备、键盘、鼠标、打印机
- 与计算机或其他电子设备交互的设备:磁盘、磁带、传感器、控制器
- 计算机间的通信设备:网卡、调制解调器
按交互方向分类
- 输入(可读):键盘、扫描仪
- 输出(可写):显示设备、打印机
- 输入/输出(可读写):磁盘、网卡
按外设特性分类
- 使用特征:存储、输入/输出、终端
- 数据传输率:低速(如键盘)、中速(如打印机)、高速(如网卡、磁盘)
- 信息组织特征:单个字符或数据块
- 字符设备(如打印机、管道)
- 无法编址,也不存在寻址操作
- 块设备(如磁盘)
- 能够独立的读写单个数据块
设备控制器
I/O设备通常包含一个机械部件和一个电子部件。为了达到设计的模块性和通用性,一般将其分开。电子部分称为设备控制器(device controller)或适配器&#