第七章 外围设备管理_第1页
第七章 外围设备管理_第2页
第七章 外围设备管理_第3页
第七章 外围设备管理_第4页
第七章 外围设备管理_第5页
已阅读5页,还剩144页未读 继续免费阅读

下载本文档

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

文档简介

1、引言 数据传输控制方式 (重点) 中断技术 (重点) 缓冲技术 (重点) 设备分配 I/O进程控制 设备驱动程序,第七章 设备管理,7.1 引言,I/O设备管理的重要性 外部设备类型和特征 设备管理的目的和功能 外设管理结构,1、I/O管理的重要性,(1) I/O设备就像计算机系统的五官和四肢 (2) I/O性能成为系统性能的瓶颈 CPU性能不等于系统性能 CPU性能越高,与I/O差距越大,2、外部设备类型和特征,外部设备类型 (1)按交互对象分类 人机交互设备:显示器、键盘、鼠标 与计算机或其他电子设备交互的设备:磁盘 计算机间的通信设备:网卡,(2)按交互方向分类 输入(可读):键盘、扫描

2、仪 输出(可写):显示设备、打印机 输入/输出(可读写):磁盘、网卡,2、外部设备类型和特征,(3)按外设特性分类 按数据传输率: 低速(如键盘) 中速(如打印机) 高速(如网卡、磁盘),2、外部设备类型和特征,(3)按外设特性分类 信息组织特征 字符设备(如打印机):通常的输入输出型设备 块设备(如磁盘):以数据块为单位存储、传输信息。,2、外部设备类型和特征,(4)按使用特性对外部设备的分类,2、外部设备类型和特征,(5)从程序使用角度分类 逻辑设备: 用户程序中使用的设备 物理设备:实际完成I/O操作的设备,2、外部设备类型和特征,(6)按资源分配角度分类 独占设备 在一段时间内只能有一

3、个进程使用的设备。如打印机,磁带等。,2、外部设备类型和特征,(6)按资源分配角度分类 共享设备 在一段时间内可有多个进程共同使用的设备。 如硬盘。 虚设备 独占设备的虚拟共享(SPOOLING),2、外部设备类型和特征,3 外设管理的目的和功能,(1)外设管理目的 提高效率:提高I/O访问效率,匹配CPU和多种不同处理速度的外设; 方便使用:方便用户使用; 方便控制:方便OS内部对设备的控制。,从设备分配的角度来看,设备分成( )。,独享设备,A,系统设备,B,用户设备,C,共享设备,D,虚拟设备,E,提交,(2) 设备管理功能 提供设备使用的用户接口:命令接口和编程接口 设备分配和释放 设

4、备的访问和控制 I/O缓冲和调度,3 外设管理的目的和功能,(3)设备管理的任务 选择和分配输入输出设备 控制输入输出设备和CPU之间数据交换 为用户提供一个友好的用户接口,使得用户在使用和编程时不需要了解硬件特性 完成设备和设备、CPU和设备、进程和进程之间的并行操作,3 、外设管理的目的和功能,设备管理的功能包括_。,设备的分配和回收,A,外围设备的启动及对磁盘的驱动调度,B,进程调度,C,外部设备中断处理,D,虚拟设备的实现,E,提交,5、 外部管理结构,(1)逻辑I/O 编程用户接口,提供抽象的命令,如:Read, Write。 通信设备接口。如网络协议栈; 文件存储设备接口。如文件系

5、统的逻辑结构控制。,5、 外部管理结构,(2)设备I/O:逻辑设备与物理设备间的过渡协调机构 用户命令到设备操作序列的转换; I/O缓冲:提高I/O效率。,5、 外部管理结构,(3)调度和控制:直接面对硬件设备的控制细节,体现为设备驱动程序。 并发I/O访问调度; 设备控制和状态维护; 中断处理。,5、 外部管理结构,7.2 数据传送控制方式,是本章重点内容之一 设备管理重要任务:控制外部设备和内存或CPU之间的数据传送,7.2 数据传送控制方式,外围设备与内存间常用的数据传送控制方式: 程序直接控制方式 中断控制方式 DMA方式 通道方式,评价数据传送控制方式的原则 数据传输速度足够高,能满

6、足用户的需要但又不丢失数据; 系统开销小,所需的处理控制程序少; 能充分发挥硬件资源的能力,使得I/O设备尽量忙,而CPU等待时间少,7.2 数据传送控制方式,7.2.1 程序直接控制方式,概念:I/O操作由程序发起,并等待操作完成。数据的每次读写通过CPU。,1、程序控制I/O处理过程,2、程序直接控制方式缺点 在外设进行数据处理准备工作时,CPU只能等待; CPU与外设只能串行工作(外设在准备数据时间段); 只适用于CPU执行速度较慢,且外围设备较少的系统。,7.2.1 程序直接控制方式,7.2.2 中断驱动方式,1、概念 I/O操作由程序发起,在外设的数据准备工作完成时(如数据可读或已经

7、写入),由外设向CPU发出中断,通知该程序。数据的每次读写通过CPU。 外设与CPU有良好的通信。,2、中断控制方式的传送结构,7.2.2 中断驱动方式,3 、中断驱动方式处理过程,7.2.2 中断驱动方式,4、中断方式特点 (1)优点 在外设准备数据时,CPU不必等待,可以继续执行该程序或其他程序。 (2)缺点 CPU每次处理的数据量少,只适于数据传输率较低的设备。,7.2.2 中断驱动方式,某操作系统中,采用中断驱动I/O控制方式,设中断时,CPU用1ms来处理中断请求,其它时间CPU完全用来计算,若系统时钟中断频率为100HZ,则,CPU的利用率为( )。,60%,A,70%,B,80%

8、,C,90%,D,提交,7.2.3 直接存储访问方式 ( DMA),1、概念 由程序设置DMA控制器中的若干寄存器值(如内存始址、传送字节数),然后开始I/O操作,进行内存与外设的成批数据交换,在操作完成时由DMA控制器向CPU发出中断。,7.2.3 直接存储访问方式 ( DMA),2、特征 CPU只需干预I/O操作的开始和结束,而其中的一批数据读写无需CPU控制,适于高速设备。,3、I/O控制器结构,7.2.3 直接存储访问方式 ( DMA),4、DMA方式的传送结构,7.2.3 直接存储访问方式 ( DMA),5、DMA方式的数据传送处理过程,系统将数据从磁盘读到内存的过程包括以下操作:

9、1) DMA控制器发出中断请求 2) 初始化DMA控制器并启动磁盘 3) 从磁盘传输一块数据到内存缓冲区 4) 执行“DMA结束”中断服务程序 正确的执行顺序是 ( )。,3 1 2 4,A,2 3 1 4,B,2 1 3 4,C,1 2 4 3,D,提交,6、DMA工作原理 CPU存放交互数据的内存起始地址、要传送的字节数送入DMA控制器的内存地址寄存器和传送字节计数器,中断允许位和启动位置成1,启动设备; 发出传输要求的进程进入等待状态,执行指令被暂时挂起,进程调度其他进程占据CPU;,7.2.3 直接存储访问方式 ( DMA),6、DMA工作原理 输入设备不断窃取CPU工作周期,数据不断

10、写入内存; 传送完毕,发出中断信号; CPU接到中断信号转入中断处理程序处理; 中断处理结束,CPU返回原进程或切换到新的进程。,7.2.3 直接存储访问方式 ( DMA),7、窃取总线控制权 (1)DMA和CPU共享主存储器和总线,会出现I/O处理器和CPU同时争相访问主存的情况; (2)I/O处理器和CPU规定了不同的优先顺序;通常CPU被规定为最低优先级;,7.2.3 直接存储访问方式 ( DMA),7、窃取总线控制权 (3)系统总线的使用是在CPU控制之下的,当I/O处理器要求使用总线时,向CPU发出请求总线的信号,CPU就把总线使用权暂时转让给I/O处理器。,7.2.3 直接存储访问

11、方式 ( DMA),8、DMA执行的时机,处理器周期,处理器周期,处理器周期,处理器周期,处理器周期,处理器周期,指令周期,取指令,指令解码,取操作数,执行指令,保存结果,进程中断,DMA断点,中断点,7.2.3 直接存储访问方式 ( DMA),9、DMA方式与中断方式的主要区别 (1)中断方式是在数据缓冲寄存器满后,发中断请求,CPU进行中断处理; (2) DMA方式则是在所要求传送的数据块全部传送结束时要求CPU进行中断处理,中间只是暂停一个CPU周期。,7.2.3 直接存储访问方式 ( DMA),9、DMA方式与中断方式的主要区别 (3)大大减少了CPU进行中断处理的次数; (4)中断方

12、式的数据传送是由CPU控制完成的; (5)DMA方式则是在DMA控制器的控制下不经过CPU控制完成的,因此避免了因速度不匹配而造成数据丢失的现象。(DMA硬件比较复杂)。,7.2.3 直接存储访问方式,10、DMA特点 (1)优点:CPU只需干预I/O操作的开始和结束,而其中的一批数据读写无需CPU控制,适于高速设备。 (2)缺点:对外围设备的管理和操作仍由CPU控制;多个DMA控制器的同时使用会引起内存地址的冲突。,7.2.3 直接存储访问方式,11、DMA工作示例(硬盘为例),(1)CPU工作原理 被读取块磁盘地址 目标存储地址 待读取字节数 整块数据读进缓冲区 核准校验,11、DMA工作

13、示例(硬盘为例),(2)控制器工作原理 控制器按照指定存储器地址,把第一个字节送入主存; 按指定字节数进行数据传送; 每当传送一个字节后,字节计数器值减1,直到字节计数器等于0; 此时,控制器引发中断,通知操作系统进一步处理。,11、DMA工作示例(硬盘为例),7.2.4 通道控制方式,通道(I/O处理机)定义 专门用于输入输出的设备,有低速率的CPU,能够执行输入输出指令。,7.2.4 通道控制方式,2、特点 (1)配有专用处理机:可执行输入输出程序的、只负责外部设备与内存直接交换数据的; (2)负责外部设备与内存之间的数据传送的一切工作; (3)CPU只命令I/O处理机执行主存中的I/O程

14、序。当整个I/O程序执行完成后,CPU被中断。,通道是一种_。,保存I/O信息的部件,A,传输信息的电子线路,B,专用处理机,C,通用处理机,D,可与CPU并行工作的一种处理机,E,提交,3、通道指令 (1)引入目的:通道控制方式中,CPU不用向通道控制器传送字节数和内存起始地址给相关寄存器; (2)通道指令内容:被交换数据的内存地址、传送方向、数据块长度、被控制I/O设备的地址信息、特征信息等,7.2.4 通道控制方式,3、通道指令 (3)格式 组成内容:操作码(读、写或控制)、通道指令结束标志、 记录结束标志、计数段(数据块长度)、内存地址段。 通道指令实例 write 0 0 250 1

15、850; write 1 1 250 720;,7.2.4 通道控制方式,4. 引入通道的目的与优点 (1)目的 为了使CPU从I/O事务中解脱出来,同时为了提高CPU与设备,设备与设备之间的并行工作能力。 (2)优点 执行一个通道程序可以完成多批I/O操作。,7.2.4 通道控制方式,下列属于“通道”特征的是 _。,负责数据输入输出工作,A,可以与CPU并行工作,B,比CPU工作速度快,C,一个通道可连接多个控制器,D,是一种软件,E,提交,利用通道实现了( )之间数据的快速传输。,CPU和外设,A,内存和CPU,B,内存和外设,C,外设和外设,D,提交,5、通道方式的数据传送结构,6、DM

16、A和通道数据传输方式区别 (1)DMA:数据的传输方向、存放数据的内存地址和传送的数据块长度由CPU控制; (2)通道方式:数据的传输方向、存放数据的内存地址和传送的数据块长度由通道本身完成; (3)DMA控制器只能控制一台DMA设备,而一个通道控制器可以控制多个通道设备。,7.2.4 通道控制方式,在下面的I/O控制方式中,需要CPU干预最少的方式是( )。,程序I/O方式,A,中断驱动I/O控制方式,B,直接存储器访问DMA控制方式,C,I/O通道控制方式,D,提交,为了实现CPU与外部设备间最大的并行性,应采用( )。,中断技术,A,共享设备,B,通道设备,C,缓冲设备,D,提交,7.

17、通道分类 (1)选择通道:可以连接多个外设,而一次只能访问其中一个外设; (2)成组多路通道:可以并发访问多个外设,同时连接多个中速块设备; (3)字节多路通道:多个字符设备,7.2.4 通道控制方式,7. 通道分类 (1) 字节多路通道 字节多路通道以字节为单位传输信息; 连接以字节为单位的低速I/O设备。如打印机,终端; 可并发工作。,7.2.4 通道控制方式,字节多路通道的工作原理,字节多路通道的工作原理,7. 通道分类 (2) 选择通道(不能并发) 工作特点:选择通道是以成组方式工作的,每次传送一批数据,传送速度很高。选择通道在一段时间内只能执行一个通道程序,只允许一台设备进行数据传输

18、。 当这台设备数据传输完成后,再选择与通道连接的另一台设备,执行它的相应的通道程序。,7.2.4 通道控制方式,7. 通道分类 (2) 选择通道(不能并发),7.2.4 通道控制方式,7. 通道分类 (3)成组多路通道 工作特点: 结合了选择通道传送速度高和字节多路通道能进行分时并行操作的优点; 它先为一台设备执行一条通道指令,然后自动转接,为另一台设备执行一条通道指令。,7.2.4 通道控制方式,8、通道硬件结构,7.2.4 通道控制方式,9、通道、控制器与外设关系 一个通道可连接多个控制器,一个控制器可连接多个设备,形成树形交叉连接,7.2.4 通道控制方式,9、设备、控制器、通道、内存之

19、间的关系 (1)单通道I/O系统,7.2.4 通道控制方式,9、设备、控制器、通道、内存之间的关系 (2)多通道I/O系统,交叉连接,7.2.4 通道控制方式,10.通道控制方式数据输入处理过程 (1)当进程要求设备输入数据时,CPU发Start指令指明I/O操作、设备号和对应通道; (2)对应通道接收到CPU发来的启动指令Start之后,把存放在内存中的通道指令程序读出,设置对应设备的I/O控制器中的控制状态寄存器;,7.2.4 通道控制方式,10.通道控制方式数据输入处理过程 (3)设备根据通道指令的要求,把数据送往内存中指定区域; (4)若数据传送结束,I/O控制器通过中断请求线发出中断

20、信号请求CPU做中断处理; (5)中断处理结束后CPU返回被中断进程处继续执行。,7.2.4 通道控制方式,从CPU执行的角度描述通道控制,下列()不是磁盘设备的特点。,传输速率较高,以数据块为传输单位,A,一段时间内只允许一个用户(进程)访问,B,I/O控制方式常采用DMA方式,C,可以寻址,随机地读/写任意数据块,D,提交,7.3 中断技术,中断的基本概念 中断的分类和优先级 软中断 中断处理过程,7.3.1 中断处理概念,1、中断概念 指计算机在执行期间,系统内发生任何非寻常的或非预期的紧急处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后又返回原来

21、被中断处继续执行或调度新的进程执行的过程。,7.3.1 中断处理概念,2、专业名词 (1)中断源:引起中断发生的事件; (2)中断请求:中断源向CPU发出的请求中断处理信号; (3)中断响应:CPU收到中断请求后转相应的事件处理程序。,7.3.1 中断处理概念,2、相关专业名词 (4)禁止中断:将CPU内部的处理机状态字PSW的中断允许位清除,从而不允许CPU响应中断,所以又称为关中断; (5)开中断:设置中断允许位,或称为打开中断允许位,7.3.1 中断处理概念,2、相关专业名词 (6)中断屏蔽:指在中断请求产生后,系统用软件方式有选择地封闭部分中断而允许其余部分的中断仍能得到响应; 最高优

22、先级的中断不管计算机处理何种状态,必须能够立即响应的,例如电源中断,机器必须及时响应,无法中断。,7.3.2 中断的分类和优先级,3、中断分类 (1)外中断:所有外围设备(除了CPU和内存)产生的中断; (2)内中断:由CPU和内存产生的中断。例如系统调用,4、外中断和内中断区别 (1)内中断通常由处理机正在执行的现行指令引起,而外中断则是由与现行指令无关的中断源引起; (2)内中断处理程序提供的服务为当前进程所用,而外中断处理程序提供的服务则不是;,7.3.2 中断的分类和优先级,4、外中断和内中断区别 (3)CPU在响应完一条指令之后,下一条指令开始之前响应外中断,而在一条指令执行中可以响

23、应内中断。,7.3.2 中断的分类和优先级,7.3.2 中断的分类和优先级,5、中断优先级 (1)CPU的处理机状态字PSW动态设置优先级; (2)中断源请求能否得到响应取决于和PSW的优先级比较,高于则能做出响应。,7.3.3 中断处理过程,7.3.4 中断处理具体过程,1、CPU检查相应中断条件是否满足; 2、如果CPU相应中断,则CPU关中断,使其进入不可再次响应中断的状态; 3、保存被中断进程现场;,7.3.4 中断处理具体过程,4、分析中断原因,调用中断处理子程序; 5、执行中断处理子程序; 6、退出中断,恢复被中断进程的现场或调度新进程占据处理机; 7、开中断,CPU继续执行。,从

24、CPU处理角度描述中断处理I/O请求,7.4 缓冲技术(重点),缓冲区,CPU,外设,引入缓冲目的:在CPU和外设之间设置缓冲区,用于暂存CPU与外设之间交换的数据,从而缓和CPU与外设速度不匹配的矛盾。,7.4.1 引言,1、缓冲区概念 是指在内存或其它存储区中开辟一块存储空间,用于缓冲CPU和外设待处理的数据。,2、缓冲技术功能 (1)匹配CPU或用户应用进程与外设的不同处理速度; (2)减少对CPU的中断次数; (3)提高CPU和I/O设备之间以及各个I/O设备之间的处理并行性。,7.4.1 引言,3、缓冲区的位置 内存、控制器存储区和外设存储区。 (1)硬件缓冲区。如I/O控制器中的数

25、据缓冲寄存器; (2)软件缓冲区。在内存画出一个具有n个单元的专用缓冲区。,7.4.1 引言,4、缓冲区为进程提供服务过程 (1)进程在对某个设备提出I/O请求前,先请求分配一个缓冲区,然在再在设备I/O请求队列中排队; (2)当设备为该进程的I/O请求服务时,设备并不需要进程一定在主存中,因为只向该进程的缓冲区中传送数据;,7.4.1 引言,4、缓冲区为进程提供服务过程 (3)数据传送完成后,中断处理程序唤醒该进程,将缓冲区中的数据读入进程在主存的地址空间中进行处理。,7.4.1 引言,CPU输出数据的速度远远超过打印机的打印速度,影响程序执行速度,为解决这一问题,可以采用( )。,通道技术

26、,A,虚拟存储器,B,并行技术,C,缓冲技术,D,提交,7.4.2 缓冲的种类,缓冲类型(根据大小划分) (1)单缓冲(single buffer):一个缓冲区,CPU和外设轮流使用,一方处理完之后接着等待对方处理。 (2)双缓冲(double buffer):两个缓冲区,CPU和外设都可以连续处理而无需等待对方。要求CPU和外设的速度相近。,7.4.2 缓冲的种类,缓冲类型(根据大小划分) (3)多缓冲(circular buffer):多个缓冲区,CPU和外设的处理速度可以相差较大; (4)缓冲池:把多个缓冲区连接起来统一管理,该缓冲区既可以用于输入也可用以输出。,7.4.2 缓冲的种类,

27、1单缓冲(Single Buffer) (1)数据块处理事件计算 假定从磁盘把一块数据输入到缓冲区的时间为T,将该缓冲区中的数据传送到用户区的时间为M,CPU对这一块数据处理的时间为C。,7.4.2 缓冲的种类,单缓冲工作示意图,7.4.2 缓冲的种类,1单缓冲(Single Buffer) (1)数据块处理事件计算 由于T和C是可以并行工作的。当TC时,系统对每一块数据的处理时间为M+T,反之则为M+C,故可把系统对每一块数据的处理时间表示为Max(C,T)+M,最后一个数据块除外。 n个数据块所需时间: (n-1)*Max(C,T)+M+(T+M+C),7.4.2 缓冲的种类,2双缓冲 (

28、1)工作特点:在设备输入时,先将数据送入第一缓冲区,装满后便转向第二缓冲区。此时操作系统可以从第一缓冲区中移出数据,并送入用户进程,接着由CPU对数据进行处理。,7.4.2 缓冲的种类,7-12 双缓冲工作示意图,9.4.2 缓冲的种类,2双缓冲(Double Buffer) (2)数据块处理时间计算。 在双缓冲时,除了最后一个数据块之外,系统处理一块数据的时间可以粗略地认为是Max(C+M,T)。如果C+MT,则可使CPU不必等待设备输入。 处理n批数据的总时间: (n-1)* Max(C+M,T)+(T+M+C),7.4.2 缓冲的种类,某文件占10个磁盘块,现要把该文件磁盘块逐个读入主存

29、缓冲区,并送用户区进行分析。假设一个缓冲区与一个磁盘块大小相同,把一个磁盘块读入缓冲区的时间为100s,将缓冲区的数据传送到用户区的时间是50s,CPU对一块数据进行分析的时间为50s。在单缓冲区和双缓冲区结构下,读入并分析该文件的时间分别是( )。,1500s、1000s,A,1550s、1100s,B,1550s、1550s,C,2000s、2000s,D,提交,1、缓冲区类型 (1)空闲缓冲区; (2)装满输入数据的缓冲区; (3)装满输出数据的缓冲区。,7.4.3 缓冲池管理(buffer pool),缓冲池是一种双方向缓冲技术,7.3.3 缓冲池管理(buffer pool),2、缓

30、冲区队列类型 (1)空闲缓冲区队列; (2) 输入缓冲队列; (3) 输出缓冲队列。,7.3.3 缓冲池管理(buffer pool),7.3.3 缓冲池管理(buffer pool),3、缓冲池操作类型 (1)设备输入 (2)CPU读入 (3)设备输出 (4)CPU写出,7.3.3 缓冲池管理(buffer pool),4、根据操作类型划分缓冲队列,7.3.3 缓冲池管理(buffer pool),4、根据操作类型划分缓冲队列 收容输入缓冲队列hin:收容设备输入数据 提取输入缓冲队列sin:提取设备输入数据 收容输出缓冲队列hout:收容CPU输出数据 提取输出缓冲队列sout:提取CPU

31、输出数据,7.3.3 缓冲池管理(buffer pool),5Getbuf过程和Putbuf过程 (1)缓冲区入队与出队函数 (1) Addbuf(type,number)函数。 用于将由参数number所指示的缓冲区挂在type队列上 (2) Takebuf(type)函数。 用于从type所指示的队列的队首摘下一个缓冲区。,7.3.3 缓冲池管理(buffer pool),5Getbuf过程和Putbuf过程 (2)入队与出队同步与互斥信号量设置 为使进程之间能互斥地访问缓冲池队列,为每一队列设置一个互斥信号量S(type); 为保证进程之间同步地使用缓冲区,为每个缓冲队列设置了一个资源信

32、号量RS(type)。,7.3.3 缓冲池管理(buffer pool),5Getbuf和Putbuf,6缓冲队列的工作方式类型 收容输入 提取输入 收容输出 提取输出,7.3.3 缓冲池管理(buffer pool),图7-15 缓冲队列的工作方式,7.3.3 缓冲池管理(buffer pool),收容输入(hin) 在输入进程需要输入数据时,便调用Getbuf(emq)过程,从空缓冲队列emq的队首摘下一空缓冲区,把它作为收容输入工作缓冲区hin;然后,把数据输入其中,装满后再调用Putbuf(inq,hin)过程,将该缓冲区挂在输入队列inq上。,7.3.3 缓冲池管理(buffer p

33、ool),(2) 提取输入 (sin) 当计算进程需要输入数据时,调用Getbuf(inq)过程,从输入队列inq的队首取得一个缓冲区,作为提取输入工作缓冲区(sin),计算进程从中提取数据。计算进程用完该数据后,再调用Putbuf(emq,sin)过程,将该缓冲区挂到空缓冲队列emq上。,7.3.3 缓冲池管理(buffer pool),(3) 收容输出(hout) 当计算进程需要输出时,调用Getbuf(emq)过程从空缓冲队列emq的队首取得一个空缓冲区,作为收容输出工作缓冲区hout。当其中装满输出数据后,又调用Putbuf(outq,hout)过程,将该缓冲区挂在outq末尾。,7.

34、3.3 缓冲池管理(buffer pool),(4) 提取输出 (sout) 由输出进程调用Getbuf(outq)过程,从输出队列的队首取得一装满输出数据的缓冲区,作为提取输出工作缓冲区sout。在数据提取完后,再调用Putbuf(emq,sout)过程,将该缓冲区挂在空缓冲队列末尾。,7.3.3 缓冲池管理(buffer pool),7.5 设备分配,设备分配数据结构 设备分配原则 设备分配方式 假脱机技术,7.5.1 设备分配数据结构,设备控制表 系统设备表 控制器控制表 通道控制表,1、设备控制表(DCT, Device Control Table),(1)概念 每个设备一张,描述设备

35、特性和状态。反映设备的特性、设备和控制器的连接情况。,1、设备控制表(DCT, Device Control Table),(2) 组成内容 设备标识符,用来区别不同设备; 设备类型。反映设备的特性; 设备地址或设备号; 设备状态。指设备是出于工作状态还是空闲; 等待队列指针。等待使用该设备的进程组成的队列; I/O控制器指针。指向该设备相连接的I/O控制器。,2、系统设备表(System Device Table),(1)概念 系统内一张,反映系统中设备资源的状态,记录所有设备的状态及其设备控制表的入口。 (2)组成内容 DCT指针。指向有关设备的设备控制表 正在使用设备的进程 设备类型和设

36、备标识符,3、控制器控制表,每个设备控制器一张,描述I/O控制器的配置和状态。如DMA控制器所占用的中断号、DMA数据通道的分配。,4、通道控制表,每个通道一张,描述通道工作状态。,5、各表间的关系,系统设备表,设备控制表(DCT),控制器控制表COCT,通道控制表CHCT,下列关于通道、设备、设备控制器三者之间的关系叙述中正确的是( )。,控制器和通道可以分别控制设备,A,控制器、通道和设备一起工作,B,通道控制设备控制器,设备控制器控制设备,C,设备控制器控制通道,通道控制设备,D,提交,7.5.2 设备分配原则,1、总体原则 (1)合理使用外设(公平和避免死锁); (2) 提高设备利用率; (3) 应用程序与设备无关。,2、与设备分配有关的设备属性 独享设备:打印机等; 共享设备:磁盘、网卡等;,7.5.2设备分配原则,7.5.3、 设备分配方式,(1)静态分配 不会出现死锁; 设备利用率不高。 (2)动态分配 有利于提高设备利用率; 需要考虑死锁问题。,(1)静态分配 特点:在用户作业开始执行之前,由系统一次分配该作业所要求的全部设备、控制器和通道。 优势:不会出现死锁。 缺点:设备利用率低。,7.5.3、 设备分配方式,(2)动态分配 特点:在进程执行过程中根据执行需要进行分配设备。 优势:有利于提高设备的利用率。 缺点:容易造成死锁。,7.5.3、 设

温馨提示

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

评论

0/150

提交评论