C7设备管理.ppt_第1页
C7设备管理.ppt_第2页
C7设备管理.ppt_第3页
C7设备管理.ppt_第4页
C7设备管理.ppt_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第七章设备管理 概述 I/O硬件特点 I/O软件的组成 I/O设备有关技术 设备处理 典型外部设备,I/O管理示意,7.1 概述 7.1.1 设备管理的重要性 CPU与I/O的速度差别大 尽量使两者交叠运行 减少由于速度差异造成的整体性能开销 I/O性能经常成为系统性能的瓶颈 CPU性能不等于系统性能 响应时间也是一个重要因素 CPU性能越高,与I/O差距越大 弥补:更多的进程 进程切换多,系统开销大, 操作系统庞大复杂的原因之一: 资源多、杂,并发,均来自I/O 外设种类繁多,结构各异 输入输出数据信号类型不同 速度差异很大 理解 I/O 的工作过程与结构是理解操 作系统的工作过程与结构的关

2、键 I/O技术很实用 与其他功能联系密切,特别是文件 系统,各类设备的差别 数据传输率 控制方式的复杂性 数据传输单位 数据表示 应用 出错条件,7.1.2 设备的分类 按设备的使用特性分类 输入设备、输出设备、交互式设备、存储设备等 2. 按设备的信息组织方式分类 块设备 以数据块为单位存储、传输信息 字符设备 以字符为单位存储、传输信息,3.按设备使用可共享性分类 独占设备:在一段时间内只能有一个进程使 用的设备,一般为低速I/O设备(如打印 机,磁带等) 共享设备:在一段时间内可有多个进程共同 使用的设备,多个进程以交叉的方式来 使用设备,其资源利用率高(如硬盘) 虚设备:在一类设备上模

3、拟另一类设备,常 用共享设备模拟独占设备,用高速设备 模拟低速设备,被模拟的设备称为虚设 备,7.1.3 设备管理的功能 按照用户的请求,控制设备的各种操作,完 成 I/O 设备与内存之间的数据交换(包括设备 分配与回收; 设备驱动程序; 设备中断处理; 缓冲区管理),最终完成用户的I/O请求 设备分配与回收 记录设备的状态。根据用户的请求和设备的类 型,采用一定的分配算法,选择一条数据通路 建立统一的独立于设备的接口 完成设备驱动程序,实现真正的I/O操作 处理外部设备的中断处理 管理I/O缓冲区,2. 向用户提供使用外部设备的方便接 口,使用户摆脱繁琐的编程负担 方便性 友好界面 透明性

4、逻辑设备与物理设备、屏蔽硬件细节 (设备的物理细节,错误处理,不同I/O 的差异性),3. 充分利用各种技术(通道,中断,缓 冲等)提高CPU与设备、设备与设备之 间的并行工作能力,充分利用资源,提 高资源利用率 并行性 均衡性(使设备充分忙碌) 4. 保证在多道程序环境下,当多个进程 竞争使用设备时,按一定策略分配和 管理各种设备,使系统能有条不紊的 工作,5. 保护:设备传送或管理的数据应该是 安全的、不被破坏的、保密的 6. 与设备无关性(设备独立性) 用户在编制程序时,使用逻辑设备 名,由系统实现从逻辑设备到物理设 备(实际设备)的转换 用户能独立于具体物理设备而方便的 使用设备,用户

5、申请使用设备时,只需要指定设备类型,而无须指定具体物理设备,系统根据当前的请求,及设备分配的情况,在相同类别设备中,选择一个空闲设备,并将其分配给一个申请进程 优点: 设备忙碌或设备故障时,用户不必修 改程序 改善了系统的可适应性和可扩展性,7.1.4 I/O设备控制模式 1. 直接I/O(轮询) 由CPU负责在机器内存与设备控制器数 据寄存器之间进行数据传送 2. 中断驱动I/O 为了减少设备驱动程序不断地询问控制 器状态, 当I/O操作结束后,由设备控制 器主动通知设备驱动程序 3. DMA 4. 通道,7.1.5 设备管理功能的实现方式 通过I/O软件和硬件共同配合实现设备管理 1. I

6、/O软件结构 一般的软件结构分为四层 中断处理程序 设备驱动程序 与设备无关的操作系统软件 用户级软件 2. 接口(向用户提供逻辑操作) 对不同的设备采取统一的操作方式,在用户 程序中使用的是逻辑设备 逻辑设备 物理设备,7.2 I/O硬件特点 7.2.1 I/O设备的组成 组成 I/O设备一般由机械和电子两部分组成 把这两部分分开处理,以提供更加模 块化,更加通用的设计,电子部分完成的工作 (端口)地址译码 按照主机与设备之间约定的格式和过程 接受计算机发来的数据和控制信号 向主机发送数据和状态信号 将计算机的数字信号转换成机械部分能 识别的模拟信号,或反之 实现设备内部硬件缓冲、数据加工等

7、提 高性能或增强功能,2. 特点 操作异步性 处理机与I/O设备以各自不同的处理速 度工作 设备自治性 现代的输入输出设备往往可以独立运行 接口通用性 设备和系统相连使用遵循统一标准的接 口,3. I/O设备控制器 输入输出设备的电子部件叫做设备控制器或适配器 端口地址译码 接受或发送控制信号或数据 缓冲存储 完成对I/O设备的控制、信息传递、 数据加工等任务,7.2.2 I/O设备接口 一个I/O过程由四步组成: 准备 启动 测试和等待 结果检查和错误处理 通过对设备控制器的接口寄存器组的 读写完成 设备接口复杂繁琐,操作系统将命令写入控制器的接口寄存器(或接口缓冲区)中,以实现输入输出,并

8、从接口寄存器读取状态信息或结果信息 例如:IBM PC的软盘控制器可接收15条命令, READ、WRITE、FORMAT、SEEK、RECALIBRATE,命令可以带参数,它们被一起送入控制器的寄存器中 当控制器接受一条命令后,可独立于CPU完成指定操作,CPU可以转去执行其它运算。命令完成时, 控制器产生一个中断,CPU响应中断,控制转给操 作系统。CPU通过读控制器寄存器中的信息,获得操作结果和设备状态,控制器与设备之间的接口常常是一个低级接口 例如磁盘,可以按每个磁道8扇区,每个扇区512个字节进行格式化。然而,实际从驱动器出来的 却是一连串的位流,以一个头标(preamble)开 始,

9、然后是一个扇区的4096位(5128),最后 是检查和或错误校验码(ErrorC一C:ECC)。头标是在对磁盘格式化时写上的,它包括柱面和 扇区数,扇区的大小和类似的一些数据 控制器的任务是把串行的位流转换为字节块,并 进行必要的错误修正。首先,控制器按位进行组装,然后存入控制器内部的缓冲区中形成以字节为单位的块。在对块验证检查和并证明无错误时,再将它复制到主存中,设备连接模式 指I/O设备与CPU之间的连接方式,亦即将设备连接到一个计算机系统上的方式 在一个确定的连接模式下,从I/O设备到CPU间的所有连接成分构成了一条I/O路径(I/O链) 设备连接方式 基本连接方式 微机连接方式 大型机

10、连接方式,端口编址方法 接口电路中:多个寄存器 一个寄存器有唯一的一个地址,每个地 址为I/O端口,该地址称为I/O端口地址。 I/O指令形式与I/O地址是相互关联的 主要有两种形式: 内存映像编址(内存映像I/O模式) I/O独立编址(I/O专用指令),存储映像编址 分配给系统中所有端口的地址空间与内存的地址空间统一编址 主机把I/O端口看作一个存储单元,对I/O的读写操作等同于对存储器的操作 优点 凡是可对存储器操作的指令都可对I/O端口操作 不需要专门的I/O指令 I/O端口可占有较大的地址空间 缺点:占用内存空间,I/O独立编址 分配给系统中所有端口的地址空间是完全独立 的,与内存的地

11、址空间没有关系 主机使用专门的I/O指令对端口进行操作 优点 外部设备不占用内存的地址空间 程序设计时,易于区分是对内存操作还是对I/O端口 操作 缺点:对I/O端口操作的指令类型少,操作不灵活 例子:8086/8088,分配给I/O端口的地址空间 64K,0000H0FFFFH,只能用IN和OUT指令对其 进行读写操作,7.3 I/O软件的组成 IO软件的基本思想是按分层的思想构 成,较低层软件要使较高层软件独立于 硬件的特性,较高层软件则要向用户提 供一个友好的、清晰的、简单的、功能 更强的接口,7.3.1 IO软件的目标 1 设备的独立性 设备的独立性指出了直接与设备打交 道的低层软件外

12、,其他部分软件不依 赖于硬件 2 统一命名 在系统中采取愈小设计的统一的逻辑 名称,对各类设备进行命名,并应用 在同设备有关的全部软件模块中 统一命名不依赖于设备,I/O软件各层的功能 1. 用户进程层执行输入输出系统调用,对I/O 数据进行格式化,为假脱机输入输出作 准备 独立于设备的软件实现设备的命名、设备 的保护、成块处理、缓冲技术和设备分配 设备驱动程序设置设备寄存器、检查设备 的执行状态 中断处理程序负责IO完成时,唤醒设备 驱动程序进程,进行中断处理 5. 硬件层实现物理IO的操作,2. 中断处理程序 每个进程在启动一个IO操作后阻塞 直到IO操作完成并产生一个中断 由操作系统接管

13、CPU后唤醒该进程为止,3.设备驱动程序 设备驱动程序是直接与硬件打交道的软 件模块 与设备密切相关的代码放在设备驱动程 序中,每个设备驱动程序处理一种设备 类型。 每一个控制器都设有一个或多个设备寄 存器,用来存放向设备发送的命令和参 数。设备驱动程序负责释放这些命令, 并监督它们正确执行,一般,设备驱动程序的任务是接收来自与设备无关的上层软件的抽象请求,并执行这个请求 在设备驱动程序的进程释放一条或多条命令后,系统有两种处理方式,多数情况下,执行设备驱动程序的进程必须等待命令完成,这样,在命令开始执行后,它阻塞自已,直到中断处理时将它解除阻塞为止。而在其它情况下,命令执行不必延迟就很快完成

14、,4.设备独立的软件 虽然IO软件中 一部分是设备专 用的,但大部分 软件是与设备无 关的。设备驱动 程序与设备独立 软件之间的确切 界限是依赖于具 体系统的,1.独立于设备的软件的基本任务是实现所有设备都需要的功能,并且向用户级软件提供一个统一的接口 2.如何给文件和设备这样的对象命名是操作系统中的一个主要课题。独立于设备的软件负责把设备的符号名映射到正确的设备驱动上 3.设备保护 系统如何防止无权存取设备的用户存取设备呢?,4.不同的磁盘可以采用不同的扇区尺寸。向较高层软件掩盖这一事实并提供大小统一的块尺寸,这正是设备独立软件的一个任务。它可将若干扇区合成一个逻辑块。这样,较高层的软件只与

15、抽象设备打交道,独立于物理扇区的尺寸而使用等长的逻辑块 5.缓冲技术 6.设备分配 7.出错处理,7.3.5 用户空间的IO软件 尽管大部分IO软件都包含在操作系统中,但仍有一小部分是由与用户程序连接在一起的库过程,甚至完全由运行于核外的程序构成。系统调用,包括IO系统调用,通常由库过程实现 这些过程所做的工作只是将系统调用时所用的参数放在合适的位置,由其它的IO过程实际实现真正的操作,7.4 I/O设备分配与回收 当某进程向系统提出I/O请求时,设备分配程序按一定策略分配设备、控制器和通道,形成一条数据传输通路,以供主机和设备间信息交换,强调 设备独立性 即:不能因为设备的忙碌、故障或更换而

16、影响程序的运行, 向用户屏蔽物理设备, 呈现给用户的一个操作简单的逻辑设备 强调 抽象的I/O 操作 即:设计一类通用的I/O指令,它们的含义对不同类型的设备作不同解释,而且,在操作系 统中,提供了若干I/O系统调用,由系统将抽 象的I/O 操作映射到专门的设备驱动程序,设备管理有关的数据结构 描述设备、控制器等部件的表格:系统中常常为每一 个部件、每一台设备分别设置一张表格,常称为设备 表或部件控制块。这类表格具体描述设备的类型、标 识符、进行状态,以及当前使用者的进程标识符等 建立同类资源的队列:系统为了方便对I/O设备的分配管理,通常在设备表的基础上通过指针将相同物理属 性的设备连成队列

17、(称设备队列) 面向进程I/O请求的动态数据结构:每当进程发出块 I/O请求时,系统建立一张表格(称I/O请求包)。将 此次I/O请求的参数填入表中,同时也将该I/O有关的 系统缓冲区地址等信息填入表中。I/O请求包随着I/O的完成而被删除 建立I/O队列:如请求包队列,7.4.1 设备分配用数据结构 可以设置数据结构: 设备控制表DCT 控制器控制表COCT 通道控制表CHCT 系统设备表SDT 1. 设备控制表DCT 主要内容:设备类型、设备标识符、设备状 态、与此设备相连的COCT、重复执行的次 数或时间、 等待队列的队首和队尾指针、 I/O程序地址,2. 系统设备表SDT 整个系统一张

18、表,记录系统中所有I/O设 备的信息 包括: 设备类型、设备标识符、进程标识符、 DCT表指针等 3. 控制器表COCT 每个控制器一张,I/O控制器的使用状态以及和通道的连接状态 4. 通道控制表,根据用户请求的I/O设备的逻辑名,查找逻辑设备和物理设备的映射表; 以物理设备为索引,查找SDT,找到该设备所连接的DCT; 继续查找与该设备连接的COCT和CHCT,就找到了一条通路,7.4.2 设备分配的原则 1. 设备分配原则 根据设备特性、用户要求和系统配置情况决定。 静态分配和动态分配 2.设备分配策略 I/O设备的固有属性 I/O设备的分配算法 设备分配的安全性 与设备的无关性, 独占设备的分配 独占式使用设备是以一次设备使用过程(包含多 次I/O操作)为单位使用设备在申请设备时,如果设备空闲,就将其独占,不再允许其他进程申请使用,一直等到该设备

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论