【大学课件】设备管理.ppt

上传人:本田雅阁 文档编号:3025666 上传时间:2019-06-27 格式:PPT 页数:27 大小:819.01KB
返回 下载 相关 举报
【大学课件】设备管理.ppt_第1页
第1页 / 共27页
【大学课件】设备管理.ppt_第2页
第2页 / 共27页
【大学课件】设备管理.ppt_第3页
第3页 / 共27页
【大学课件】设备管理.ppt_第4页
第4页 / 共27页
【大学课件】设备管理.ppt_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《【大学课件】设备管理.ppt》由会员分享,可在线阅读,更多相关《【大学课件】设备管理.ppt(27页珍藏版)》请在三一文库上搜索。

1、第九章 设备管理,9.1 设备管理概述 9.2 数据传输控制方式 9.3 中断技术 9.4 缓冲技术 9.5 磁盘驱动调度 9.6 设备分配,http:/ 设备管理概述,设备分类 设备管理的功能和任务 设备控制器,9.1.1 设备分类,1、按设备性质分类: 存储设备和输入输出设备,2、按设备从属关系: 系统设备和用户设备,3、按设备共享属性: 独享设备、共享设备和虚拟设备,4、按信息交换单元: 块设备和字符设备,9.1.2 设备管理的功能和任务,设备管理的主要任务:,强调设备的独立性 选择和控制设备与内存、中央处理器进行交换传输数据 按照一定的算法把设备分配给对该设备提出请求的进程,保证系统政

2、策工作。 充分有效地使用设备,尽可能提高设备的并行操作程度,使OS获得最佳的效率。,设备管理的功能:,设备分配 设备控制 缓冲管理,9.1.3 设备控制器,CPU,内存,磁盘驱动器,磁盘控制器,打印机,打印机控制器,其他控制器,控制器设备接口,主机,说明,利用单总线把各种各样的设备联系起来了。设备控制器处于CPU和I/O设备 之间,它接收从CPU发来的命令,并区控制I/O设备工作。其目的是使CPU 从繁杂的设备控制事务中解脱出来。设备控制器应能接收和识别CPU发来 的各种命令,实现CPU与控制器,控制器与设备之间的数据交换,记录设备 状态供CPU查询,还应能识别它所控制的每个设备的地址。因此,

3、控制器中 应设置控制器存放接收的命令及参数。,9.2 设备传输控制方式,程序直接控制方式 中断控制方式 直接存储器存取方式 通道控制方式,9.2.1 程序直接控制方式,处理机对I/O的控制采用程序直接控制方式。当用户进程需要输入数据时,由处理机向设备控制器发出一条I/O指令启动设备进行输入,在设备输入数据期间,处理机通过循环执行测试指令不间断地检测设备状态寄存器的值,当状态寄存器的值显示设备输入完成时处理机将数据寄存器的数据取出,送入内存指定单元,然后再启动设备去读下一个数据。反之,当用户进程需要向设备输出数据时,也必须同样发启动设备输出并等待输出操作完成。,外围设备,接收到Start命令,做

4、接收或发送数据准备,标志触发器置“Done”,等待CPU的下一条指令,准备完毕?,是,CPU,发Start命令,等待,执行下一条指令 开始数据传送,设备标志触发器为“Done”?,否,优点:,工作过程简单,不需要更多的硬件支持,缺点:,CPU和外围设备只能进行串行工作 CPU在一段时间内只能和一台外围设备交换数据信息,不能实现设备之间并行工作。 程序直接控制方式只适用于那些CPU执行速度较慢,而且外围设备较少的系统。,9.2.2 中断控制方式,就是为了减少CPU和外部设备进行传递信息时完全由CPU来进行控制的这种局面 而引入的。,在I/O中断方式下,数据的输入按如下步骤操作。,需要数据的进程通

5、过CPU发出启动外设输入数据的指令,该指令同时置状态寄存器的中断允许位。 在进程发出指令启动设备之后,该进程放弃CPU,等待输入完成。这时进程调度程序可以调度其他就绪进程占据CPU。 当输入工作完成时,I/O控制器通过中断请求向CPU发出中断信号。CPU在接收到中断处理信号之后,转去执行设备中断处理程序。设备中断处理程序把输入数据寄存器中的数据传到相应的位置上去。同时还把等待输入完成的那个进程唤醒,再返回到被中断的进程继续执行。 在以后的某个时刻,进程调度程序选中提出请求输入的进程,该进程从指定的内存单元中取出数据做进一步处理。,中断控制方式的优缺点:,与程序直接控制方式相比,中断方式使CPU

6、的利用率大幅提高了。设备每输入/输出一个数据都要求中断CPU,这样在一次数据传送过程中,中断发生次数较多,耗去大量CPU处理时间。,9.2.3 直接存储器存取方式,在DMA方式中,I/O控制器具有更强的功能。它除了具有上述中断功能外,还有一个DMA控制机构。在DMA控制器控制下,设备和主存之间可成批地进行数据交换,而不用CPU干预。这样大大减轻了CPU的负担,也使I/O数据传送速度大大提高。,DMA方式下进行数据输入的过程如下:,当进程要求设备输入一批数据时,CPU将准备存放输入数据的内存起始地址以及要传送的字节数分别送入DMA控制器中的内存地址寄存器和传送字节计数器;另外,还要将中断位和启动

7、位置“1”,以启动设备开始进行数据输入并允许中断。 发出数据要求的进程进入等待状态,进程调度程序调度其他进程占据CPU. 输入设备不断地挪用CPU工作周期,将数据寄存器中的数据写入内存,直到所要求的字节全部传送完毕。 DMA控制器在传送字节数完成时通过中断请求线发出中断信号,CPU收到中断信号后转中断处理程序,唤醒等待输入完成的进程,并返回被中断程序。 在以后的某个时刻,进程调度程序选中提出请求输入的进程,该进程从指定的内存起始地址取出数据作进一步处理。,DMA方式与中断的主要区别:,中断方式在每个数据传送完成后中断CPU,而DMA则是在所要求传送的一批数据全部传送结束时中断CPU. 中断方式

8、的数据传送是在中断处理时由CPU完成,而DMA则是在DMA控制器的控制下完成。,9.2.4 通道控制方式,字节多路通道强调在数据的传输过程当中,以字节作为传输数据的基本单位。 选择通道选择一个固定的通道并一直为它服务。 数组多路通道强调的是:数据的传输以一个数组为基本单位。,是专门用来输入和输出的处理机,它控制内存和设备直接进行数据交换。 包括通道的地址字和状态字。,按信息交换方式,可以把通道分为:,通道指令一般包含数据在内存中的地址,传送方向,数据块长度及I/O设备的地址信息, 特征信息。,通道指令格式,通道控制方式的数据输入过程如下:,当进程要求输入数据时,CPU发出启动指令指明I/O操作

9、,设备号和对应通道。 对应通道接收到CPU发来的启动指令之后,把存放在内存中的通道指令程序读出,并执行通道程序、控制设备。 如果数据传送结束,就向CPU发出中断请求。CPU收到中断信号后转中断处理程序,唤醒等待输入完成的进程,并返回被中断程序。 在以后的某个时刻,进程调度程序选中提出请求输入的进程,该进程从指定的内存中起始地址取出数据,作进一步处理。,通道控制方式的特点:,CPU和通道是共享一段内存空间的,它们可以并行工作, 可以提高工作效率。,9.3 中断技术,中断的基本概念 中断的分类与优先级 多中断 中断处理过程,9.3.1 中断的基本概念,中断:系统对异步事件的响应。,异步事件:无一定

10、时序关系的随机发生的事件。,中断源:引起中断发生的事件称为中断源,中断请求:中断源向CPU发出的请求中断处理的信号。,中断响应:CPU收到中断请求后转相应事件处理程序的过程称为中断响应。,断点:发生中断时,刚执行完的那条指令就是中断的断点。,恢复点:断点的逻辑后继指令的单元号。,中断现场:指中断的那一时刻能确保程序继续运行的有关信息。,关中断:PSW的中断允许位的设置称为开中断,开中断和关中断均为了保证程序 执行的原子性。,中断向量:存放的处理机状态字与中断处理程序入口地址一起构成中断向量。,中断屏蔽:指系统用软件方式有选择地封锁部分中断而允许其他部分中断。,9.3.2 中断的分类与优先级,根

11、据中断源把中断分为:,1、外中断:指来自处理机和内存之外的中断。 2、内中断:指在处理机和内部产生的中断,也称为陷入或异常。,IBM-PC的中断分为可屏蔽中断、不可屏蔽中断、程序错误中断、软中断。,当同时出现多个相同级别的中断请求时,一般的采用如下的两种方法处理:,(1) 固定的优先级 (2) 轮转法,9.3.3 多中断,处理多个中断有2种方法: 1、在处理一个中断时,禁止再发生中断 优点:方法简单,因为所有中断都严格按顺序处理。 缺点:没有考虑相对优先级和时间限制范围。 2、定义中断优先级,允许高优先级的中断引发低优先级的中断处理程序自身的中断。,9.3.4 中断处理过程,保护被中断进程现场

12、 分析中断原因,查中断向量表取得中断处理程序的地址,以便转去执行相应的中断处理程序。 恢复被中断进程的现场,CPU继续执行原来的进程。,9.4 缓冲技术,缓冲技术的引入 缓冲的种类 缓冲池示例,9.4.1 缓冲技术的引入,缓冲的实现方法有2种: 1、采用硬件缓冲器实现,例如I/O控制器中的数据缓冲器。 2、在内存划出一块存储区,专门用来临时存放输入/输出数据,这个区域称为缓冲区。,9.4.2 缓冲的种类,根据系统设置的缓冲区个数,可以将缓冲技术分为: 1、单缓冲; 2、双缓冲; 3、环形缓冲; 4、缓冲池,设一个缓冲池中有N个缓冲区,对其进行管理时,就会考虑到缓冲区互斥访问的 问题。设定义描述

13、资源的信号量buff,初值为“N”,由于构成缓冲池的操作需要互斥 进行,为此定义用于互斥的信号量mutex,初值为“1”。,系统中设有2个缓冲区管理程序,分别用于缓冲区的分配和释放。,1. 申请一个缓冲区 P(buff); P(mutex); 由链头取一个缓冲区分配; V(mutex); 返回缓冲区指针;,2. 释放一个缓冲区 P(mutex); 将释放的缓冲区链到链头; V(mutex); V(buff); 返回缓冲区指针;,缓冲池属于操作系统空间,用户程序不能直接对其进行操作,只能通过 系统调用来间接地使用它们。,9.4.3 缓冲池示例,Hash(哈希),头缓冲,空闲队列,9.5 磁盘驱动

14、调度,旋转延迟:等待相应扇区转到磁头下所需的时间。 寻道时间:将磁臂移动到相应的柱面上所需的时间。 实际传输时间,读写一个磁盘块的时间由三个因素决定,9.5.1 查找优化,查找优化:就是减少平均寻道时间的策略。,0,1,9,12,16,34,36,11,.,1、先来先服务策略(FCFS),例:,一个具有40个柱面的磁盘。假设一个读柱面11上的一个数据块的请求到达,当对柱面11进行寻道时,又顺序到达了新的请求。要求寻道1、36、16、9、 34 、2,系统将这些请求进程插入到等待队列。当前请求(柱面11)服务结束后,磁盘驱动程序要选择下一个请求进行处理。,2、最短寻道时间优先策略(SSF):就是

15、当前所在的磁道离哪个磁道近就向哪个磁道移动,0,1,9,12,16,34,36,.,11,3、电梯算法(扫描算法):就是具有方向性的SSF.,0,1,9,12,16,34,36,.,9.5.2 旋转优化,为减少旋转延迟,对同一磁道上的连续读写信息进行合理分布称为旋转优化,例:,考虑10个数据块A,B,J存放在同一个磁道上,设每个磁道有10个扇区。如果 按A,B,J顺序从0扇区开始依次存放。并且顺序处理这些数据。当磁盘旋转速 度为20毫秒,处理程序读出每个记录后花4毫秒时间处理。则读出并处理数据块 A后,将转到数据块D开始。所以,为了读出记录B,必须再转一周。,问题:1)处理10个数据块的总时间

16、为多少? 2)如果采用旋转优化策略,按A,H,E,B,I,F,C,J,G,D顺序从0扇区开始依次 存放,当读出数据A后,恰好转到数据块B的开始。按照这一方案,处 理10个总数据块的时间为多少?,A,B,C,D,J,E,F,G,I,H,A,H,E,G,B,I,F,J,C,D,9.6 设备分配,实际上是作为用户来讲,怎么有效地分配自己所使用设备资源。强调的是设备 的独立性。,9.6.1 设备分配中的数据结构,为了实现对I/O设备的管理和控制,需要对每台设备、通道、控制器的情况进行 登记。设备分配程序依据这些信息进行设备分配。,设备类型 设备标识 设备控制表 指针,设备类型 设备标识 设备忙闲标志

17、COCT指针 该等待队列队首 该等待队列队尾,控制器标识 控制器忙闲标识 CHCT指针 该等待队列队首 该等待队列队尾,通道标识 通道忙闲标识 该等待队列队首 该等待队列队尾,9.6.2 设备分配策略,1、静态分配和动态分配,(1) 静态分配:是在作业级进行的,用户作业开始执行之前由系统一次性分配 该作业要求的全部设备,控制器和通道。,(2) 动态分配:是在进程执行过程中根据执行需要进行的设备分配。,2、I/O设备分配算法,(1) 先请求先服务 (2) 优先级高者优先,3、设备分配步骤,(1) 分配设备 (2) 分配控制器 (3) 分配通道,9.6.3 设备的使用性质,按照设备自身的使用性质,

18、可以采用以下三种不同的分配方式,(1) 独立分配策略 (2) 共享分配策略 (3) 虚拟分配策略,9.7 虚拟设备,Spooling系统主要包括以下3个部分,输入井和输出井:这是磁盘上开辟的2个存储区域。输入井模拟脱机输入时的磁盘,用于收容I/O设备输入的数据。输出井模拟脱机输出时的磁盘,用于收容用户程序的输出结果。 输入缓冲区和输出缓冲区:这是在内存中开辟的2个缓冲区。输入缓冲区用于暂存由输入设备送来的数据以后再传送到输入井。输出缓冲区用于暂存从输出井送来的数据以后再传到输出设备。 输入进程和输出进程:输入进程模拟脱机输入时的外围控制机,将用户要求的数据从输入机通过输入缓冲区再送到输入井,当CPU需要输入数据时直接从输入井读入内存。输出进程模拟脱机输出时的外围控制机,把用户要求输出的数据,先从内存送到输出井,待输出设备空闲时,再将输出井中的数据经过输出缓冲区送到输出设备上。,输入缓冲区,输出缓冲区,输入设备,输入进程,输出进程,磁盘,输入井,输出井,输出设备,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1