




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、设备管理i/o系统 i/o控制方式 缓冲管理 设备分配 设备处理 磁盘存储器管理 设备管理的基本任务:完成用户提出的i/o请求;提高i/o速率;提高i/o设备的利用率。 设备管理的主要功能:缓冲区管理、设备分配、设备处理、虚拟设备、实现设备独立性等一、i/o系统概述n i/o设备分类n 设备与控制器之间的接口n 设备控制器n i/o通道i/o重要的性能指标:数据传输速率数据的传输单位设备共享属性1、i/o设备的类型 1) 按传输速率分类 2) 按信息交换的单位分类 3) 按设备的共享属性分类1) 按传输速率分类低速设备,这是指其传输速率仅为每秒钟几个字节至数百个字节的一类设备。中速设备,这是指
2、其传输速率在每秒钟数千个字节至数万个字节的一类设备。高速设备, 这是指其传输速率在数百千个字节至数十兆字节的一类设备。2) 按信息交换的单位分类块设备(block device),这类设备用于存储信息。 典型的块设备是磁盘。磁盘设备的基本特征是其传输速率较高;另一特征是可寻址,即对它可随机地读/写任一块;字符设备(character device),用于数据的输入和输出。 其基本单位是字符, 故称为字符设备(交互式终端、打印机) 。 其基本特征是传输速率低;另一特征是不可寻址。3) 按设备的共享属性分类(1) 独占设备。 (2) 共享设备。 (3) 虚拟设备。 2、 设备控制器设备控制器的主要
3、职责是控制一个或多个i/o设备。设备控制器是cpu与i/o设备之间的接口。n 设备控制器的主要职责是控制一个或多个i/o设备。n 设备控制器是cpu与i/o设备之间的接口。设备与控制器之间的接口 设备控制器的基本功能 1) 接收和识别命令 2) 数据交换 3) 标识和报告设备的状态 4) 地址识别 5) 数据缓冲 6) 差错控制设备控制器的组成 3、 i/o通道 i/o通道是一种特殊的处理机.(1) i/o通道(i/o channel)的引入 降低cpu的负担 i/o通道是一种特殊的处理机 i/o 通道与一般的处理机不同,主要表现在以下两个方面: 一是其指令类型单一,其所能执行的命令,主要局限
4、于与i/o操作有关的指令; 二是通道没有自己的内存,通道所执行的通道程序是放在内存中的。(2) 通道类型(根据信息交换方式) 1) 字节多路通道 2) 数组选择通道 3) 数组多路通道 1) 字节多路通道(byte multiplexor channel) 以字节为单位传送数据,主要用来连接大量的低速或中速设备。2) 数组选择通道(block selector channel) 用开关来控制对高速外设的选择,在一段时间内单独为一台外设服务。3) 数组多路通道(block multiplexor channel) 数组多路通道含有多个非分配型子通道, 因而这种通道既具有很高的数据传输速率,又能获
5、得令人满意的通道利用率。被广泛地用于连接多台高、中速的外围设备,其数据传送是按数组方式进行的。 (3) “瓶颈”问题 二、i/o控制方式 1、 程序i/o方式2、 中断驱动i/o控制方式3、 直接存储器访问(dma) i/o控制方式4、 i/o通道控制方式 (一)程序i/o方式 (二)中断驱动i/o控制方式(三) 直接存储器访问 dma i/o控制方式 1. dma(direct memory access)控制方式的引入 实现思想是外设在硬件支持下直接与内存交换成批数据而无需cpu干预该方式的特点是: 数据传输的基本单位是数据块 所传送的数据是从设备直接送入内存的,或者相反; 仅在传送一个或
6、多个数据块的开始和结束时,才需cpu干预,整块数据的传送是在控制器的控制下完成的。2. dma控制器的组成 3. dma工作过程 dma方式与中断方式的主要区别n (1)中断方式在每个数据传送完后中断cpu,而dma方式则是在所要求传送的一批数据全部传送结束时中断cpun (2)中断方式的数据传送是在中断处理时由cpu控制完成的,而dma方式则是在dma控制器的控制下完成的。不过,在dma方式下,数据传送的方向、存放数据的内存始址及传送数据的长度仍然由cpu控制。(四) i/o通道控制方式 1. i/o通道控制方式的引入 i/o通道方式把对一个数据块的读(或写)为单位的干预,减少为对一组数据块
7、的读(或写)及有关的控制和管理为单位的干预。 同时,又可实现cpu、通道和i/o设备三者的并行操作,从而更有效地提高整个系统的资源利用率。2. 通道程序通道是通过执行通道程序,并与设备控制器共同实现对i/o设备的控制的。 (1) 操作码。 (2) 内存地址。 (3) 计数。 (4) 通道程序结束位p。 (5) 记录结束标志r。 i/o控制可用哪几种方式实现?各有何优缺点?(1)程序控制方式n 优点是控制简单,也不需要很多硬件支持。n 但cpu和外设之间只能串行工作,且cpu的大部分时间处于循环测试状态,这使得cpu的利用率大大降低;cpu在一段时间内只能和一台外设交换数据信息,从而不能实现设备
8、之间的并行工作;由于程序直接控制方式依靠测试设备状态标志来控制数据传送,因此无法发现和处理因设备或其他硬件所产生的错误。所以,程序直接控制方式只适用于那些cpu执行速度慢且外设较少的系统。(2)中断控制方式n 优点是能实现cpu与设备、设备与设备间的并行操作,cpu的利用率较程序直接控制方式大大提高。n 但i/o控制器的数据缓冲寄存器通常较小,且数据缓冲寄存器装满数据后将会发生中断,因此一次数据传送过程中中断次数较多,耗去了大量cpu时间;如果系统中配置的外设数目较多,且都以中断方式进行控制,则将耗去大量cpu时间或因cpu来不及处理而造成数据丢失。(3)dma方式与中断方式相比,dma方式的
9、优点是在一批数据传送完成后中断cpu,从而大大减少了cpu进行中断处理的次数,并且dma方式下的数据传送是在dma控制器控制下完成的,在数据传输过程中无需cpu干预。但cpu方式仍有一定的局限,如对外设的管理和某些操作仍由cpu控制,且多个dma控制器的使用也不经济。(4)通道控制通道是一个专管i/o工作的处理机。在通道控制方式下,cpu只需发出i/o指令,通道就能完成相应的i/o操作,并在i/o操作结束时向cpu发出中断信号。由此可见,cpu仅在i/o操作开始和结束时花极短的时间处理与i/o操作有关的事宜,其余时间都与通道并行工作,此外一个通道还能控制多台外设。通道价格较高,从经济的角度出发
10、不宜过多使用。三、缓 冲 管 理缓冲的引入 (1) 缓和cpu与i/o设备间速度不匹配的矛盾。 (2) 减少对cpu的中断频率, 放宽对cpu中断响应时间的限制。 (3) 提高cpu和i/o设备之间的并行性。 现代操作系统中,几乎所有的i/o设备在与处理机交换数据时都使用了缓冲区。实现方式:(1)专用的硬件缓冲区,如设备控制器中的数据缓冲寄存器。成本较高,数量较少。(2)内存中划出一块专门的空间,作为缓冲区来存放i/o的数据。(一)单缓冲(single buffer) (二)双缓冲(double buffer) (三)循环缓冲 1. 循环缓冲的组成 2. 循环缓冲区的使用 (1)getbuf过
11、程。(2)releasebuf过程。 3. 进程同步 (1)nexti指针追赶上nextg指针。(2) nextg指针追赶上nexti指针。 (四)缓冲池(buffer pool) 1. 缓冲池的组成对于既可用于输入又可用于输出的公用缓冲池, 其中至少应含有以下三种类型的缓冲区: 空(闲)缓冲区; 装满输入数据的缓冲区; 装满输出数据的缓冲区。 形成以下三个队列: (1) 空缓冲队列emq。 (2) 输入队列inq。 (3) 输出队列outq。 n 除了三个队列外,还应具有四种工作缓冲区:(1)用于收容输入数据的工作缓冲区(2)用于提取输入数据的工作缓冲区(3)用于收容输出数据的工作缓冲区(4
12、)用于提取输出数据的工作缓冲区3. 缓冲区的工作方式 n i/o控制方式随着计算机技术的发展而不断地由低效的方式演变为高效的方式,故在学习时应了解i/o控制方式的演变过程,每种i/o控制方式是如何进行控制的,又是如何提高cpu利用率的。n 程序i/o方式。因为当时尚未出现中断机构,所以在进行i/o时,cpu不得不花费大量的时间去测试i/o设备的工作状态,此时cpu完全陷入i/o工作中。n 中断驱动i/o控制方式。在系统中引入中断机构后,cpu就不必再不断测试。应清楚地了解和掌握在中断机构的支持下,其i/o控制是如何实现的,cpu的利用率提高了多少。n dma i/o控制方式。在系统中配置了dm
13、a控制器后,其传输数据的基本单位是数据块。应很好地了解此时i/o控制是如何实现的,cpu的效率提高了多少。n i/o通道控制方式。系统中配置了通道控制器后,在通道程序的控制下,其传输的基本单位由一个数据块增为一组数据块。应了解什么是通道程序,它是如何实现i/o控制的。四、设 备 分 配 (一)设备分配中的数据结构 1. 设备控制表dct 2. 控制器控制表3. 通道控制表4. 系统设备表 (二)设备分配时应考虑的因素1. 设备的固有属性 (1) 独享设备(2) 共享设备(3) 虚拟设备 2. 设备分配算法(1) 先来先服务。 (2) 优先级高者优先。 3. 设备分配中的安全性 1)安全分配方式
14、 2)不安全分配方式 (三)设备独立性 1. 设备独立性(device independence)的概念引入设备独立性的目的:为了提高os的可适应性和可扩展性。 设备独立性的基本含义是: 应用程序独立于具体使用的物理设备。设备独立性的实现:在应用程序中引入了逻辑设备和物理设备这两个概念。使用逻辑设备名称来请求使用某类设备;而系统在实际执行时, 还必须使用物理设备名称。因此,系统须具有将逻辑设备名称转换为某物理设备名称的功能。 在实现了设备独立性的功能后, 可带来以下两方面的好处: 1) 设备分配时的灵活性 2) 易于实现i/o重定向2. 设备独立性软件 1) 执行所有设备的公有操作 对独立设备
15、的分配与回收; 将逻辑设备名映射为物理设备名,进一步可以找到相应物理设备的驱动程序; 对设备进行保护,禁止用户直接访问设备; 缓冲管理,即对字符设备和块设备的缓冲区进行有效的管理, 以提高i/o的效率; 差错控制。由于在i/o操作中的绝大多数错误都与设备无关,故主要由设备驱动程序处理,而设备独立性软件只处理那些设备驱动程序无法处理的错误。2) 向用户层(或文件层)软件提供统一接口无论何种设备, 它们向用户所提供的接口应该是相同的。 例如, 对各种设备的读操作,在应用程序中都使用read; 而对各种设备的写操作,也都使用write。 3. 逻辑设备名到物理设备名映射的实现 1) 逻辑设备表2)
16、lut的设置问题 (四) 独占设备的分配程序 1. 基本的设备分配程序 1) 分配设备 2) 分配控制器 3) 分配通道 2. 设备分配程序的改进 1) 增加设备的独立性2) 考虑多通路情况 什么是虚拟设备n 虚拟设备是指通过虚拟技术将一台独占设备变换为若干台逻辑设备,供若干个用户进程同时使用,通常把这种经过虚拟技术处理后的设备称为虚拟设备。(五)spooling技术 1. 什么是spooling 为了缓和cpu的高速性与i/o设备低速性间的矛盾而引入了脱机输入、 脱机输出技术。 该技术是利用专门的外围控制机, 将低速i/o设备上的数据传送到高速磁盘上;或者相反。事实上, 当系统中引入了多道程
17、序技术后,可以利用程序模拟脱机输入时的外围控制机功能;再用另一道程序来模拟脱机输出时外围控制机的功能。这样,便可在主机的直接控制下,实现脱机输入、 输出功能。 此时的外围操作与cpu对数据的处理同时进行, 我们把这种在联机情况下实现的同时外围操作称为spooling,或称为假脱机操作。 2. spooling系统的组成 3. 共享打印机 共享打印机技术已被广泛地用于多用户系统和局域网络中。 当用户进程请求打印输出时, spooling系统同意为它打印输出, 但并不真正立即把打印机分配给该用户进程, 而只为它做两件事: 由输出进程在输出井中为之申请一个空闲磁盘块区, 并将要打印的数据送入其中;
18、输出进程为用户进程申请一张空白的用户请求打印表,并将用户的打印要求填入其中, 再将该表挂到请求打印队列上。 4. spooling系统的特点 (1)i/o的速度。 (2) 将独占设备改造为共享设备。 (3) 实现了虚拟设备功能。 五、设备处理1.设备处理在系统为请求i/o的进程分配了设备及相应的数据通路之后,启动设备去进行实际的i/o操作,通常由设备驱动程序和i/o中断服务程序配合完成。2.设备处理程序主要任务n 设备处理程序(设备驱动程序):i/o进程与设备控制器之间的通信程序。n 任务: (1)接收上层软件发来的抽象请求,再把它转换为具体要求,发送给设备控制器,启动设备去执行; (2)此外
19、,它也将由设备控制器发来的信号传给上层软件。3. 设备驱动程序的功能 (1) 接收由i/o进程发来的命令和参数, 并将命令中的抽象要求转换为具体要求(2) 检查用户i/o请求的合法性,了解i/o设备的状态,传递有关参数,设置设备的工作方式。(3) 发出i/o命令。(4) 及时响应由控制器或通道发来的中断请求,并根据其中断类型调用相应的中断处理程序进行处理。(5) 对于设置有通道的计算机系统,驱动程序还应能够根据用户的i/o请求,自动地构成通道程序。 4. 设备处理方式 (1) 为每一类设备设置一个进程,专门用于执行这类设备的i/o操作。(2) 在整个系统中设置一个i/o进程,专门用于执行系统中
20、所有各类设备的i/o操作。也可以设置一个输入进程和一个输出进程,分别处理系统中所有各类设备的输入或输出。 (3) 不设置专门的设备处理进程,而只为各类设备设置相应的设备处理程序(模块), 供用户进程或系统进程调用。 5. 设备驱动程序的特点 (1) 驱动程序是请求i/o的进程与设备控制器之间的一个通信和转换程序。 (2) 驱动程序与设备控制器和i/o设备的硬件特性紧密相关, 因而对不同类型的设备应配置不同的驱动程序。 (3) 驱动程序与i/o设备所采用的i/o控制方式紧密相关。 (4) 由于驱动程序与硬件紧密相关, 因而其中的一部分必须用汇编语言书写。 6. 设备驱动程序的处理过程 1) 将抽象要求转换为具体要求 2) 检查i/o请求的合法性 3) 读出和检查设备的状态 4) 传送必要的参数 5) 工作方式的设置 6) 启动i/o设备 7. 中断处理程序的处理过程n 中断:计算机在运行过程中,出现来自系统外部、机器内部以及cpu本身的任何异常的或例外的事件时,cpu暂停执行当前正在
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 桩工基础合同范本
- 音响货物采购合同范本
- 西藏施工项目合同范本
- 快递正规合同范本模板
- 办公住宅维修合同范本
- 装饰劳务派遣合同范本
- 预防传染病安全教育教案
- 预防假期安全
- 预防传染病的知识
- 2023年单招考试语文模拟试卷与答案(一)
- 三年级下册语文七彩课堂
- 第7课 全球联系的初步建立与世界格局的演变 高中历史统编版(2019)必修中外历史纲要下册
- 11《山地回忆》公开课一等奖创新教学设计
- 智能传感器研发-第1篇-深度研究
- 普华永道中天会计师事务所-人工智能机遇在汽车领域
- 2025年安徽中医药高等专科学校单招职业适应性测试题库及参考答案
- 2025年安庆医药高等专科学校单招职业适应性考试题库含答案
- 《工程勘察设计收费标准》(2002年修订本)
- 小学四年级综合实践活动课件.ppt
- 动火安全作业票
- 通用请假条Excel表格模板
评论
0/150
提交评论