1 / 114

Ch10 设备管理

Ch10 设备管理. 10.1 概述 10.2 I/O 子系统的层次模型 10.3 I/O 硬件组成 10.4 设备驱动程序 10 .5 I/O 子系统 10.6 流 10.7 磁盘调度. 10.1 概述. 一、 I/O 管理的重要性 I/O 设备就像计算机系统的五官和四肢。 2.I/O 性能经常成为系统性能的瓶颈 (1)CPU 性能不等于系统性能 响应时间也是一个重要因素 (2)CPU 性能越高,与 I/O 差距越大 弥补:更多的进程 (3) 进程切换多,系统开销大.

aimon
Download Presentation

Ch10 设备管理

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ch10 设备管理 • 10.1 概述 • 10.2 I/O子系统的层次模型 • 10.3 I/O硬件组成 • 10.4 设备驱动程序 • 10.5 I/O子系统 • 10.6 流 • 10.7 磁盘调度

  2. 10.1 概述 一、 I/O管理的重要性 • I/O设备就像计算机系统的五官和四肢。 2.I/O性能经常成为系统性能的瓶颈 (1)CPU性能不等于系统性能 响应时间也是一个重要因素 (2)CPU性能越高,与I/O差距越大 弥补:更多的进程 (3)进程切换多,系统开销大

  3. 3.操作系统庞大复杂的原因之一是:资源多、杂,并发,均来自I/O。3.操作系统庞大复杂的原因之一是:资源多、杂,并发,均来自I/O。 4.理解I/O的工作过程与结构是理解操作系统的工作过程与结构的关键。 5.I/O技术很实用。 6.与其他功能联系密切,特别是文件系统。

  4. 二、 设备的分类 1.按使用特性分 存储型设备 输入型设备(外设主机) 输出型设备(主机外设) 输入输出型设备(交互型设备)

  5. 2.按数据组织分 块设备 以数据块为单位存储、传输信息 字符设备 以字符为单位存储、传输信息

  6. 3.按外部设备的从属关系分 系统设备 指操作系统生成时,登记在系统中的标准设备 (如终端、打印机、磁盘机等)

  7. 用户设备 指在系统生成时,未登记在系统中的非标准设备。对于这类设备的处理程序由用户提供,并将其纳入系统,由系统代替用户实施管理。 (如A/D,D/A转换器,CAD所用专用设备)

  8. 4. 按资源分配角度分 独占设备 在一段时间内只能有一个进程使用的设备,一般为低速I/O设备。(如打印机,磁带等) 共享设备 在一段时间内可有多个进程共同使用的设备,多个进程以交叉的方式来使用设备,其资源利用率高。(如硬盘)

  9. 虚设备 在一类设备上模拟另一类设备,常用共享设备模拟独占设备,用高速设备模拟低速设备,被模拟的设备称为虚设备 目的:将慢速的独占设备改造成多个用户可共享的设备,提高设备的利用率 (实例:SPOOLing技术,利用虚设备技术 ——用硬盘模拟输入输出设备)

  10. SPOOLing技术 为解决独立设备数量少,速度慢,不能满足众多进程的要求,而且在进程独占设备期间,设备利用率比较低而提出的一种设备管理技术

  11. 5.从程序使用角度分 逻辑设备 物理设备 6.按数据传输率分 高速设备 低速设备 7.按是否交互分

  12. 三、 设备管理的目标和任务 1. 按照用户的请求,控制设备的各种操作,完成I/O设备与内存之间的数据交换(包括设备分配与回收;设备驱动程序;设备中断处理;缓冲区管理),最终完成用户的I/O请求

  13. 功能 (1)设备分配与回收 记录设备的状态 根据用户的请求和设备的类型,采用一 定的分配算法,选择一条数据通路 (2)建立统一的独立于设备的接口 (3)完成设备驱动程序,实现真正的I/O操作 (4)处理外部设备的中断处理 (5)管理I/O缓冲区

  14. 2.向用户提供使用外部设备的方便接口,使用户摆脱繁琐的编程负担2.向用户提供使用外部设备的方便接口,使用户摆脱繁琐的编程负担 • 方便性 • 友好界面 • 透明性 逻辑设备与物理设备、屏蔽硬件细节(设备的物理细节,错误处理,不同I/O的差异性)

  15. 3.充分利用各种技术(通道,中断,缓冲等)提高CPU与设备、设备与设备之间的并行工作能力,充分利用资源,提高资源利用率3.充分利用各种技术(通道,中断,缓冲等)提高CPU与设备、设备与设备之间的并行工作能力,充分利用资源,提高资源利用率 • 并行性 • 均衡性(使设备充分忙碌)

  16. 4.保证在多道程序环境下,当多个进程竞争使用设备时,按一定策略分配和管理各种设备,使系统能有条不紊的工作4.保证在多道程序环境下,当多个进程竞争使用设备时,按一定策略分配和管理各种设备,使系统能有条不紊的工作 5.保护 设备传送或管理的数据应该是安全的、不被破坏的、保密的

  17. 6. 与设备无关性(设备独立性) 用户在编制程序时,使用逻辑设备名,由系统实现从逻辑设备到物理设备(实际设备)的转换 用户能独立于具体物理设备而方便的使用设备

  18. 用户申请使用设备时,只需要指定设备类型,而无须指定具体物理设备,系统根据当前的请求,及设备分配的情况,在相同类别设备中,选择一个空闲设备,并将其分配给一个申请进程用户申请使用设备时,只需要指定设备类型,而无须指定具体物理设备,系统根据当前的请求,及设备分配的情况,在相同类别设备中,选择一个空闲设备,并将其分配给一个申请进程 统一性: 对不同的设备采取统一的操作方式,在用户程序中使用的是逻辑设备

  19. 优点: • 设备忙碌或设备故障时,用户不必修改程序 • 改善了系统的可适应性和可扩展性

  20. 四、实现I/O的技术及其发展 • 编程I/O方式 • 中断驱动I/O方式 • 直接存储访问(MDA) • 通道 (详见教材)

  21. I/O 控制方式 软件实现 软件加硬件实现 以内存为中心 以CPU 为中心 程序直接 控制方式 中断方式 DMA 方式 通道方式 外围处理 机 PPU方式 硬件控制设备与内存直接交换数据 CPU与通道并行操作用户远离I/O过程的实现 提高并行性一定程度上缓解快速CPU和慢速I/O的矛盾 通道—〉处理机功能更强,进一步减少CPU的负担及其对I/O的干预 CPU速度不高,CPU与 I/O 操作串行工作

  22. 10.2 I/O子系统的层次结构

  23. 各层的主要功能 • I/O子系统层():为用户提供一个对所有设备都一致的接口。故又称独立于设备的软件。 • 设备驱动接口层:将上层的逻辑I/O的调用转换为对具体设备驱动程序的调用。 • 设备驱动程序层:具体负责与设备的所有交互操作。 • 通道、DMA控制器、设备控制器 • 设备 (详见教材)

  24. 10.3 I/O硬件组成 • 设备 • 设备控制器 • DMA控制器 • 通道

  25. 设备 一、 设备组成 I/O设备一般由机械和电子两部分组成, 把这两部分分开处理,以提供更加模块化,更加通用的设计。

  26. 1.物理设备 机械部分是设备本身(物理装置) 2.设备控制器 电子部分叫做设备控制器或适配器。 在小型和微型机中,它常采用印刷电路卡插入计算机中

  27. 控制器卡上通常有一个插座,通过电缆与设备相连。控制器卡上通常有一个插座,通过电缆与设备相连。 控制器和设备之间的接口是一个标准接口,它符合ANSI、IEEE或ISO这样的国际标准。

  28. 二、 设备接口 一次完整的I/O传送过程,典型地由一长列低级信号组成,这些信号启动设备所执行的操作,并通过测试设备状态来监控设备操作的进展

  29. 一个I/O过程由四步组成: 准备 启动 测试和等待 结果检查和错误处理 通过对设备接口寄存器组的读写完成

  30. 三、 设备连接模式 指I/O设备与CPU之间的连接方式,亦即将设备连接到一个计算机系统上的方式。在一个确定的连接模式下,从I/O设备到CPU间的所有连接成分构成了一条I/O路径(I/O链)。

  31. 改善: • 使CPU利用率尽可能不被I/O降低 使CPU尽可能摆脱I/O ⊹ 提高I/O本身的绝对速度 ⊹ 减少或缓解速度差距  ⊹ 使CPU不等待I/O 

  32. 提高设备利用率 • 在设备与主机的硬连接上,引入总线,节省连线并提供配置扩充与改变时的灵活性;引入控制器,扩大设备与主机间的相互适用范围 小结:控制器与设备的分离,循环测试到中断,对CPU编程式的I/O到DMA,联机I/O到假脱机

  33. 控制器(适配器) 电子部分:完成设备与主机间的连接和通讯。 CPU与控制器间通讯: 单总线模型(微机、小型机) 多总线模型(中、大型机)

  34. 每个控制器备有几个寄存器与CPU通讯 两种模式: 1、存储器映像I/O,寄存器是内存地址空间的一部分 2、专用I/O地址空间,每个控制器分配其中的一部分(IBM PC)

  35. 操作系统将命令写入控制器寄存器中,以实现输入/输出操作系统将命令写入控制器寄存器中,以实现输入/输出 例如:IBM PC的软盘控制器可接收15条命令,READ、WRITE、FORMAT、SEEK、RECALIBRATE,命令可以带参数。它们被一起送入控制器的寄存器中

  36. 当控制器接受一条命令后,可独立于CPU完成指定操作,CPU可以转去执行其它运算。命令完成时,控制器产生一个中断,CPU响应中断,控制转给操作系统。CPU通过读控制器寄存器中的信息,获得操作结果和设备状态当控制器接受一条命令后,可独立于CPU完成指定操作,CPU可以转去执行其它运算。命令完成时,控制器产生一个中断,CPU响应中断,控制转给操作系统。CPU通过读控制器寄存器中的信息,获得操作结果和设备状态

  37. 控制器与设备之间的接口常常是一个低级接口。控制器与设备之间的接口常常是一个低级接口。 例如磁盘,可以按每个磁道8扇区,每个扇区512个字节进行格式化。然而,实际从驱动器出来的却是一连串的位流,以一个头标(preamble)开始,然后是一个扇区的4096位(512×8),最后是检查和或错误校验码(Error—C一C:ECC)。头标是在对磁盘格式化时写上的,它包括柱面和扇区数,扇区的大小和类似的一些数据。

  38. 控制器的任务是把串行的位流转换为字节块,并进行必要的错误修正。首先,控制器按位进行组装,然后存入控制器内部的缓冲区中形成以字节为单位的块。在对块验证检查和并证明无错误时,再将它复制到主存中。控制器的任务是把串行的位流转换为字节块,并进行必要的错误修正。首先,控制器按位进行组装,然后存入控制器内部的缓冲区中形成以字节为单位的块。在对块验证检查和并证明无错误时,再将它复制到主存中。

  39. 设备完成技术 一次I/O 传送过程: 准备传送后处理 例:一个打印机有两个I/O设备寄存器: 状态寄存器 数据寄存器

  40. 设备的一次操作是否完成? 测试设备的一个硬件信号 几种测试模式: (1)I/O测试指令 (2)中断技术

  41. 直接存储访问DMA 数据在内存与I/O设备间的直接成块传送 CPU在开始时向设备发“传送一块”命令,结束时进行相应处理,实际操作由DMA硬件直接完成

  42. DMA方式与中断的主要区别 • 中断方式是在数据缓冲寄存区满后,发中断请求,CPU进行中断处理 DMA方式则是在所要求传送的数据块全部传送结束时要求CPU进行中断处理 大大减少了CPU进行中断处理的次数 • 中断方式的数据传送是由CPU控制完成的 而DMA方式则是在DMA控制器的控制下不经过CPU控制完成的

  43. DMA工作示例 (以硬盘为例) CPU提供被读取块磁盘地址、目标存储地址、待读取字节数 整块数据读进缓冲区 核准校验 控制器按照指定存储器地址,把第一个字节送入主存, 然后,按指定字节数进行数据传送 每当传送一个字节后,字节计数器值减1,直到字节计数器等于0 此时,控制器引发中断,通知操作系统,操作完成

  44. DMA工作原理——窃取总线控制权 • 存放输入数据的内存起始地址、要传送的字节数 • 送入DMA控制器的内存地址寄存器和传送字节计数器 • 中断允许位和启动位置成1,启动设备 • 发出传输要求的进程进入等待状态 • 执行指令被暂时挂起,进程调度其他进程占据CPU • 输入设备不断窃取CPU工作周期,数据不断写入内存 • 传送完毕,发出中断信号 • CPU接到中断信号转入中断处理程序处理 • 中断处理结束,CPU返回原进程或切换到新的进程

  45. CPU向控制器发出启动DMA通知和有关参数 控制器向内存发出询问请求 访问内存(读、写) 计数器减1 N 结束否 DMA的实现流程 Y 发中断

  46. 通道(I/O处理机) 是可以执行程序的、负责且只负责操纵输入输出设备的、功能简单专用的、低速低性能的、造价低的专用处理机。负责管理设备与内存之间的数据传送的一切工作

More Related