第5章操作系统ppt讲义

上传人:今*** 文档编号:108147080 上传时间:2019-10-22 格式:PPT 页数:137 大小:1MB
返回 下载 相关 举报
第5章操作系统ppt讲义_第1页
第1页 / 共137页
第5章操作系统ppt讲义_第2页
第2页 / 共137页
第5章操作系统ppt讲义_第3页
第3页 / 共137页
第5章操作系统ppt讲义_第4页
第4页 / 共137页
第5章操作系统ppt讲义_第5页
第5页 / 共137页
点击查看更多>>
资源描述

《第5章操作系统ppt讲义》由会员分享,可在线阅读,更多相关《第5章操作系统ppt讲义(137页珍藏版)》请在金锄头文库上搜索。

1、第五章 设备管理,本章要点,设备管理的主要功能、模型 I/O子系统的组成、结构 设备的控制、I/O控制 设备的类型 设备分配 I/O缓冲技术 虚拟设备与SPOOLing系统 磁盘设备的管理,设备管理的功能,设备分配 设备映射 设备驱动 I/O缓冲区的管理,I/O设备分类,根据外部设备的用途不同,可以将其分为输入/输出型设备与存储型设备; 根据外设传输的基本数据单位不同,可以将设备分为块型设备与字符型设备; 按照资源管理的方式不同,可以将设备分为独占型设备和共享型设备。,输入/输出型 VS 存储型,输入/输出型设备:键盘、鼠标、显示器、读卡机、扫描仪、打印机、绘图仪、数码相机等。 存储型设备:磁

2、带机、磁鼓机、磁盘机等。可用作输入,也可用作输出。主要用于长期保存信息,但需要管理其上的存储空间。 可以在存储设备上建立文件系统。 有组织、有结构地长期存储信息。,块型设备 VS 字符型设备,块型设备通常就是存储型设备。这类设备由若干长度相同的块构成。 一块的长度通常为2n个字节,如256B、1024B等。对这类设备来说,块是存储分配的基本单位,也是I/O传输的基本单位。 字符型设备通常就是输入/输出型设备。这类设备I/O传输的基本单位是字节。,独占型 VS 共享型,独占型设备包括所有的字符型设备及块设备 任意时间段内最多只能被一个进程占用。 共享型设备包括除磁带机以外的所有块型设备。 宏观上

3、,一个共享型设备可以被多个进程同时占用;微观上,多个进程交替使用同一设备。 进程使用这类设备时,无须申请或释放设备,也不存在某个进程占用设备的问题。,I/O系统的结构,总线型I/O系统的结构,通道型I/O系统结构,具有控制器的I/O系统结构,传统的设备 = 机械部分 + 电子部分 电子部分在系统的控制下驱动机械部分运转,完成I/O操作 由于设备中电子部分比机械部分的速度快得多,为了降低硬件成本,将电子部分从设备中分离出来作为一个独立的部件,这就是控制器。 分离之后的设备仅由机械部分构成,一个控制器可与多个设备相连,交替地或分时地控制与其相连的设备。例如,磁盘控制器可以控制多个磁盘驱动器。,具有

4、控制器的I/O系统结构,设备的控制 设备的寻址与操作,从处理机的角度看,各种外部设备可以看作是由一组设备寄存器组成的。 常见的设备寄存器有:操作方式寄存器、命令寄存器、数据寄存器、状态寄存器等。 为了使CPU能够寻址这些设备寄存器,硬件平台引入了I/O端口地址的概念。,设备的控制 设备的寻址与操作,I/O端口地址的编址方式有两种: 将设备寄存器与内存物理单元统一编址; 独立于内存物理地址为设备寄存器编址。 无论一个设备是否由多个控制器控制,或者一个控制器控制了多少个设备,每一个设备都能通过这些寄存器的地址唯一确定。,设备的控制 即插即用,随着外部设备种类增加,设备间极可能发生冲突。即,设备使用

5、的中断号、DMA、内存地址、端口地址可能因相同或重叠而导致设备无法正常工作。 手工调整这些设备的相关参数要求用户具有较多的计算机硬件知识,并对系统配置的硬件有较全面的了解。,设备的控制 即插即用,是指,插上了就可使用,不需要用户进行其它设置。 当用户插入一个“即插即用”适配卡或设备时, “即插即用”功能就可以自动进行检测,配置相应的接口参数,并安装相应的驱动程序。,设备的控制 即插即用,对已安装硬件的自动和动态识别 包括系统初始安装时、两次系统启动之间以及运行时发生的硬件事件(如设备的插入/拔出)的响应; 配合操作系统分配/再分配硬件资源 加载相应的驱动程序。 当系统中加入新设备时,如果操作系

6、统中没有集成相应的设备驱动程序,则会要求用户指定驱动程序的位置并完成驱动程序的安装。,设备驱动程序,设备驱动程序一般由设备制造商提供,不包含在OS中。 但是,为了方便用户,OS软件包中通常会集成提供标准的、通用的或者流行的、常用设备厂商的设备驱动程序供用户选择。 从系统分层的观点来讲,设备驱动程序可以是OS的一部分,也可以被认为是硬件设备的一部分。,5.2 I/O控制方式,程序I/O方式 在早期的计算机系统中,由于没有中断装置,处理机对于I/O设备的控制采取程序I/O方式。 也称忙等待状态或循环测试方式。 对于读操作,这种方式的基本工作过程为:,1 处理机向设备(或设备控制器)发出一条I/O指

7、令启动设备、输入数据,同时将状态寄存器中的“忙”标志置为1。 2 处理机不断地循环测试忙标志,直到忙标志变为0; 3 处理机通过I/O读指令将数据从数据寄存器中取出,送入内存中指定单元; 4 若数据已读完,则结束本过程,否则转1,继续读下一个数据。,在程序I/O方式中,由于处理机的速度非常快,而设备的速度相对较慢,使得处理机的绝大部分时间都处于等待设备完成数据I/O的循环测试中,造成对CPU的极大浪费。,中断I/O方式,对于读操作,中断方式的基本过程为: 处理机向设备(设备控制器)发出一条I/O指令,启动设备,输入数据; 处理机完成其它工作,设备准备数据; 当设备准备好数据并将数据存入数据寄存

8、器,向处理机发中断信号,告之数据已准备好; 处理机响应中断请求,从数据寄存器中将数据取出,送入内存的指定单元; 若数据已读完,结束。否则,转1,继续。 中断技术控制I/O的优点在于,设备与CPU并行,提高了处理机的利用率。性能优于程序控制I/O方式。,DMA方式,中断I/O比程序I/O方式高效,但以字/字节为传输单位。每完成一个字/字节的传输,设备均要向CPU请求一次中断。 对于块设备而言,这种方式的效率还是显得有些低下。因为,频繁的、大量的中断所累积的开销很大。 为了进一步减少处理机对I/O事务的干预,出现了DMA(Direct Memory Access)直接存储器方式。,DMA方式的特点

9、,数据传输的基本单位是数据块; 数据直接从设备送入内存,或者直接从内存送入设备; 仅在传送一个或多个数据块的开始和结束时,才需要处理机的干预。 与中断方式相比,DMA方式大大减少了数据I/O对处理机的占用,进一步提高了处理机的利用率,提高了处理机和I/O设备的并行操作能力。,2. DMA控制器的组成,图 5-8 DMA控制器的组成,为了实现在主机与控制器之间成块数据的直接交换, 必须在DMA控制器中设置如下四类寄存器: (1) 命令/状态寄存器CR。用于接收从CPU发来的I/O命令或有关控制信息, 或设备的状态。 (2) 内存地址寄存器MAR。在输入时,它存放把数据从设备传送到内存的起始目标地

10、址;在输出时,它存放由内存到设备的内存源地址。 (3) 数据寄存器DR。用于暂存从设备到内存,或从内存到设备的数据。 (4) 数据计数器DC。 存放本次CPU要读或写的字(节)数。,3. DMA工作过程,图 5-9 DMA方式的工作流程,I/O通道方式,通道相当于一个功能单纯的处理机,专门用于处理I/O操作。通道有自己的运算控制部件和指令系统,但没有专门的内存。而是通过“周期窃用”方式与主机共享内存。 通道通过执行通道程序来完成I/O操作。 通道程序是通道指令的有序序列,它由系统中的输入/输出进程根据用户进程的I/O要求来确定,可以是事先编制好的程序段,也可以动态产生。通道程序以及需要与设备交

11、换的数据均放置在内存中。,2. 通道类型,1) 字节多路通道(Byte Multiplexor Channel),图 5-3 字节多路通道的工作原理,2) 数组选择通道(Block Selector Channel),字节多路通道不适于连接高速设备,这推动了按数组方式进行数据传送的数组选择通道的形成。这种通道虽然可以连接多台高速设备,但由于它只含有一个分配型子通道,在一段时间内只能执行一道通道程序, 控制一台设备进行数据传送, 致使当某台设备占用了该通道后,便一直由它独占, 即使是它无数据传送,通道被闲置, 也不允许其它设备使用该通道, 直至该设备传送完毕释放该通道。可见,这种通道的利用率很低

12、。,3) 数组多路通道(Block Multiplexor Channel) 数组选择通道虽有很高的传输速率,但它却每次只允许一个设备传输数据。数组多路通道是将数组选择通道传输速率高和字节多路通道能使各子通道(设备)分时并行操作的优点相结合而形成的一种新通道。它含有多个非分配型子通道, 因而这种通道既具有很高的数据传输速率,又能获得令人满意的通道利用率。也正因此,才使该通道能被广泛地用于连接多台高、中速的外围设备,其数据传送是按数组方式进行的。,I/O通道方式,一条通道指令可以传送一组数据,一个通道程序可以传送多组数据。多组数据全部传送完毕后(即一个通道程序执行完毕),才向处理机发出一次中断。

13、 通道不仅可以传送数据,更重要的是它还完成对设备的控制。在通道的协助下,主机只需发出一个启动通道、执行通道程序的指令即可。主机仅与通道直接通信,不必考虑设备的具体控制以及如何完成数据传送等问题,从而大大减轻了主机的负担。,3. “瓶颈”问题,图 5-4 单通路I/O系统,图 5-5 多通路I/O系统,5.3 缓 冲 管 理,5.3.1 缓冲的引入,缓和CPU与I/O设备间速度不匹配的矛盾。 (2) 减少对CPU的中断频率, 放宽对CPU中断响应时间的限制。 (3) 提高CPU和I/O设备之间的并行性。,提前读,指用户进程从I/O缓冲区中取走前一个数据以后,立即发出对下一个数据的输入请求。 操作

14、系统将在适当的时候响应该请求以便把用户进程需要的下一个数据从用户进程指定的输入设备读入到I/O缓冲区中。 显然,用户进程加工前一个数据的工作与操作系统输入下一个数据的工作可以同时进行。,延后写,是指,当用户进程请求输出数据时,操作系统将很快把用户进程请求输出的数据从用户进程的工作区中取走并将其暂时存放在I/O缓冲区中。 直到用户进程指定的输出设备空闲时,操作系统才把暂时存放在I/O缓冲区中的用户进程的输出数据写入用户进程指定的输出设备上。 显然,用户进程生成下一个输出数据的工作与操作系统输出前一个输出数据的工作可以同时进行。,硬件缓冲和软件缓冲,硬件缓冲区配置在设备中,具有专门的用途。对处理机

15、透明,不需要处理机的直接管理,不会影响系统性能。 软件实现的缓冲区是内存空间的一部分。其目的是为了弥补硬件缓冲区的不足。因为并非所有外设都拥有,或者足够拥有硬件缓冲区。 操作系统中介绍的缓冲区都是指软件缓冲区。,缓冲区的组织形式,单缓冲 双缓冲 循环缓冲 缓冲池,假定,一块数据从外部设备输入到内存所花费的时间为T,在内存中移动所花费的时间为M,被用户进程加工处理所花费的时间为C,那么 在没有使用I/O缓冲区的情况下,平均每块数据的处理时间近似为:T+C 在使用单缓冲区的情况下,平均每块数据的处理时间近似为:max(T,C)+M,1. 单缓冲(Single Buffer)只在内存中为进程对某个设

16、备的I/O访问分配一个缓冲区 。,图 5-11 单缓冲工作示意图,相对于没有I/O缓冲区的情形,单I/O缓冲区能提高用户进程的运行效率。 如果用户进程在对有关数据进行加工处理时不释放I/O缓冲区,那么用户进程的性能并不能得到改善。 如果T远远大于C,即外部设备的I/O速度比用户进程的计算速度慢得多,那么,单I/O缓冲区不会显著改善用户进程的性能。,2. 双缓冲(Double Buffer),增加一个缓冲区,两个缓冲区可以交替使用。 当数据从缓冲区复制到用户进程空间时,输入设备不必等待,可立即开始向另一个缓冲区输入数据。因此,增加了一个缓冲区后,前述的平均工作时间可近似为: max(T,C) 若用户进程阵发性I/O的数据超过一个缓冲区而不满两个缓冲区时,双缓冲使进程不会在I/O数据期间被阻塞。,图 5-12 双缓冲工作示意图,图 5-13 双机通信时缓冲区的设置,循环缓冲,当用户进程处理数据的速度较快、外部设备处理数据的速度较慢,或者用户进程阵发性输入/输出的数据较多时,必须考虑增加缓冲区的数量以改善系统性能,这就是多缓冲区方式。 多个I/O缓冲区常

展开阅读全文
相关资源
相关搜索

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

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