HYZ-OS-2013-设备管理概念教学幻灯片

上传人:youn****329 文档编号:143148385 上传时间:2020-08-26 格式:PPT 页数:39 大小:842.50KB
返回 下载 相关 举报
HYZ-OS-2013-设备管理概念教学幻灯片_第1页
第1页 / 共39页
HYZ-OS-2013-设备管理概念教学幻灯片_第2页
第2页 / 共39页
HYZ-OS-2013-设备管理概念教学幻灯片_第3页
第3页 / 共39页
HYZ-OS-2013-设备管理概念教学幻灯片_第4页
第4页 / 共39页
HYZ-OS-2013-设备管理概念教学幻灯片_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《HYZ-OS-2013-设备管理概念教学幻灯片》由会员分享,可在线阅读,更多相关《HYZ-OS-2013-设备管理概念教学幻灯片(39页珍藏版)》请在金锄头文库上搜索。

1、1,2020年8月26日星期三,北京交通大学计算机学院何永忠,操作系统(A),北京交通大学计算机学院 何永忠 副教授,第五章:设备管理,第五章 设备管理,5.1 I/O系统组成 5.2 I/O控制方式 5.3 设备管理目标、功能及结构 5.4 缓冲管理 5.5 设备分配 5.6 设备处理 5.7 磁盘存储器管理,5.1 I/O系统组成,5.1.1 I/O系统结构 5.1.2 I/O设备分类及接口 5.1.3 设备控制器 5.1.4 I/O通道,EISA总线,5.1 I/O系统组成,5.1.1 I/O系统结构 5.1.2 I/O设备分类及接口 5.1.3 设备控制器 5.1.4 I/O通道,I/

2、O设备分类,按数据传输速率分类 高速设备、中速设备、低速设备 按信息交换单位分类 块设备(传输速率高、可寻址、DMA) 字符设备(传输速率低、不可寻址、中断) 按设备共享属性分类 独占设备 共享设备 虚拟设备,Example Device-Transfer Rates (Sun Enterprise 6000),Device Rates vary over many orders of magnitude System better be able to handle this wide range Better not have high overhead/byte for fast dev

3、ices! Better not waste time waiting for slow devices,设备与设备控制器之间的接口,5.1 I/O系统组成,5.1.1 I/O系统结构 5.1.2 I/O设备分类及接口 5.1.3 设备控制器 5.1.4 I/O通道,设备控制器的功能,接收和识别命令 控制寄存器/命令译码器 数据交换(数据寄存器) 标识和报告设备状态(状态寄存器) 地址识别(地址译码器) 数据缓冲(缓冲器) 差错控制(差错检查码),设备控制器的组成,5.1 I/O系统组成,5.1.1 I/O系统结构 5.1.2 I/O设备分类及接口 5.1.3 设备控制器 5.1.4 I/O通

4、道,I/O通道及引入,通道引入的主要目的在于提高I/O过程的独立性,不仅使数据的传送能独立于CPU,而且使有关I/O操作的组织、管理与结束尽量独立,从而保证CPU有更多的时间进行数据处理 设置通道后,CPU只需向通道发出一条I/O指令;通道收到该指令后,便从内存取出本次要执行的通道程序并予执行;仅当其完成规定的I/O任务后,才向CPU发出中断信号 通道为特殊的处理机,其指令类型单一、无专有内存(与CPU共享内存),通过执行通道I/O程序来控制I/O操作,通道指令与通道程序,通道指令 读指令:外设=内存 写指令:内存=外设 控制指令:具体功能与所控设备有关,如磁带机反绕、磁盘机寻道、打印机换页等

5、 通道程序 通道指令的逻辑集合,由设备驱动程序自动生成,存放于内存特定区域,通道类型,字节多路通道 含有许多非分配型子通道分别连接在低、中速I/O设备上,子通道按时间片轮转方式共享主通道,按字节方式进行数据传送 数组选择通道 只含有一个分配型子通道,一段时间内只能执行一道通道程序、控制一台设备按数组方式进行数据传送,通道独占且利用率低,用于连接多台高速设备 数组多路通道 含有多个非分配型子通道分别连接在高、中速I/O设备上,子通道按时间片轮转方式共享主通道,按数组方式进行数据传送,通道瓶颈问题及解决方案,5.1 I/O系统组成,5.1.1 I/O系统结构 5.1.2 I/O设备分类及接口 5.

6、1.3 设备控制器 5.1.4 I/O通道,第五章 设备管理,5.1 I/O系统 5.2 I/O控制方式 5.3 设备管理目标、功能及结构 5.4 缓冲管理 5.5 设备分配 5.6 设备处理 5.7 磁盘存储器管理,5.2 I/O控制方式,程序I/O控制方式 简单的忙-等待方式 中断驱动I/O控制方式 中断机制的引入 直接存储器访问控制方式 DMA控制器、数据传输单位扩大 I/O通道控制方式 通道、I/O操作组织和数据传送的独立,程序I/O控制方式,中断驱动I/O控制方式,直接存储器访问控制方式,数据传输单位 数据块 数据传输途径 设备内存 CPU干预 限于数据块传送开始与结束,DMA控制器

7、组成,基于DMA磁盘读入数据流程,CPU,DMA 控制器,I/O通道控制方式,通道程序,同一记录操作,通道程序的执行流程,第五章 设备管理,5.1 I/O系统组成 5.2 I/O控制方式 5.3 设备管理目标、功能及结构 5.4 缓冲管理 5.5 设备分配 5.6 设备处理 5.7 磁盘存储器管理,What is the Role of I/O?,Without I/O, computers are useless (disembodied brains?) But thousands of devices, each slightly different How can we standar

8、dize the interfaces to these devices? Devices unreliable: media failures and transmission errors How can we make them reliable? Devices unpredictable and/or slow How can we manage them if we dont know what they will do or how they will perform?,The Goal of the I/O Subsystem,Provide uniform interface

9、s, despite wide range of different devices This code works on many different devices: FILE fd = fopen(“/dev/something”,“rw”);for (int i = 0; i 10; i+) fprintf(fd, “Count %dn”,i);close(fd); Why? Because code that controls devices (“device driver”) implements standard interface Improve CPU and I/O par

10、allelism Easy add new I/O device,Want Standard Interfaces to Devices,Block Devices: e.g., disk drives, tape drives, DVD-ROM Access blocks of data Commands include open(), read(), write(), seek() Raw I/O or file-system access Memory-mapped file access possible Character/Byte Devices: e.g., keyboards,

11、 mice, serial ports, some USB devices Single characters at a time Commands include get(), put() Libraries layered on top allow line editing Network Devices: e.g., Ethernet, Wireless, Bluetooth Different enough from block/character to have own interface Unix and Windows include socket interface Separ

12、ates network protocol from network operation Includes select() functionality,How Does User Deal with Timing?,Blocking Interface: “Wait” When request data (e.g., read() system call), put process to sleep until data is ready When write data (e.g., write() system call), put process to sleep until devic

13、e is ready for data Non-blocking Interface: “Dont Wait” Returns quickly from read or write request with count of bytes successfully transferred to kernel Read may return nothing, write may write nothing Asynchronous Interface: “Tell Me Later” When requesting data, take pointer to users buffer, retur

14、n immediately; later kernel fills buffer and notifies user When sending data, take pointer to users buffer, return immediately; later kernel takes data and notifies user,设备管理及目标,设备管理程序用于控制与管理实现信息输入、输出和存储的设备。由于I/O设备不仅种类繁多,而且彼此特性和操作方式相差较大,从而使设备管理成为操作系统中最繁杂且与硬件紧密相关的部分。 主要目标 方便用户使用,实现对不同类型设备的统一管理、使用并协调各

15、台外围设备的并发运作 提高系统I/O效率,缓解CPU和多种不同处理速度的外围设备之间的矛盾 设备管理的可扩充性,包括设备的增加和删除以及对新的设备类型的适应性,设备管理的功能,提供设备使用的用户接口 命令接口和编程接口 设备分配和释放 分配设备及相应的通道、设备控制器。 设备的访问和控制 并发访问及差错处理。 I/O缓冲和调度 提高I/O访问效率,缓解CPU与外设矛盾,设备管理层次结构,设备管理结构,用户空间I/O请求层 提供对逻辑设备的控制。具体来说,针对用户接口,提供抽象的命令,如Open, Close, Read, Write;针对通信设备,提供通信体系结构如网络协议栈;针对文件存储设备

16、,提供文件系统的逻辑结构控制。 设备独立性软件层 逻辑设备与物理设备间过渡协调机构,实现用户命令到设备操作序列的转换,提供缓冲机制 设备调度和控制层 实现硬件物理设备的设备驱动、设备控制、状态维护、中断处理及并发I/O访问调度,Q1: True _ False _ With an asynchronous interface, the writer may need to block until the data is written Q2: True _ False _ Interrupts are more efficient than polling for handling very frequent requests Q3: True _ False _ Segmentation fault is an example of synchronous exception (trap) Q4: True _ False _ DMA is more efficient than programmed I/O for transferring large

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 教学课件 > 高中课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号