操作系统-设备管理节选ppt课件_第1页
操作系统-设备管理节选ppt课件_第2页
操作系统-设备管理节选ppt课件_第3页
操作系统-设备管理节选ppt课件_第4页
操作系统-设备管理节选ppt课件_第5页
已阅读5页,还剩91页未读 继续免费阅读

下载本文档

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

文档简介

1、1.1.输入输出管理输入输出管理2.2.数据传送控制方式数据传送控制方式3.3.缓冲技术缓冲技术4.4.设备分配设备分配5.5.磁盘设备管理磁盘设备管理6.Spooling6.Spooling系统系统设备管理的目标设备管理的目标 提高系统资源利用率提高系统资源利用率 方便用户使用方便用户使用 q设备的有效使用设备的有效使用q让用户方便使用设备让用户方便使用设备q设备和设备和CPUCPU的并行工作的并行工作:按照用户的要求来控制设备操作,对外部设备进行管理,是操作系:按照用户的要求来控制设备操作,对外部设备进行管理,是操作系统中最具多样性、复杂性的部分。统中最具多样性、复杂性的部分。按照按照用户

2、的要求用户的要求控制控制I IO O设备工作,完成用户所希望的设备工作,完成用户所希望的I IO O操作操作按照一定的按照一定的算法算法把把I IO O设备分配给对该设备提出请求的进程设备分配给对该设备提出请求的进程充分有效地使用充分有效地使用I IO O设备设备 I/OI/O管理功能管理功能1.1.状态跟踪状态跟踪 设备控制块设备控制块是存放设备管理和控制信息的数据结构,动态的记录各种设备的状态。2.2.制订设备分配策略制订设备分配策略 决定设备分配策略,以确定谁、何时使用设备,使用多长时间。3.3.设备分配与回收设备分配与回收 作业级静态分配进程级动态分配4.4.设备控制设备控制 实施设备

3、驱动和中断处理的工作。设备控制包括设备的驱动、完成和故障中断处理。按使用特性分类:按使用特性分类:存储设备存储设备输入输出设备输入输出设备终端设备终端设备 脱机设备脱机设备按从属关系分类:按从属关系分类:系统设备系统设备用户设备用户设备按信息组织方式分类:按信息组织方式分类:块设备块设备字符设备字符设备按设备的从属关系分类 操作系统时,就已经登记过的各种标准设备,如:键盘,显示器,打印机操作系统时,就已经登记过的各种标准设备,如:键盘,显示器,打印机 系统设备之外的非标准设备,安装时,需要装驱动程序,如:绘图仪,扫系统设备之外的非标准设备,安装时,需要装驱动程序,如:绘图仪,扫描仪描仪 按操作

4、特性分类按操作特性分类 :向主机输入信息和输出主机信息的设备。如:键盘,显示器:向主机输入信息和输出主机信息的设备。如:键盘,显示器 :计算机中用来存放各种信息的载体,如:磁盘,磁带,磁鼓:计算机中用来存放各种信息的载体,如:磁盘,磁带,磁鼓按设备共享属性分类 :该类设备一旦分配给某进程,直到该进程结束之后才能释放设备 :在一段时间内允许多个进程访问的设备,如:磁盘 :通过虚拟技术,将独享设备变换为若干台逻辑设备,供若干个进程同时使用设备独立性设备独立性1. 1. 设备独立性的概念设备独立性的概念(1 1)逻辑设备名)逻辑设备名逻辑设备名是用户自己定义的设备名(或设备号)。它是暂时的,逻辑设备

5、名是用户自己定义的设备名(或设备号)。它是暂时的,可更改的。可更改的。(2 2)物理设备名)物理设备名物理设备名是系统提供的设备的标准名称,它是永久的、不可更改物理设备名是系统提供的设备的标准名称,它是永久的、不可更改的的。(3 3)设备独立性)设备独立性 设备独立性是指用户在编程序时所使用的设备与实际设备无关。也就设备独立性是指用户在编程序时所使用的设备与实际设备无关。也就是在用户程序中可使用逻辑设备名。是在用户程序中可使用逻辑设备名。 3. 3. 设备独立性的优点设备独立性的优点 方便用户编程方便用户编程 提高系统资源的利用率提高系统资源的利用率 使用程序运行不受具体的机器环境的限制。使用

6、程序运行不受具体的机器环境的限制。 提高系统的可扩展性和可适应性提高系统的可扩展性和可适应性 外部设备在中央处理机外部设备在中央处理机 的控制下完成工作。的控制下完成工作。?中央处理机做多少工作?中央处理机做多少工作?外部设备做多少工作?外部设备做多少工作?决定决定 CPU I/OCPU I/O设备设备 并行能力并行能力2.2.数据传送控制方式数据传送控制方式设备控制器设备控制器一一 设备控制器设备控制器 什么是数据传送控制方式:什么是数据传送控制方式: 数据传送控制方式是指如何控制设备与内存之间数据传送控制方式是指如何控制设备与内存之间的数据传输过程的方的数据传输过程的方式。式。设备控制器设

7、备控制器在微型机和小型机中的控制器,常做成印刷电路卡形式,因而也成接口卡,可将它在微型机和小型机中的控制器,常做成印刷电路卡形式,因而也成接口卡,可将它插入计算机插入计算机( (插槽中插槽中) )。设备控制器是计算机中的一个实体,其主要职责是控制一个或多个设备控制器是计算机中的一个实体,其主要职责是控制一个或多个( (同类同类)I/O)I/O设备,设备,以实现以实现I/OI/O设备和计算机之间的数据交换。它是设备和计算机之间的数据交换。它是CPUCPU和和I/OI/O设备之间的接口,它接收从设备之间的接口,它接收从CPUCPU发来的命令,并去控制发来的命令,并去控制I/OI/O设备工作,以使处

8、理机从繁杂的设备控制事务中解脱设备工作,以使处理机从繁杂的设备控制事务中解脱出来。出来。程序(程序(CPUCPU)直接控制方式(直接控制方式(中断驱动方式(中断驱动方式(DMADMA控制方式控制方式 (通道控制方式(通道控制方式()程序直接控制方式:程序直接控制方式:早期采用早期采用“被动式被动式”,控制器设置一个完成标志,等待,控制器设置一个完成标志,等待CPUCPU来查询来查询由由CPUCPU直接控制内存和外围设备之间的信息传送。直接控制内存和外围设备之间的信息传送。I/OI/O操作操作由程序发起,并等待操作完成。数据的每次读写通过由程序发起,并等待操作完成。数据的每次读写通过CPU CP

9、U 控控制,包括发送读写命令、循环测试设备状态、传输数据。制,包括发送读写命令、循环测试设备状态、传输数据。接下页接下页(b)接收到接收到Start命令命令做接收或发送数据准备做接收或发送数据准备等待等待CPU来的下条命令来的下条命令标志触发器置标志触发器置“Done”执行下条命令执行下条命令开始数据传送开始数据传送等待等待发发Start命令命令准备完毕?准备完毕?设备标志触发设备标志触发器为器为“Done”外围设备外围设备(a)否否是是CPU是是否否程序直接控制方式图示程序直接控制方式图示接下页接下页返回返回优点:控制简单。优点:控制简单。缺点:缺点:1 1)CPUCPU和外围设备只能串行工

10、作。和外围设备只能串行工作。2 2)CPUCPU在一段时间内只能和一台外围设备交换数据信息,从而不能实现设备之在一段时间内只能和一台外围设备交换数据信息,从而不能实现设备之间的并行工间的并行工 作。作。 3 3)由于程序直接控制方式依靠测试设备标志触发器的状态位来控制数据传送,)由于程序直接控制方式依靠测试设备标志触发器的状态位来控制数据传送,因此无法发现和处理由于设备或其他硬件产生的错误。因此无法发现和处理由于设备或其他硬件产生的错误。适合:专用控制系统;外设较少、适合:专用控制系统;外设较少、CPUCPU速度较慢的系统速度较慢的系统。 工作方式:工作方式:CPUCPU向向I/OI/O部件发

11、出命令后,转去做其他有用的工作。部件发出命令后,转去做其他有用的工作。当当I/OI/O部件准备好一个数据(对输入)或输出完一个数据后(对输出)后,利用中断通部件准备好一个数据(对输入)或输出完一个数据后(对输出)后,利用中断通知知CPUCPU,再由再由CPUCPU完成设备与内存的数据传输。完成设备与内存的数据传输。特点:特点: CPUCPU不必反复测试寄存器状态,节约了时间。不必反复测试寄存器状态,节约了时间。CPUCPU可以与设备并行工作。但每可以与设备并行工作。但每个字节的数据传输都必须经过个字节的数据传输都必须经过CPUCPU寄存器转发。寄存器转发。接下页接下页中断控制方式处理过程中断控

12、制方式处理过程中断处理(处理数据传输)中断处理(处理数据传输)接收到接收到CPUCPU到到StartStart指令指令准备数据并将其准备数据并将其置入缓冲寄存器置入缓冲寄存器标志触发器置标志触发器置“DoneDone”调度程序调度其他程序调度程序调度其他程序向设备发向设备发StartStart命令,命令,将中断允许位置将中断允许位置1 1缓冲寄存缓冲寄存器满吗?器满吗?收到中断信号收到中断信号了吗?了吗?设备设备否否是是CPUCPU是是否否其他进程执行其他进程执行被中断进程执行被中断进程执行接下页接下页优点:优点:CPUCPU利用率较程序直接控制器有大大的利用率较程序直接控制器有大大的 提高,

13、且能支持多道程序和设备的并行操提高,且能支持多道程序和设备的并行操 作。作。缺点:缺点:1 1)在一次数据(若干字节)传送过程中,)在一次数据(若干字节)传送过程中, 发生中断次数较多。发生中断次数较多。 2 2)CPUCPU由于中断次数增多而无法响应中由于中断次数增多而无法响应中 断和出现数据丢失。断和出现数据丢失。适合:低速的字符设备适合:低速的字符设备返回返回以上介绍的程序控制方式和中断方式,主机与外设进行的数据传送都是以CPU为中心组织的。DMADMA方式方式: :直接存取方式直接存取方式其基本思路是在外部设备和内存之间开辟直接的数据交换通路其基本思路是在外部设备和内存之间开辟直接的数

14、据交换通路直接存取方式直接存取方式: :直接存储访问方式直接存储访问方式( (DMA, Direct Memory Access)DMA, Direct Memory Access)工作方式:由程序设置工作方式:由程序设置DMADMA控制器中的若干寄存器值(如内存始址,传送字节数),控制器中的若干寄存器值(如内存始址,传送字节数),然后发起然后发起I/OI/O操作;在操作;在DMADMA控制之下完成内存与外设的成批数据交换,在操作完成时由控制之下完成内存与外设的成批数据交换,在操作完成时由DMADMA控制器向控制器向CPUCPU发出中断。发出中断。接下页接下页DMA方式的传送结构2、DMA控制

15、器的组成控制器的组成为了实现在主机与控制器之间成块数据成块数据的直接交换 1) 命令命令/状态寄存器状态寄存器CR。用于接收从。用于接收从CPU发来的发来的I/O命令或有关控制信息,或命令或有关控制信息,或设备的状态。设备的状态。2) 内存地址寄存器内存地址寄存器MAR。在输入时,它存放把数据从设备传送到内存的起始。在输入时,它存放把数据从设备传送到内存的起始目标地址;在输出时,它存放由内存到设备的内存源地址。目标地址;在输出时,它存放由内存到设备的内存源地址。3) 数据寄存器数据寄存器DR。用于暂存从设备到内存,或从内存到设备的数据。用于暂存从设备到内存,或从内存到设备的数据。4) 数据计数

16、器数据计数器DC。存放本次。存放本次CPU要读或写的字要读或写的字(节节)数。数。DRMARDCCRI/O控制逻辑主机控制器接口控制器与块设备接口count内存CPU命令系统总线DMA控制器在DMA方式中,I/O控制除了控制状态寄存器和数据缓冲寄存器之外,DMA控制器中还包括传送字节计数器、内存地址寄存器等。DMA方式窃取或挪用CPU的一个工作周期把数据缓冲寄存器中的数据直接送到内存地址寄存器所指向的内存区域。DMADMA传输数据步骤:传输数据步骤:1.1.一进程请求设备一进程请求设备I/OI/O,CPUCPU做如下事:做如下事: 内存起始地址内存起始地址DMADMA控制器的地址寄存器控制器的

17、地址寄存器 传输字节数传输字节数 DMADMA控制器的字节计数器控制器的字节计数器 启动启动DMADMA控制器控制器2.2.该进程阻塞,等待该进程阻塞,等待I/OI/O完成完成3.DMA3.DMA与内存进行数据传输,成批数据传送由字节计数器计算控制与内存进行数据传输,成批数据传送由字节计数器计算控制4.4.传输完,向传输完,向CPUCPU发中断完成信号发中断完成信号5.CPU5.CPU接受接受DMADMA中断请求,转中断处理程序中断请求,转中断处理程序6.6.数据传送完成,唤醒被阻塞进程数据传送完成,唤醒被阻塞进程优点:优点:CPUCPU只需干预只需干预I/OI/O操作的开始和结束,而一批数据

18、传输由操作的开始和结束,而一批数据传输由DMADMA控制,无需控制,无需CPUCPU控制,控制,提高了提高了CPUCPU与设备的并行工作程度,排除了中断方式中的数据丢失现象。适于高速设备。与设备的并行工作程度,排除了中断方式中的数据丢失现象。适于高速设备。如:磁盘如:磁盘返回返回缺点:缺点:DMA方式对外围设备的管理和某些操作仍由方式对外围设备的管理和某些操作仍由CPU控制。系统中多个控制。系统中多个DMA同时使用,可能造成内存地址冲突。管理和控制复杂化。同时使用,可能造成内存地址冲突。管理和控制复杂化。DMA方式一次只能传送一批地址连续的数据块,如果需传送多个地方式一次只能传送一批地址连续的

19、数据块,如果需传送多个地址不连续的数据块,则需启动址不连续的数据块,则需启动DMA多次。多次。通道控制方式通道控制方式与DMA方式不同的是:在DMA方式中,数据的传送方向、存放数据的内存始址以及传送的数据块长度等都由CPU控制,而在通道方式中,这些都由专管输入输出的硬件通道来进行控制。DMA方式时每台设备至少一个DMA控制器相比,通道控制方式可以做到一个通道控制多台设备与内存进行数据交换,从而,通道方式进一步减轻了CPU的工作负担和增加了计算机系统的并行工作程度。 由于通道是一个专管输入输出操作控制的硬件,有必要更进一步完整地描述一下通道的定义:通道是一个独立于CPU的专管输入输出控制的处理机

20、,它控制设备与内存直接进行数据交换。它有自己的通道指令,这些通道指令受CPU启动,并在操作结束时向CPU发中断信号。优点:启动一次通道执行一个通道程序可以传送几批地址不连续的数据块。数据传输过程中优点:启动一次通道执行一个通道程序可以传送几批地址不连续的数据块。数据传输过程中对对CPUCPU的干扰比的干扰比DMADMA更少,更少,CPUCPU利用率更高,对通道的控制更简单。利用率更高,对通道的控制更简单。通道通过执行通道程序控制输入输出,比较灵活。通道通过执行通道程序控制输入输出,比较灵活。返回返回程序(程序(CPUCPU)直接控制方式(直接控制方式(中断驱动方式(中断驱动方式(DMADMA控

21、制方式控制方式 (通道控制方式(通道控制方式()在IO系统中增加,用以代替CPU与各设备控制器通信,对它们进行控制。具有通道装置的计算机系统,整个输入输出系统呈现如图所示的四级连接、三级控制方式。 一个通道可以以分时方式同时执行几个通道指令程序。按照信息交换方式不同,一个系统中可设立三种类型的通道,即字节多路通道、数组多路通道和选择通道。图9.7 通道方式的数据传送结构字节多路通道以字节为单位传送数据,它主要用来连接大量的低速设备,如终字节多路通道以字节为单位传送数据,它主要用来连接大量的低速设备,如终端、打印机等端、打印机等2. 数组多路通道以块为单位传送数据,它具有传送速率高和能分时操作不

22、同的设备数组多路通道以块为单位传送数据,它具有传送速率高和能分时操作不同的设备等优点。数组多路通道主要用来连接中速块设备,如磁带机等。等优点。数组多路通道主要用来连接中速块设备,如磁带机等。 数组多路通道和字节多路通道都可以分时执行不同的通道指令程序。但是,选择通道一次只能执行一个通道指令程序。所以,选择通道一次只能控制一台设备进行 I/O操作。不过,选择通道具有传送速度高的特点,因而它被用来连接高速外部设备,并以块为单位成批传送数据。受选择通道控制的外设有磁盘机等。缓冲的概念缓冲的概念1. 1. 为什么要使用缓冲为什么要使用缓冲(1)两种设备之间传输信息时速度不匹配两种设备之间传输信息时速度

23、不匹配 (2)负载不均匀负载不均匀 系统有时会产生大量的数据需要系统有时会产生大量的数据需要I/O,有时又会很长时间没有,有时又会很长时间没有I/O,造成,造成I/O负荷的不均匀。负荷的不均匀。慢速设备快速设备慢速设备快速设备中速设备缓冲2. 2. 什么是缓冲什么是缓冲缓冲是用来在两种不同速度的设备之间传输信息时平滑传输过程的常用手段。缓冲技术是用来匹配CPU与设备之间速度差异和负荷的不均匀。3. 3. 缓冲的实现缓冲的实现(1)缓冲器用来暂时存放数据的一种硬件存储装置,容量较小。(2)软件缓冲区 I/O操作期间,用来临时存放I/O数据的一块主存区域。单缓冲单缓冲( (single buffe

24、r)single buffer):设一个缓冲区,设一个缓冲区,CPUCPU和外设轮流使用,和外设轮流使用, 一方处理完之后接着等待对方处理。一方处理完之后接着等待对方处理。双缓冲双缓冲( (double buffer)double buffer):设两个缓冲区,设两个缓冲区,CPUCPU和外设都可以连和外设都可以连 续处理而无需等待对方。要求续处理而无需等待对方。要求CPUCPU和外设的速度相近。和外设的速度相近。多缓冲多缓冲( (multiply buffer)multiply buffer):多个缓冲区,多个缓冲区,CPUCPU和外设的处理速和外设的处理速 度可以相差较大。如用于输入或输出

25、的环形缓冲区。(一般是度可以相差较大。如用于输入或输出的环形缓冲区。(一般是 专用)专用)缓冲池缓冲池( (bufferbufferpool)pool):由多个缓冲区构成,既可用于输入也由多个缓冲区构成,既可用于输入也 可用于输出,多个进程共享,可用于多种设备。(通用,利用可用于输出,多个进程共享,可用于多种设备。(通用,利用 率高)率高)I/O设备设备输入输入用户进程用户进程操作系统操作系统I/O设备设备输入输入用户进程用户进程操作系统操作系统输入输入I/O设备设备用户进程用户进程操作系统操作系统(a)(b)(c)( (a)a)单缓冲单缓冲 ;( ;(b)b)双缓冲双缓冲; (; (c)c)

26、循环缓冲循环缓冲操作系统操作系统缓冲区缓冲区A缓冲区缓冲区B用户进程用户进程用户区用户区I/O设备设备输入传送双缓冲工作流程示意图双缓冲工作流程示意图以下数据结构用来记录设备或部件的标识状态等信息:以下数据结构用来记录设备或部件的标识状态等信息:系统设备表系统设备表SDTSDT:每个系统设备占一表目每个系统设备占一表目设备控制表设备控制表DCTDCT:每个设备一张每个设备一张控制器控制表控制器控制表COCTCOCT:每个控制器一张每个控制器一张通道控制表通道控制表CHCTCHCT:每个通道一张每个通道一张表目表目i表目表目1DCT指针指针获得设备的进程获得设备的进程设备标识设备标识设备类型设备

27、类型控制器等待队列尾控制器等待队列尾控制器等待队列首控制器等待队列首COCT指针指针设备忙闲标记设备忙闲标记设备标识设备标识设备类型设备类型控制忙闲标记控制忙闲标记控制器等待队列尾控制器等待队列尾控制器等待队列首控制器等待队列首CHCT指针指针控制器标识控制器标识通道忙闲标记通道忙闲标记通道等待队列尾通道等待队列尾通道等待队列首通道等待队列首通道标识通道标识SDFDCT设备控制表设备控制表控制器控制表控制器控制表COCTCHCT通道控制表通道控制表等待进程队列等待进程队列设备分配流程图设备分配流程图分配过程:如下所示分配过程:如下所示进程申请进程申请I/OI/O分配设备分配设备分配分配控制器控

28、制器分配通道分配通道进程加入设进程加入设备等待队列备等待队列进程加入通进程加入通道等待队列道等待队列进程加入控制进程加入控制字等待队列字等待队列成功成功成功成功成功成功成功成功不成功不成功不成功不成功不成功不成功启动启动I/OI/O与设备分配有关的设备属性:与设备分配有关的设备属性:独享设备:打印机等;独享设备:打印机等;共享设备:磁盘、网卡等;虚拟设备。共享设备:磁盘、网卡等;虚拟设备。设备分配方式:设备分配方式:静态分配静态分配:在进程分创建时分配,在进程退出时释放;:在进程分创建时分配,在进程退出时释放;优缺点:不会出现死锁;优缺点:不会出现死锁;设备利用率不高;设备利用率不高;动态分配

29、动态分配:在进程执行过程中根据需要分配,使用结束后释放;:在进程执行过程中根据需要分配,使用结束后释放;优缺点优缺点:需要考虑死锁问题需要考虑死锁问题有利于提高设备利用率有利于提高设备利用率设备分配的原则:设备分配的原则:合理使用外设合理使用外设( (公平和避免死锁公平和避免死锁) ),提高设备利用率。,提高设备利用率。设备分配策略:针对特定的设备采用特定的分配策略。设备分配策略:针对特定的设备采用特定的分配策略。先来先服务先来先服务( (FCFS)FCFS):按按I/OI/O请求的先后顺序,排成请求的先后顺序,排成I/OI/O请求命令队列;按请求命令队列;按FCFSFCFS分配设分配设备;备

30、;1)1)基于优先级基于优先级:依据进程的优先级,指定:依据进程的优先级,指定I/OI/O请求的优先级,排成不同优先级队列;按请求的优先级,排成不同优先级队列;按优先级高低分配设备;优先级高低分配设备;设备驱动程序设备驱动程序 驱动物理设备和驱动物理设备和DMADMA控制器或控制器或I/OI/O控制器等直接进行控制器等直接进行I/OI/O操作的子程序操作的子程序的集合。负责设置相应设备有关寄存器的值,启动设备进行的集合。负责设置相应设备有关寄存器的值,启动设备进行I/OI/O操作,指操作,指定操作的类型和数据流向等。定操作的类型和数据流向等。 引入:在多道批处理系统中,专门利用一道或几道程序来

31、完成对设备的引入:在多道批处理系统中,专门利用一道或几道程序来完成对设备的I/OI/O操作。无操作。无需使用外围需使用外围I/OI/O处理机。处理机。利用假脱机技术利用假脱机技术( (SPOOLing, Simultaneous Peripheral Operation On Line, SPOOLing, Simultaneous Peripheral Operation On Line, 也称为虚拟也称为虚拟设备技术设备技术) )可把独享设备转变成具有共享特征的虚拟设备,从而提高设备利用率。可把独享设备转变成具有共享特征的虚拟设备,从而提高设备利用率。Application AApplic

32、ation BSPOOLingProgramDeviceVirtual I/OActual I/O 虚拟分配虚拟分配1. 1. 什么是虚拟技术什么是虚拟技术所谓虚拟技术,是在一类物理设备(如外存)上模拟另一类物理设备(如打印机)的技术,是将独占设备转化为共享设备的技术。2. 2. 什么是虚拟设备什么是虚拟设备通常把用来代替独占设备的那部分外存空间代替独占设备的那部分外存空间(包括有关的控制表格)称为虚拟设备。3. 3. 虚拟分配虚拟分配当进程需要与独占型设备交换信息时,系统将分配磁盘空间,并建立相应的数据结构,这种分配方法称为设备的虚拟分配。例:共享打印机例:共享打印机共享打印机技术已被广泛地

33、用于多用户系统和局域网络中。当用户进程请求打印输共享打印机技术已被广泛地用于多用户系统和局域网络中。当用户进程请求打印输出时,出时,SPOOLingSPOOLing系统同意为它打印输出,但并不真正立即把打印机分配给该用户进系统同意为它打印输出,但并不真正立即把打印机分配给该用户进程,而只为它做两件事:程,而只为它做两件事: 由输出进程在输出井中为之申请一个空闲磁盘块区,并将要打印的数据送入由输出进程在输出井中为之申请一个空闲磁盘块区,并将要打印的数据送入其中;其中; 输出进程再为用户进程申请一张空白的用户请求打印表,并将用户的打印要输出进程再为用户进程申请一张空白的用户请求打印表,并将用户的打

34、印要求填入其中,再将该表挂到请求打印队列上。求填入其中,再将该表挂到请求打印队列上。SPOOLingSPOOLing系统的特点系统的特点1) 1) 提高了提高了I/OI/O的速度的速度2) 2) 将独占设备改造为共享设备将独占设备改造为共享设备3) 3) 实现了虚拟设备功能实现了虚拟设备功能CPUCPU和内存的访问速度比磁盘要快若干个数量级,磁盘系统的性能对整个系统的性能和内存的访问速度比磁盘要快若干个数量级,磁盘系统的性能对整个系统的性能有重要影响。有重要影响。磁盘设备管理的目标磁盘设备管理的目标: :就是提高磁盘系统的性能就是提高磁盘系统的性能 ? 从哪些方面可以提高磁盘系统的性能提高磁盘

35、系统的性能磁盘的调度算法磁盘的调度算法数据的合理组织数据的合理组织 一一 磁盘的调度算法磁盘的调度算法 减少设备机械运动所带来的时间浪费减少设备机械运动所带来的时间浪费 当多个访盘请求在等待时,采用一定的策略,对这些请求的服务顺序调整安排,当多个访盘请求在等待时,采用一定的策略,对这些请求的服务顺序调整安排,降低平均磁盘服务时间,达到高效公平。降低平均磁盘服务时间,达到高效公平。1 1 认识磁盘认识磁盘直接(随机)存取设备直接(随机)存取设备存取磁盘上任一物理块的时间不依赖存取磁盘上任一物理块的时间不依赖物理块所处的位置物理块所处的位置67 磁盘是将若干个涂有铁磁的圆形金属或塑料片组合在一起构

36、成的盘组,每个圆盘有上下两个盘面每个盘面有一个读写磁头,读写磁盘时,磁头通过存取臂在盘面上移动,而盘体绕中心轴高速旋转.68 盘组旋转一周,磁头在盘面上的移动轨迹称为磁道(一个圆),盘组旋转一周,磁头在盘面上的移动轨迹称为磁道(一个圆),各个盘面上半径相同的磁道合起来构成一个柱面各个盘面上半径相同的磁道合起来构成一个柱面 一个磁道又被分成许多扇区,一般每条磁道上扇区数目在一个磁道又被分成许多扇区,一般每条磁道上扇区数目在8 8至至3232之间,每个扇区的字节数相同(一般为之间,每个扇区的字节数相同(一般为512512)磁道磁道扇区扇区格式化格式化格式化格式化1 1、划分磁道和扇区。、划分磁道和

37、扇区。2 2、建立目录区和文件分配表。(、建立目录区和文件分配表。(0 0磁道磁道0 0柱面,柱面,1 1扇区)扇区)3 3、检查整个磁盘上有无带缺陷的磁道,并对其加注标记,避免被使用、检查整个磁盘上有无带缺陷的磁道,并对其加注标记,避免被使用 柱面柱面扇区扇区磁臂磁臂磁头磁头盘面中处于同一磁盘面中处于同一磁道号上的所有磁道道号上的所有磁道组成一个柱面组成一个柱面物理地址形式:物理地址形式: 磁头号(盘面号)磁头号(盘面号) 磁道号(柱面号)磁道号(柱面号) 扇区号扇区号 磁盘系统由磁盘本身和驱动控制设备组成,实际存取读写的动作过程是由磁盘驱动磁盘系统由磁盘本身和驱动控制设备组成,实际存取读写

38、的动作过程是由磁盘驱动控制设备按照主机要求完成的。控制设备按照主机要求完成的。 一次访盘请求:一次访盘请求: 读读/ /写,磁盘地址(设备号,柱面写,磁盘地址(设备号,柱面 号,磁头号,扇区号),内存地址(源号,磁头号,扇区号),内存地址(源/ /目)目)柱面定位时间:磁头移动到指定柱面的机柱面定位时间:磁头移动到指定柱面的机 械运动时间;械运动时间;旋转延迟时间:磁盘旋转到指定扇区的机械运动时间;它与磁盘转速相关。旋转延迟时间:磁盘旋转到指定扇区的机械运动时间;它与磁盘转速相关。数据传送时间:从指定扇区读写数据的时间。数据传送时间:从指定扇区读写数据的时间。返回返回设备占用等待时间I/O通道

39、占用等待时间柱面定位时间旋转延迟时间数据传送时间磁盘设备忙一次访盘时间一次访盘时间 = = 定位时间定位时间+ +延迟时间延迟时间+ +存取时间存取时间磁盘调度考虑的问题:磁盘调度考虑的问题:减少柱面定位时间减少柱面定位时间减少旋转延迟时间减少旋转延迟时间 Os:Os:减少设备机械运动所带来的时间浪费减少设备机械运动所带来的时间浪费 3 3 磁盘的驱动调度磁盘的驱动调度 定位时间定位时间和延迟时间延迟时间尽可能小驱动调度有“移臂调度移臂调度”和“旋转调度旋转调度”两部分组成。柱面定位时间在访问时间中占主要部分。A A 移臂调度移臂调度 来自不同进程的磁盘I/O请求构成一个随机分布的请求队列。磁

40、盘 I/O调度的主要目标减少寻找柱面的时间,使得平均柱面定位时间缩短 常用的移臂调度算法有: 先来先服务算法先来先服务算法 最短寻找时间优先算法最短寻找时间优先算法 电梯调度算法电梯调度算法 78(1 1)先进先出()先进先出(FCFSFCFS)先来先服务:按访问请求到达的先后次序服务。先来先服务:按访问请求到达的先后次序服务。假设磁头初始位置是假设磁头初始位置是100100,磁盘访问请求柱面序列:,磁盘访问请求柱面序列:5555、5858、3939、1818、9090、160160、150150、3838、184184 磁头移动总距离(道数):磁头移动总距离(道数): 45+3+19+21+

41、72+70+10+112+146=49845+3+19+21+72+70+10+112+146=498 平均寻道长度:平均寻道长度:498/9 = 55.33498/9 = 55.33 由于柱面定位时间在访问时间中占主要部分,合理组成磁盘数据的由于柱面定位时间在访问时间中占主要部分,合理组成磁盘数据的存储位置可提高磁盘存储位置可提高磁盘I/OI/O性能。性能。例子:读一个例子:读一个128128KBKB大小的文件:大小的文件:(1)(1)文件由文件由8 8个连续磁道个连续磁道( (每个磁道每个磁道3232个扇区个扇区) )上的上的256256个扇区构成:个扇区构成:2020ms+(8.3ms+

42、16.7ms)ms+(8.3ms+16.7ms)* *8=220ms;8=220ms;其中,柱面定位时间为其中,柱面定位时间为2020msms,旋转延迟时间为旋转延迟时间为8.38.3msms,一个磁道上一个磁道上3232个个扇区数据传送时间为扇区数据传送时间为16.716.7msms;(2)(2)文件由文件由256256个随机分布的扇区构成:个随机分布的扇区构成:(20(20ms+8.3ms+0.5ms)ms+8.3ms+0.5ms)* *256=7373ms;256=7373ms;其中,其中,1 1扇区数据传送时间为扇区数据传送时间为0.50.5msms;随机分布时的访问时间为连续分布时的

43、随机分布时的访问时间为连续分布时的33.533.5倍。倍。先来先服务先来先服务优点:简单,公平;优点:简单,公平;缺点:效率不高,相邻两次请求可能会造成最内到最外的柱面寻道,使磁头反复缺点:效率不高,相邻两次请求可能会造成最内到最外的柱面寻道,使磁头反复移动,增加了服务时间,对机械也不利移动,增加了服务时间,对机械也不利 (2 2) 最短查找时间优先算法最短查找时间优先算法 ( (SSTF, Shortest Service Time First)SSTF, Shortest Service Time First) 考虑磁盘考虑磁盘I/OI/O请求队列中各请求的柱面位置,选择从当前磁头位置出发

44、,移动臂移动请求队列中各请求的柱面位置,选择从当前磁头位置出发,移动臂移动距离最短的磁盘距离最短的磁盘I/OI/O请求。请求。请求柱面序列:请求柱面序列:5555、5858、3939、1818、9090、160160、150150、3838、184184调度顺序:调度顺序:9090、5858、5555、3939、3838、1818、150150、160160、184184最短查找时间优先最短查找时间优先( (SSTF, Shortest Service Time First)SSTF, Shortest Service Time First)算法:算法: 考虑磁盘考虑磁盘I/OI/O请求队列中

45、各请求的柱面位置,选择从当前磁头位置请求队列中各请求的柱面位置,选择从当前磁头位置 出发,移动臂移动距离最短的磁盘出发,移动臂移动距离最短的磁盘I/OI/O请求。请求。 该算法的目标是使每次磁头移动时间最少。它不一定是最短平该算法的目标是使每次磁头移动时间最少。它不一定是最短平 均柱面定位时间,但比均柱面定位时间,但比FIFOFIFO算法有更好的性能。算法有更好的性能。 可能会有进程处于饥饿状态。可能会有进程处于饥饿状态。扫描扫描( (SCAN)SCAN)算法:算法: 选择在磁头前进方向上从当前位置移动距离最短的磁盘选择在磁头前进方向上从当前位置移动距离最短的磁盘I/OI/O请求执请求执 行,

46、没有前进方向上的请求时才改变方向。(也叫电梯调度算法)行,没有前进方向上的请求时才改变方向。(也叫电梯调度算法) 该算法是对该算法是对SSTFSSTF算法的改进,磁盘算法的改进,磁盘I/OI/O较好,且没有进程会饿死。较好,且没有进程会饿死。 磁头移动总距离(道数):磁头移动总距离(道数): 10+32+3+16+1+20+132+10+24=248 10+32+3+16+1+20+132+10+24=248 平均寻道长度:平均寻道长度:248/9 = 27.55248/9 = 27.55优点:改善了磁盘平均服务时间优点:改善了磁盘平均服务时间缺点:可能造成某些访问请求长期等待得不到服务,可能

47、会有进程处于饥饿状态缺点:可能造成某些访问请求长期等待得不到服务,可能会有进程处于饥饿状态调度顺序:调度顺序:9090、5858、5555、3939、3838、1818、150150、160160、184184(3)扫描算法(扫描算法(SCANSCAN) (电梯算法)(电梯算法) 既考虑了距离,同时又考虑了方向既考虑了距离,同时又考虑了方向 具体做法:当设备无访问请求时,磁头不动;当有访问请求时,磁头按一个方向移具体做法:当设备无访问请求时,磁头不动;当有访问请求时,磁头按一个方向移动,在移动过程中对遇到的访问请求进行服务,然后判断该方向上是否还有访问请动,在移动过程中对遇到的访问请求进行服务,然后判断该方向上是否还有访问请求,如果有则继续扫描;否则改变移动方向,并为经过的访问请求服务,如此反复求,如果有则继续扫描;否则改变移动方向,并为经过的访问请求服务,如此反复请求柱面序列:55、58、39、18、90、160、150、3

温馨提示

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

评论

0/150

提交评论