发这篇文章是因为2021年有道题目:下列选项中,不属于I/O接口的是()
A. 磁盘驱动器;B. 打印机适配器;C. 网络控制器;D. 可编程中断控制器
这题选A。
一、外设
- I/O设备的分类
- 按传输速率分
- 低速设备:键盘
- 中速设备:打印机
- 高速设备:磁盘
- 按信息交换单位分
- 字符设备(如键盘):
- 信息交换以字符为单位,传输速率低
- 不可寻址
- 通常采用“中断控制方式”
- 块设备(如磁盘):
- 信息交换以块为单位,传输速率高
- 可寻址
- 通常采用DMA控制方式。
- 网络设备(?):
- 以格式化报文(也称为分组或数据包)的形式进行数据通信的设备
- 字符设备(如键盘):
- 按设备的共享属性分
- 独占设备(如打印机):
- 一段时间只允许一个进程访问,属于临界资源
- 若分配不当,可能导致死锁。
- 共享设备(如磁盘):
- 一段时间内允许多个进程访问,但每个时刻只有一个进程访问(可并发,不可并行)
- 不会导致死锁
- 必须是可寻址、可随机访问的设备。
- 虚拟设备(如通过Spooling技术改造后的打印机):
- 将一台独占设备虚拟为若干台逻辑设备
- 物理上是独占设备,但逻辑上是共享设备
- 独占设备(如打印机):
- 按传输速率分
- 输入设备:键盘、鼠标、触摸屏、跟踪球、控制杆、数字化仪、扫描仪、手写笔、光学字符阅读机等
- 媒体输入设备(成块传送设备):光学字符阅读机、扫描仪等
- 一般采用成批输入方式,一次成批输入一块数据,输入过程不需操作者干预
- 交互式输入设备:键盘、鼠标、触摸屏、跟踪球、手写笔等
- 媒体输入设备(成块传送设备):光学字符阅读机、扫描仪等
- 输出设备:显示器、打印机、绘图仪等
- 输入/输出设备:磁盘驱动器、光盘驱动器、CRT终端、网卡之类的通信设备
二、I/O接口
如显卡、磁盘控制器、以太网卡(网络控制器)、USB控制器、声卡、视频卡。
现代计算机中都配有完善的异常和中断处理系统:
- CPU的数据通路中有相应的异常和中断的检测和响应逻辑
- 外设接口中有相应的中断请求和控制逻辑
- 操作系统中有相应的中断服务程序
在中断控制器中有相应的中断判优电路和编码器。各个中断请求信号和对应的中断屏蔽位进行“与”操作后,送到判优电路选择级最高的未被屏蔽的中断源,最后通过编码器输出对应的中断类型号,即中断源标识信息。若是可编程的中断控制器,则响应优先级可灵活设置。
在设备控制器或DMA控制器通过中断控制器向CPU发出中断请求后,会调出中断服务程序执行
这些中断硬件线路和中断服务程序有机结合,共同完成异常和中断的处理过程。
各类外设控制器(包括适配器或适配卡)或DMA控制器、中断控制器等都属于I/O接口,职能包括数据缓冲、记录状态、传递命令、转换数据格式等。
三、几个名词辨析
- 设备控制器=I/O接口=I/O控制器
- 通道=I/O处理器=I/O处理机