编辑: GXB156399820 | 2014-01-03 |
1 操作系统 第二十一讲 王宇英 wangyy@nwpu.
edu.cn OSLec21
2 Review 文件系统概述 文件的结构和存取法 文件目录 文件存储空间的管理 文件系统的使用 文件的共享与保护 OSLec21
3 概述 I/O控制方式
第六章 输入/输出系统 I/O系统硬件特点 OSLec21
4 计算机组成 I/O设备操作系 统如何管理? OSLec21
5 现代I/O设备 OSLec21
6 I/O的特点 ? I/O性能经常成为系统性能的瓶颈 ? CPU性能不等于系统性能 ? CPU性能越高,与I/O差距越大 ? 进程切换多,系统开销大 ? 操作系统庞大复杂:资源多、杂,并发,均来 自I/O ? 与其他功能联系密切,特别是文件系统 OSLec21
7 I/O管理示意图 OSLec21
8 6.1 概述 ? 设备的分类
1、按传输速率分 ? 低速设备 ? 中速设备 ? 高速设备
2、按信息交换的单位分类 ? 字符设备:速率较低、中断驱动. ? 块设备:速率高(几兆)、可随机访问任一块、DMA 方式驱动.
3、顺序(Sequential)/随机(Random)存取设备
4、轮询(Polling)/中断(Interrupts) ? 轮询设备需要不断监控 ? 中断设备在需要服务的时候产生中断 OSLec21
9 设备管理的目标 ? 实现设备独立性 ? 提高设备利用率 ? 设备的统一管理 ? 速度 ? 传递单位 ? 操作方法和特性 ? 出错条件 OSLec21
10 设备管理的功能
1、监视系统中所有设备的状态
2、设备的分配
3、I/O控制 OSLec21
11 设备管理数据结构 ? 设备控制块(DCB) ? 设备标识符 ? 设备属性 ? 设备I/O总线地址 ? 设备状态 ? 等待队列指针 OSLec21
12 6.2 I/O系统硬件特点 ? 设备组成 ? (1)物理部分:物理设备机械部分,设备本身 ? (2)电子部分:设备控制器 ? 电子部分(设备控制器)完成的工作 ? (端口)地址译码 ? 接受主机发来的数据和控制信号,向主机发 送数据和状态信号 ? 将计算机的数字信号转换成机械部分能识别 的模拟信号,或反之 ? 实现设备内部硬件缓冲、数据加工等,提高 性能或增强功能 OSLec21
13 6.2.1 设备接口 ? 操作系统将命令写入控制器的接口寄存器(或 接口缓冲区)中,以实现输入/输出,并从接 口寄存器读取状态信息或结果信息 I/O控制器 OSLec21
14 6.2.2 端口编址方法 ? 内存映像编址(内存映像I/O模式):分配给系统中所 有端口的地址空间与内存的地址空间统一编址 ? 优点 ? 凡是可对存储器操作的指令都可对I/O端口操作 ? 不需要专门的I/O指令 ? I/O端口可占有较大的地址空间 ? 缺点:占用内存空间 ? I/O独立编址(I/O专用指令):分配给系统中所有端口 的地址空间完全独立,主机使用专门的I/O指令对端口 进行操作 ? 优点 ? 外部设备不占用内存的地址空间 ? 程序设计时易于区分是对内存操作还是对I/O端口操作 ? 缺点:对I/O端口操作的指令类型少,操作不灵活 OSLec21
15 I/O内存映像编址实例 Memory Mapped 显示控制 如Addr: 0x8000F000―0x8000FFFF 写入该段内存就可以直接修改显 示屏幕内容 OSLec21
16 I/O独立编址实例 OSLec21
17 6.3 I/O控制方式 ? (1)程序直接控制方式(循环查询I/O方式) ? (2)I/O中断方式 ? (3)直接存储器存取方式(direct memory access,DMA) ? (4)I/O通道控制方式(I/O channel control) ? (5)外围处理机输入输出方式(peripheral processor unit) OSLec21
18 6.3.1 程序控制I/O方式 ? I/O操作由程序发起 ? 处理器定期轮询I/O单 元的状态 ? 直到处理完 优点:简单、实时 缺点:耗费大量时间轮询信 息,严重降低系统性能 OSLec21