资源预览内容
第1页 / 共117页
第2页 / 共117页
第3页 / 共117页
第4页 / 共117页
第5页 / 共117页
第6页 / 共117页
第7页 / 共117页
第8页 / 共117页
第9页 / 共117页
第10页 / 共117页
亲,该文档总共117页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第五章设备管理 5 1I O系统5 2I O控制方式5 3缓冲管理5 4设备分配5 5设备处理5 6磁盘存储器管理 设备管理的要点 管理对象 I O设备 设备控制器和I O通道 管理任务 完成用户提出的I O请求 提高I O效率和I O设备的利用率 CPU I O社别设备之间并行 管理功能 设备分配 设备处理 缓冲管理 虚拟设备和实现设备的独立性等 管理难度 由于I O设备种类繁多 操作特性和方式相差很大 且与硬件紧密相关 设备管理成为操作系统最复杂的组成部分 5 1I O系统 5 1 1I O设备 1 I O设备的类型 1 按传输速率分类 可将I O设备分为三类 第一类是低速设备 传输速率每秒钟几个字节至数百个字节 典型设备有键盘 鼠标器 语音的输入和输出等设备第二类是中速设备 传输速率每秒钟数千个字节至数万个字节典型设备有行式打印机 激光打印机第三类是高速设备 传输速率在数几十万个字节至数十兆字节典型设备有磁带机 磁盘机 光盘机 I O系统 用于实现数据的输入 输出和存储的系统 2 按信息交换的单位分类 可将I O设备分成两类 块设备 BlockDevice 主要特点 存取信息以数据块为单位 典型的块设备是磁盘 每个盘块的大小为512B 4KB 可寻址 可随机地读 写任一块 磁盘设备的I O常采用DMA方式 字符设备 CharacterDevice 主要特点 以字符为单位实施数据的I O操作 纸带机 字符终端 键盘等 但现在大多数以某个长度的字符流记录为单位传送数据 显示器以桢为单位 打印机以行为单位 不可寻址 CPU不能对字符设备上的信息直接寻址和查找 3 按设备的共享属性分类 可将I O设备分为如下三类 独占设备 临界资源 串行使用 如打印机 共享设备 可在某一时间段内并发访问 但在某一时刻只能有一个进程访问 可寻址和随机访问是共享的基础 如磁盘 虚拟设备 使用虚拟技术将物理上的一台设备变为逻辑上的多台设备 共享打印机 4 按设备的使用特性分 存储设备输入输出设备 I O设备一般由机械和电子两部分组成 通常将这两部分分开处理 以提供更加模块化 更加通用的设计 电子部分称作设备控制器或适配器 DeviceController或Adapter 机械部分就是设备本身 通过电缆与控制器连接 而设备控制器插在系统主板的扩充插槽里与主机相连 2 设备与控制器之间的接口 设备与控制器之间的接口 图5 1设备与控制器间的接口 数据信号线 在控制器与设备之间传输数据 设备产生的数据信号应经过转换器转换 控制信号线 由控制器向设备发送各种操作信号 如读 写等 状态信号线 传输设备的当前状态 如就绪 忙 故障等 信号 5 1 2设备控制器 1 设备控制器的基本功能 设备控制器是CPU与I O设备之间的接口 通信桥梁 CPU通过设备控制器来控制I O设备完成各种I O操作 并传输数据 接收和识别命令 CPU向设备控制器发送各种设备操作命令 应能接收和识别 因此也必须具备命令 控制寄存器 数据交换 在CPU与设备控制器 设备控制器与设备之间实现数据交换 前者通过数据总线并行传输 后者在控制器与设备之间传输 控制器应具备数据寄存器 5 1 2设备控制器 1 设备控制器的基本功能 3 标识和报告设备的状态 控制器中必须设置一状态寄存器向CPU提供设备的工作状态 4 地址识别 系统中每一个设备都配有相应的地址 控制器应能识别设备地址和自己内部的寄存器地址 5 数据缓冲 控制器在高速的CPU和低速的设备之间交换数据信息 必须设置数据缓冲 数据寄存器 以实现数据通信速率的匹配 6 差错控制 检测设备传来数据的正确性 并及时向CPU报告数据传输错误 2 设备控制器的组成 三部分 图5 2设备控制器的组成 图示说明 四种接口数据 存放实际要输入输出的数据地址 通常对块设备而言 存放设备的地址控制 存放对设备的控制命令状态 存放设备的状态信息三种信号线地址线 传送的是接口各类寄存器的地址 数据线 传送的是写入 或读出 各接口寄存器的内容 控制线 传送CPU对控制器的操作控制信息 读 写等 而非对设备的控制信息 在控制寄存器中 5 1 3I O通道 1 I O通道 I OChannel 设备的引入 通道定义 I O通道是一种为完成I O操作任务而设置的特殊处理机 工作原理 为了减轻CPU对I O设备 控制器 的繁重控制操作 在CPU和设备控制器之间设置一通道 代替CPU来控制和处理I O操作 因此 I O通道是一种特殊的处理机 工作过程 通道接收到CPU启动命令后 从内存中取出本次要执行的通道程序并执行 完成I O操作时 通过中断报告CPU I O通道又与一般的处理机差异 一是其指令类型单一 通道硬件比较简单 其所能执行的命令主要局限于与I O操作有关的指令 二是通道没有自己的内存 通道与CPU共享内存 通道类型如下 字节多路通道 以字节为单位传送数据 它主要用来连接大量的低速设备 如终端 打印机等 数组选择通道 以块为单位成批传送数据 具有传送速度高的特点 因而它被用来连接高速外部设备 如磁盘机等 数组多路通道 以块为单位传送数据 主要用来连接中速块设备 如磁带机等 它具有传送速率高和能分时操作不同的设备等优点 被广泛使用 数组多路通道和字节多路通道都具有 多路 的特点 一段时间内都可以交替执行多个设备的通道程序 宏观上使这些设备同时I 0 而选择通道一次只能执行一个设备的通道程序 所以 选择通道一次只能控制一台设备进行I 0操作 2 通道类型 1 字节多路通道 ByteMultiplexorChannel 图5 3字节多路通道的工作原理 2 数组选择通道 BlockSelectorChannel 这种通道虽然可以连接多台高速设备 但由于它只含有一个分配型子通道 在一段时间内只能执行一道通道程序 控制一台设备进行数据传送 致使当某台设备占用了该通道后 便一直由它独占 而其它设备处于等待 直至该设备传送完毕释放该通道 可见 这种通道的利用率很低 控制器1 控制器2 控制器n 子通道 主通道 3 数组多路通道 BlockMultiplexorChannel 数组多路通道是将数组选择通道传输速率高和字节多路通道能使各子通道 设备 分时并行操作的优点相结合而形成的一种新通道 它含有多个非分配型子通道 因而这种通道既具有很高的数据传输速率 又能获得令人满意的通道利用率 也正因此 才使该通道能被广泛地用于连接多台高 中速的外围设备 其数据传送是按数组方式进行的 3 瓶颈 问题 通道少 设备多 通路 通道被竞争共享 下图 图5 4单通路I O系统 图5 5多通路I O系统 5 1 4总线系统 图5 6总线型I O系统结构 计算机系统的硬件设备 包括CPU 内存 I O设备等均以系统总线结构相连接 如下图所示 总线性能由总线时钟频率 带宽和传输速率来决定 1 ISA和EISA总线 1 ISA IndustryStandardArchitecture 总线 这是为了1984年推出的80286型微机而设计的总线结构 其总线的带宽为8位 最高传输速率为2Mb s 之后不久又推出了16位的 EISA 总线 其最高传输速率为8Mb s 后又升至16Mb s 能连接12台设备 2 EISA ExtendedISA 总线 到80年代末期 ISA总线已难于满足带宽和传输速率的要求 于是人们又开发出扩展ISA EISA 总线 其带宽为32位 总线的传输速率高达32Mb s 同样可以连接12台外部设备 2 局部总线 LocalBus VESA VideoElectronicStandardAssociation 总线带宽32位 最高数据传输速率为132Mb s 缺点连接外设仅为2 4台2 PCI PeripheralComponentInterface 总线 目前广泛采用的是32 bit 33MHz的PCI总线 传输带宽达到了133MB s 33MHzX32bit 8 随着对更高性能的要求 1993年提出此了64 bit的PCI总线 后来又提出把PCI总线的频率提升到66MHz 局部总线 为适应多媒体显示 通信和处理等高速数据传输设备要求 在设备与CPU之间直接建立总线 使他们能以与高速CPU可匹配的速率实施通信和数据传输 加速图形接口 AcceleratedGraphicsPort 为了弥补PCI的不足 如3D显卡 Intel于1996年7月正式推出了AGP 加速图形接口 AcceleratedGraphicsPort 接口 这是显示卡专用的局部总线 是基于PCI2 1版规范并进行扩充修改而成 工作频率为66MHz 1X模式下带宽为266MB S 是PCI总线的两倍 后来依次又推出了AGP2X AGP4X 现在则是AGP8X 传输速度达到了2 1GB S PCIExpress 2001年春季IDF期间 Intel公司宣布将会开发第三代输入输出技术 3GIO技术 来取代现有的PCI总线技术 同年8月份 PCI SIG批准了代号为Arapahoe的3GIO标准 第二年的4月份 PCI SIG和Arapahoe工作小组正式完成了3GIO的草案 并且将其正式命名为PCIExpress 2002年7月23日 PCI SIG正式发布了PCIExpress1 0版规范 第三代I O总线结构PCIExpress 3GIO 的出现就是一次革命 它不但能与原来的PCI设备兼容工作 还可以增强原有设备的性能 PCIExpress 3GIO 的特点就是高性能 高扩展性 高可靠性 很好的升级性以及低花费 它必然取代现在的PCI总线 PCI E达到速率为10GB s 宗旨 尽量减少主机对I O控制的干预 把主机从繁杂的I O控制事务中解脱出来 以更多地去完成其数据处理任务 发展阶段 5 2I O控制方式 程序I O方式 中断驱动方式 DMA方式 通道方式 5 2 1程序I O方式 工作原理 当CPU启动设备控制器实施I O设备输入 输出数据的同时 便置状态寄存器闲忙标志位为1 然后一直测试和等待状态标志位变为0 表示设备已完成本次字符数据输入或输出 若是输入数据 CPU此时可将输入好的数据从控制器数据寄存器中取出放入指定的内存单元 随后CPU重复上述步骤 再继续下一次数据的输入输出 因此 将程序I O方式也称为忙 等待方式 特点 CPU的高速性和I O设备的低速性 致使CPU的绝大部分时间都处于等待I O设备完成数据I O的循环测试中 造成对CPU的极大浪费 关键是在CPU中无中断机构 使I O设备无法向CPU报告它已完成了一个字符的输入操作 忙等待 无中断机构 注意 每次读一个字节的数据 5 2 2中断驱动I O控制方式 控制原理 在引入中断方式中 当某进程需要I O操作时 仅由CPU给设备控制器发出一条I O指令 然后由控制器控制设备进行设备的I O操作 而CPU返回继续执行其它任务 当设备完成I O操作时 控制器才给CPU发出中断取走准备好的数据 并放入内存 随后 再继续重复进行I O操作 特点 I O操作无需CPU干预 可使CPU与I O设备并行工作 仅当输完一个数据时 才需CPU花费极短的时间去做些中断处理 可见 这样可使CPU和I O设备都处于忙碌状态 从而提高了整个系统的资源利用率及吞吐量 中断控制的具体工作过程 1 当进程A要求I O操作 由CPU向设备控制器发送I O操作指令 将A进程变为等待状态 转进程调度 调度另一进程B 2 输入完成时 控制器发出中断 中断B进程执行 通过中断进入中断处理程序 3 在中断处理程序中把数据缓冲寄存器中的数取走 放入内存特定位置M 唤醒等待进程A 中断返回到B的断点继续执行 4 在以后的某个时刻OS调度调入进程A时 A从M取数处理 CPU与I O设备并行操作 中断驱动I O方式特点 优点 同程序I O方式相比 CPU利用率大大提高 缺点 如果设备较多时 中断次数会很多 使CPU的计算时间大大减少 缺点改进方式 为减少中断对CPU造成的负担 可采用DMA
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号