Alex_McAvoy

想要成为渔夫的猎手

I/O 设备与设备控制器

【I/O 设备类型】

I/O 设备的类型繁多,常见的分类角度有按使用特性分类、按传输速率分类两种

按使用特性分类:

  • 传输速率:低速、中速、高速
  • 使用:存储设备、输入输出设备
  • 信息交换的单位
    • 块设备:有结构、速率高、可寻址、DMA方式控制
    • 字符设备:无结构、速率低、不可寻址、中断方式控制

按设备共享属性分类:

  • 独占:一个时刻只能被一个进程占用,如打印机
  • 共享:一个时刻上仍然是只被一个进程占用,但可寻址、随机访问,如磁盘。
  • 虚拟:使一台独占设备变换为若干台逻辑设备,供给若干用户“同时使用”

【设备控制器】

设备与控制器间的接口

通常,设备并不是直接与 CPU 通信,而是与设备控制器通信,因此在 I/O 设备中应含有与设备控制器间的接口,其有三种类型:

  • 数据信号线:设备与设备控制器间传送数据信号
  • 控制信号线:由设备控制器向 I/O 设备发送控制信号时的通路
  • 状态信号线:传送指示设备当前状态的信号

设备控制器基本功能

设备控制器的主要功能是控制一个或多个 I/O 设备,以实现 I/O 设备和计算机间的数据交换

其是 CPU 与 I/O 设备间的接口,接收从 CPU 发来的命令,去控制 I/O 设备工作,使处理机能够从繁忙的设备控制事务中脱离出来

此外,其还具有接收和识别 CPU 命令、标识和报告设备的状态、数据交换、地址识别、数据缓冲、差错控制等功能

组成

设备控制器位于 CPU 与设备间,既要与 CPU 通信,又要与设备通信,还应具有按照 CPU 所发来的命令去控制设备工作的功能,因此,现有的大多数控制器都是由以下三部分组成:

  • 设备控制器与处理机的接口
  • 设备控制器与设备的接口
  • I/O逻辑

【I/O 通道】

概述

设备控制器已大大减少 CPU 对 I/O 的干预,但当主机的外设很多时,CPU 的负担仍然很重

为此,可在CPU和设备控制器之间增设一个硬件机构:通道,其主要目的是建立更独立的 I/O 操作,以此来解放CPU

设置通道后,CPU 只需向通道发送一条 I/O 指令即可不再干预后续操作,通道形成通道程序,执行 I/O 操作,完成后向 CPU 发中断信号

实际上 I/O 通道是一种特殊的处理机,其指令类型单一,只用于I/O操作,且没有内存,与 CPU 共享内存

通道类型

根据其控制的外围设备的不同类型,信息交换方式也可分为以下三种类型:

  • 字节多路通道:按字节交叉方式工作的通道,不适用连接高速设备
  • 数组选择通道:按数组方式进行数据传送的通道,每次只允许连接一个设备传输数据
  • 数组多路通道:在数组选择通道的基础上进行了改进,允许连接多个设备

瓶颈问题

由于通道价格昂贵,致使数量较少,使它成为 I/O 系统的瓶颈,进而造成系统吞吐量的下降,即瓶颈问题

而解决瓶颈问题有效办法就是增加设备到主机间的通路而不增加通道

感谢您对我的支持,让我继续努力分享有用的技术与知识点!