操作系统课件 第六章 设备管理_第1页
操作系统课件 第六章 设备管理_第2页
操作系统课件 第六章 设备管理_第3页
操作系统课件 第六章 设备管理_第4页
操作系统课件 第六章 设备管理_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

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

文档简介

姓名:邓红霞学院:计算机科学与技术学院学校:太原理工大学第六章设备管理设备I/O逻辑I/O设备管理概述1主要内容23I/O调度与驱动4虚拟设备5在计算机系统中,用来担负数据输入/输出的部件称作外围设备(Peripheral),它们是计算机与外部世界进行信息沟通的桥梁,是操作系统管理的重要资源。设备管理模块涉及物理设备的硬件构造、使用方式、数据传送格式、I/O组织和控制形式等。本节主要介绍外围设备的分类、I/O控制方式、设备管理的功能与结构。6.1设备管理概述6.1.1外围设备6.1.2I/O控制方式6.1.3设备管理功能和结构6.1设备管理概述计算机的外围设备种类繁多,有低速设备,也有高速设备。低速设备每秒只能传送一到两个字节;高速设备每秒能够传送几兆字节。按照操作系统的不同管理方式,外围设备大体可以分为两种:独享设备和共享设备。(1)独享设备这是一类输入/输出速度比较低,在使用的某个环节需要人工进行干预的设备。在多进程并行运行的系统中,独享设备一般由一个作业独占,直到该作业使用完为止。常见的独享设备有打印机、绘图仪、终端机,以及早期计算机上使用的卡片输入/输出机、穿孔机和光电阅读机等。从工作方式上讲,大部分独享设备的输入/输出操作都是按字符的方式进行传送的,因此这种设备又称作“字符设备”。6.1.1外围设备

(2)共享设备共享设备是一类操作速度较快的设备,它允许多个作业以共享方式使用。从逻辑上讲,一台共享设备可以看成是多台独享设备的联合体。共享设备可以供多个进程共同进行存入和读出。每次操作时,它总是一次传输若干数据,因此共享设备也被称作“块设备”。从利用率上讲,共享设备比独享设备高得多。磁盘是最常见的共享设备。6.1.1外围设备

6.1.1外围设备几种外围设备的传输率:6.1.2I/O控制方式计算机系统中的I/O控制方式是与硬件的配置紧密相关的,大体可分为以下四种方式:程序查询方式、中断控制方式、DMA方式和通道控制方式。程序查询方式中断控制方式DMA方式通道控制方式程序查询方式在早期的计算机系统中,外围设备的输入/输出管理主要采用查询方式。若进程需要使用外围设备进行输入/输出时,系统测试设备的状态。如果设备状态为“忙碌”,则继续以循环方式进行测试;如果设备状态为“不忙碌”,则启动设备进行数据传送。这种方式造成的结果是,CPU绝大部分时间浪费在等待低速设备的操作上。因为CPU除了主动测试外围设备的操作状态以外,无其他方法得知其操作情况,只能在一个循环程序上反复运行消耗时间。6.1.2I/O控制方式实现程序查询方式通常要执行下述三条指令:①测试指令;查询设备状态是否准备就绪。②传送指令:当设备就绪时,执行该指令进行数据传送。③转移指令:当设备尚未就绪时,执行转移指令转到测试指令继续测试设备状态。这种方式中,数据传送要占用CPU中的寄存器。若这些寄存器中存着一些有用的数据,则需要保护起来。另外,传送中往往不止一项数据,而是一批数据,故应事前设置好传送计数值。6.1.2I/O控制方式图中所示为程序查询方式的数据输出流程图。图中,N为传输的数据量。可以看出,这是一种效率很低的方式。因为程序中循环读设备D的状态,无形中浪费了大量CPU。时间。6.1.2I/O控制方式中断控制方式中断机构的引入使系统的管理方式得到改善。在有中断机构的系统中,管理程序将外围设备启动后,便不再在原来的程序上继续运行,而是阻塞当前进程,让处理器转到其他进程去运行。中断,是外围设备向CPU报告操作结果的一种手段。CPU响应外围设备的中断请求后,转入“中断处理程序”运行,进行必要的处理后再返回到被中断的程序。6.1.2I/O控制方式从用户角度看,中断就是将正常的处理器执行序列打断,把控制权转给其他程序。用户不需要为中断添加任何代码,由操作系统负责暂停当前程序,中断处理后,让当前进程恢复运行。引起中断的原因很多,大体可分为以下五类:(1)I/O设备中断(2)硬件故障中断(3)程序出错中断(4)人为设置中断(5)外部事件中断6.1.2I/O控制方式为了适应中断处理,在硬件设计中,每条指令执行结束时,处理器检查是否有中断信号出现。如果没有,处理器就进入下一条指令的取指周期;否则,在当前指令周期中加入一个“中断周期”。期间,处理器需要暂停当前程序,并将控制权交给“中断处理程序”运行,如图所示:6.1.2I/O控制方式从中断周期中的处理步骤如下:①处理器对中断进行测定,给提出中断的设备发一个中断确认(INTA)信号,以便使该设备清除它的中断请求信号。②保存被中断程序的断点—程序状态字(PSW)和程序计数器(PC)的值。这两项信息被压入系统栈中保护起来。③处理器将响应本次中断的处理程序入口地址装入程序计数器中。6.1.2I/O控制方式每一类中断都有一个中断处理程序,处理器必须决定调用其中的哪一个。在大多数情况下,中断信号中都包含关于中断源的信息,据此可以得出中断处理程序的入口地址。如果没有,硬件设计中必须考虑让CPU发信号给相关设备,请求中断源信息。右图为中断周期的处理示意图。6.1.2I/O控制方式DMA方式在DMA(directmemoryaccess,直接存储器访问)控制方式中,数据传送可以绕过处理器,直接利用DMA控制器实现内存和外围设备的数据交换。每交换一次,可传送一个或多个数据块,因此这是一种效率很高的传输方式。如右图所示为DMA控制器的逻辑图。6.1.2I/O控制方式DMA控制器通过挪用总线周期的方式进行数据传输,工作流程如下:①从磁盘读出一个字节数据,送入数据寄存器中暂存。②挪用一个系统总线周期(也就是内存周期),将该字节送到地址寄存器指示的内存单元中。③地址寄存器自动加1,同时让计数器减1。④若计数器的值不为0,表示磁盘读操作尚未结束,则转①,准备接收下一个数据。⑤若计数器的值为0,表示磁盘读操作结束,DMA控制器向处理器发出中断信号。处理器接到DMA发来的中断信号后,转入相应的中断处理程序,读DMA的状态,判断本次传送是否成功,依此做相应处理。6.1.2I/O控制方式处理器上的一个指令周期中包含多个处理器周期。各处理器周期内完成的工作依次为取指、指令解码、取操作数、执行指令、结果保存等。如下图所示为DMA可能发生总线挪用,将处理器挂起的各个瞬间。6.1.2I/O控制方式通道控制方式通道(channel)是继DMA之后,使处理器摆脱I/O操作的又一项发明。外围设备与内存之间的数据交换,可在通道的控制下完成。一个计算机系统可以有若干个通道,每个通道与一台或多台外围设备的控制器相连。由于外围设备有低速独享设备和高速共享设备之分,所以通道也相应地分为低速字符多路通道、数组选择通道和高速数组多路通道等。6.1.2I/O控制方式通道分类:①字符多路通道:用于专门连接低速独享设备。一个通道可同时连接多台,每台设备一次只传送一个字节的数据。该通道可采用分时循环控制方式进行数据传输。②数组选择通道:用于连接高速共享设备。每次可传送一批数据,因此速度比较快。③数组多路通道:是将上述两种技术结合而成的一种快速数据传输设备。一个通道可同时连接多台共享设备,每台共享设备一次能传送一批数据(即一个或多个数据块)。该通道可采用循环控制方式进行数据传输。6.1.2I/O控制方式通道控制中的数据传送过程。当一个运行的进程需要进行数据传送时,向系统提供要传送的数据量和内存地址,系统将启动输入/输出管理程序运行。(1)输入/输出管理程序做的工作①组织一个由CCW指令组成的通道程序,放在内存的约定区域中。②执行“启动通道”指令。6.1.2I/O控制方式(2)通道被启动后做的工作①访问通道程序,逐一执行CCW,按CCW的含义向控制器发出操作命令,控制器操纵外围设备完成实际的输入/输出操作。②对于数据输入操作,产生访问内存的地址及“写入”信号,连同设备读出的数据一起送内存储器。③对于数据输出操作,产生访问内存的地址,从内存读出数据后,将读出的数据送设备控制器。④从设备控制器中取出设备的状态信息,送内存的指定区域。⑤向CPU发中断信号后自行停止操作。6.1.2I/O控制方式(3)控制器接到通道的操作命令后完成的工作①对于数据输入操作,启动设备的机械部件读入数据,送给通道,经通道传送到内存中。

②对于数据输出操作,接收通道上传送来的数据,启动设备的机械部件将数据输出。6.1.2I/O控制方式设备管理功能从系统效率方面来讲,设备管理系统应充分利用各种设备,尽量减少操作的不均衡性。由于外围设备操作的速度慢,不同程度地制约了程序的运行,因此设备管理系统应当在CPU与外围设备之间,外围设备与外围设备之间提高并行度,使它们最大限度地忙碌起来。6.1.3设备管理功能和结构6.1.3设备管理功能和结构为了达到上述要求,设备管理系统应具有以下功能:(1)设备分配与回收(2)输入/输出设备管理(3)设备驱动(4)缓冲区管理(5)出错处理设备独立性要求设备独立性,又称设备无关性,指的是应用程序所涉及的I/O设备与系统中具体使用的物理设备是互相无关的。在此,系统要建立逻辑设备与物理设备的映射机制,将用户对逻辑设备的请求转化为对物理设备的操作。设备独立性带来的好处有以下两点:①设备分配的灵活性提高。②易于实现I/O重定向。6.1.3设备管理功能和结构模块化结构这里,把设备管理模块分为三个层次,由高到低依次为:逻辑I/O层、设备I/O层、调度与控制层。其中,前两层是与设备无关的部分。(1)逻辑I/O层逻辑I/O层的管理软件是面向用户的一部分管理软件,其主要职责是:根据用户的请求启动下层软件实现相关的操作。当下层软件完成所要的操作后,再由它负责向用户反馈操作结果。6.1.3设备管理功能和结构模块化结构(2)设备I/O管理。设备I/O管理属于系统的中层管理,负责把上层的请求操作转换为具体的I/O指令序列。为了提高传输速度,这一层软件中需要配置一些数据缓冲区,以缓和物理设备与处理器速度不匹配的矛盾。(3)调度与控制。这是最低层的软件,直接与具体的物理设备打交道。其主要实现的功能是I/O任务调度、读、写及控制等。该层软件还要对中断进行处理,收集设备状态信息向上层报告。6.1.3设备管理功能和结构此外,在磁盘设备的管理中,文件目录管理、文件系统和物理组织部分将取代逻辑I/O管理部分。对于通信设备的管理来说,逻辑I/O管理部分将被通信协议管理部分取代。通信协议管理部分本身也由许多层次组成,如TCP/IP等。右图为一个具有代表性的设备管理分层模型6.1.3设备管理功能和结构6.2.1设备分配6.2.2安全性6.2逻辑I/O数据结构(1)系统设备表系统设备表(SDT)是一个登记系统设备配置情况的表格,登记系统拥有的各类设备,每一类设备各配置了多少台。该表格供设备分配和回收使用,每类设备在该表中占用一个表项,图右图所示为系统设备表的构造。6.2.1设备分配数据结构(2)设备控制表设备控制表(DCT)是一个用来登记系统设备使用情况的表格。每台设备在该表中占用一个表项。右图所示为设备控制表的构造。6.2.1设备分配设备分配算法:当一个进程向操作系统提出外围设备使用请求时,设备分配模块按照一定的分配策略把系统的可用设备分配给它。当进程使用完毕时,系统及时回收设备。分配过程可分为以下两步:①根据用户提出的逻辑设备名称,从SDT中找到相应的逻辑设备,并获取该类型设备的可用数量N,据此进行安全检测(如之前介绍的银行家算法),如果检验不通过,则将进程阻塞。6.2.1设备分配设备分配算法:②从SDT中取出设备控制表指针,查找DCT找到一台可用的外围设备,将设备分配给进程。其间系统需要在该进程的PCB中建立一个设备映射表(LDT),将用户的逻辑设备名称和对应的物理设备标识对应起来。当进程需要访问自己的逻辑设备时,系统可以很快地查到对应的物理设备。终端机、限定登录的时间段、划定用户所在的用户组等6.2.1设备分配右图所示为进程PCB中的逻辑设备映射表。其中,进程分配了一台打印机,设备标识为0053。下面以进程请求外围设备(如PRN)为例,说明分配的执行过程6.2.1设备分配①若SDT中所示的可用设备不能满足申请者,则:

•-1:编制“分配失败”报告返给申请者。

•-2:将该进程的PCB挂入设备等待队列(即推迟分配)。

•-3:转④。②调用“银行家算法”测算此次分配的安全性,如果不安全,则转①中的-1③查找DCT,找到一个可用的物理设备,满足:DCT(设备类型)=PRN且DCT(设备状态)=“空闲”。按下述步骤分配:

•-1:DCT(设备状态)←“忙碌”。

•-2:将分配的DCT(设备标识)连同逻辑设备名一起登记到申请者的PCB(LUT)中。④结束。6.2.1设备分配控制表和通道表:为了使输入/输出任务能够顺利进行,还要有一个空闲的控制器和通道。系统要参照控制器表(CCT)和通道表(CHT),分配一条数据传输路径。图所示为CCT和CHT的示意图。6.2.1设备分配6.2.2安全性为了防止用户的某些违法操作,逻辑I/O系统需要对用户的访问进行合法性检查,首先,对于用户给出的逻辑设备名Device,系统需要查看LUT,确定用户是否已分得了该设备。如果没有,对于动态分配方式,可以临时调用设备分配程序为用户分配所要的设备。如果系统采用的是静态分配方式,系统将拒绝此次访问。其次,系统需要根据用户提出的Device查看SDT,获得该类设备的访问方式,判断此次访问是否与SDT中的规定一致。若不一致将拒绝访问,否则为正常。6.3.1I/O任务6.3.2缓存管理6.3设备I/OIOB是一种动态数据结构,每个IOB用于描述一项输入/输出任务。当系统收到一个输入输出时就构造一个IOB,并按IOB的信息进行传输控制。当数据传送完毕时,IOB将被删除。IOB的内容如图所示。6.3.1I/O任务外围设备和主机在处理速度上存在着巨大差异,缓解这种差异带来的负面影响是引入缓冲技术的初衷。在不断实施中发现,缓冲技术还会带来更多的好处。缓冲技术的必要性引入缓冲技术以后,系统对设备的读/写可以实行“提前读”和“延迟写”方式。也就是说,在进程发出读数据请求之前,系统早就已经开始了数据输入操作。在进程发出写数据请求后系统将要写的数据搁置一段时间再进行实际的输出操作。这样做可大幅减弱I/O操作对置换策略的干扰。6.3.2缓存管理

缓冲技术的必要性另一方面,当某个进程要把一段信息(一条记录)写入磁盘时,只要将这条记录写入缓冲区中即可。这时系统没有必要立即为此驱动磁盘,而是让进程连续不断地将记录填入,直到填满一个缓冲区时再驱动磁盘写入。这样,系统既减少了输出操作和中断的次数,又提高了传送速度。利用缓冲区实现的这种功能,就是所谓的延迟写。当进程要求读文件的一条记录时,可以先查看缓冲区,若所要的记录已经在里面就立即从中读出而不必读盘,也不必阻塞进程。只有当缓冲区被取空时才阻塞进程,启动磁盘将一批记录读入,这就是所谓的提前读。6.3.2缓存管理缓冲技术的必要性延迟写和提前读都是在缓冲区的支持下实现的功能。如果没有缓冲区,进程的每次输入/输出请求都需要启动磁盘,必然会增加机构的耗损,降低访问的速度,那样,系统的运作也是不堪设想的。

引入缓冲技术后的系统,呈现以下特点:①减少设备驱动次数。②可以缓解I/O操作对缺页置换策略的干扰。③缓解CPU与外围设备速度不匹配的矛盾,使数据处理的速度提高6.3.2缓存管理性能分析以下为无缓冲、一个缓冲、双缓冲、循环缓存6.3.2缓存管理缓冲池技术一种可以被多用户多任务共享的缓冲区,就是著名的UNIX操作系统采用的缓冲池。缓冲池是系统提供的一种共享结构,不归某个进程所有,任何程序都可以申请缓冲池中的一个存储块,用来存放自己的缓冲数据。缓冲池主要由三个队列组成:①空闲缓冲队列(emq):该队列上挂有全部可用的空闲缓冲区。②输入队列(inq):该队列上挂有装满输入数据的缓冲区。③输出队列(outq):该队列上挂有装满输出数据的缓冲区。6.3.2缓存管理缓冲池的例子:图中的缓冲池有16个存储块,编号为0,…,15。系统的当前状态为:14号块是hin块,5号块是Sin块,12号块是hout块,1号块是Sout块。6.3.2缓存管理6.4.1I/O调度6.4.2通道程序6.4.3设备驱动程序6.4.4设备中断处理程序6.4I/O调度与驱动6.4.1I/O调度外围设备的操作速度是很慢的,即使较快的磁盘设备与主机的速度相比也要低四个数量级以上。为了解决输入/输出瓶颈,许多研究都致力于如何提高设备的I/O速度。采用的措施如下:①研制更高性能的外围设备,加快其读/写速度。②设置高速大容量的设备缓冲区。③采用好的I/O调度算法。6.4.1I/O调度磁盘传输性能磁盘是由若干盘片组成的存储设备。这些盘片表面涂有磁性材料,形成一组可存储信息的盘面。每个盘面有一个读/写磁头,负责盘面内的数据读出和写入。在正常工作时,磁盘以一种稳定的速度旋转,磁头在磁头臂的拉动下做径向的移动,可对盘面上不同磁道进行访问。6.4.1I/O调度磁盘传输性能(1)寻道时间这是磁头寻找磁道的时间,也就是磁头臂作径向移动,最终定位到目标磁道的时间,这个时间由两部分组成:最初启动时间和磁头臂需要横跨磁道的时间。因此,寻道时间Ts可按下述计算公式进行估算:Ts=s+m×n

其中,s是磁盘启动时间;m是磁头平均跨越一道的时间;n是跨越的道数6.4.1I/O调度磁盘传输性能(2)旋转延迟时间这一时间是指磁头到达目标磁道以后,需要等待盘片旋转,直到目标扇区到达磁头位置的时间。它主要取决于硬件的性能和制作工艺。目前,硬盘转速通常在5400~10000r/min之间。例如,对于一台旋转速度为10000r/min的硬盘来说,旋转一周的时间大约为6ms,平均延迟时间只有3ms。6.4.1I/O调度磁盘传输性能(3)传输时间传输时间取决于要传输的字节数量、磁表面的存储密度,以及盘片的旋转速度。传输时间Tt的计算公式:

Tt=b/rN其中,b为要传输的字节数;N为一个磁道中能容纳的字节数;r为盘片旋转速度,单位是r/s,旋转延迟时间与磁盘转速有直接关系,则Tr平均=1/(2r)。磁盘访问时间T是上述三部分的总和。

即T=Ts+1/2r+b/rN6.4.1I/O调度调度算法(1)先来先服务(FCFS)这是一种公平调度算法,该算法严格按照请求访问的先后顺序进行调度,先请求的先被访问。这种算法实现起来比较简单,只要按先来后到原则将各个请求的扇区排好队列即可,但执行效率不高。6.4.1I/O调度调度算法(2)最短寻道优先(SSTF)该算法以寻道距离最短为调度原则。不论是新到的请求,还是等候多时的请求,谁的扇区离磁头当前的位置最近就先调度谁。SSTF的实现过程中需要随时记下磁头的当前位置,并比较所有访问请求,挑出一个距离最近的进行访问。最短寻道优先算法是一个效率较高的算法,但是它的致命缺点是:如果系统频繁收到一些短距离的访问请求,会使一些远距离的访问被冷落,处于“饥饿”状态。6.4.1I/O调度调度算法(3)扫描算法(SCAN)

扫描算法也称电梯调度算法,其思想与电梯运行机制颇为相似。它将磁头臂的移动方向作为调度的重要因素来考虑,每次调度总是选择一个与磁头当前运行方向一致的且距离最近的扇区进行访问。当磁头在一个方向边运行边访问,直到完成一个最远的访问后,再做反方向运行。在磁头的反方向运行中,依旧遵循“先近后远”原则进行访问,直至将全部存储块访问完毕为止。6.4.1I/O调度调度算法(4)循环扫描算法(CSCAN)

这是扫描算法的一个修改算法。它每次调度也要选择一个与磁头当前运行方向一致的、距离最近的扇区进行访问。当磁头在一个方向边运行边访问,直到完成一个最远的访问后,做反方向运行时“空挡返回”,也就是不做任何访问,快速到达始点。该运行机制就好比一个电梯,只负责一次次地将楼上的人员向下运,而不往上运。由于该算法不需要记下磁头的运行方向,实现起来稍容易些。通道程序是通道运行的程序,通常置于内存的约定地址中。作为实施数据传送控制的依据,通道程序的编制主要依赖于系统设备表(SDT)、设备控制表(DCT)和I/O任务块(IOB)中的信息。6.4.2通道程序右图所示为一个通道程序的例子,其功能是将内存中的数据写到外围设备上。本例中通道程序构造好后存储于内存约定地址16384开始的空间中。图中所示的内存中有六个数据块中存放了数据。其中,前三块的数据共计512B构成第一条记录,第四块的512B构成了第二条记录,最后两块合计512B构成了第三条记录。通道程序也由六条通道命令字(channelcommandword,CCW)组成,其功能是将图中六个存储块中的数据分成三条记录写到外围设备中6.4.2通道程序右图所示为通道控制下的I/O操作示意图。图中通道地址字用来存放通道程序的首地址的单元。显然,引入通道之后操作系统与通道、进程与通道、通道与设备控制器都可以并行处理。6.4.2通道程序6.4.3设备驱动程序设备驱动程序是直接控制设备运转的软件,不同的设备有不同的设备驱动程序。一个设备驱动程序是与该设备硬件细节有关的代码集合,包含了控制该设备操作的一组代码,如设备初始化子程序、设备配置子程序、输入/输出子程序、中断处理子程序等。设备驱动程序基本上是由设备制造者使用汇编语言编写的,通常被置入一个(或者多个)文件中。当用户购买设备时,驱动程序往往作为设备的附件交给用户。6.4.4设备中断处理程序当设备输入/输出操作完成后,设备控制器将产生中断信号送CPU。如果系统配有通道,则在产生中断信号之前需要将I/O的结果送到内存的约定区域,然后再产生中断。CPU接到中断信号,经过对中断源的分析,转去运行相应的中断处理程序。其处理过程如下:①关中断。②保护进程上下文。③设备中断处理。④恢复被中断的程序。⑤开中断。6.5.1Spooling的基本概念6.5.2Spooling虚拟输入设备6.5.3Spooling虚拟输出设备6.5虚拟设备6.5.1Spooling的基本概念Spooling的指导思想,是利用高速共享设备(通常是磁鼓或者磁盘)将低迷的独享设备模拟为高速的共享设备。这样从逻辑上讲,计算机系统为每一个用户都配备了一台高速独享设备。Spooling由一组负责输入/输出的程序模块组成,这组模块通常被创建为“系统进程”,由此形成一个比较复杂的Spooling机构。该机构需要与其他用户进程共享处理器,对外存的输入/输出井进行管理,还需要存储器的支持。因此,Spooling是直接依赖于操作系统的进程管理、存储管理、文件管理和设备管理的特殊机构。在一个综合性的操作系统中,由于各种管理比较齐全,Spooling机构的功能可能是次要的。但是,在一个简化了的操作系统中,它可能要包含许多操作功能。它的存在会使计算机系统的性能大幅改善。6.5.1Spooling的基本概念下面通过一个例子说明Spooling的基本功能。我们设想的系统内包含一台作业输入机和一台打印机,它们都是独享设备。假设有五个作业提交给系统,某瞬间各作业的推进情况如图所示:所示这样一来,多个进程的数据输入和输出都通过同一个高速共享设备实现。这就是Spooling将共享设备虚拟成多台独享设备的原理。从用户角度讲,系统提供了以下两条访管指令:CALLREADNEXT(BUFFER)//读一条记录CALLWRITENEXT(BUFFER)//打印一条记录用户将它们用到程序中就可以实现读/写。当然,实际上在调用这两项功能时,系统既不真正读,也不真正写,因为系统使用的是虚拟设备。这一点对于用户来说是感觉不到的。6.5.1Spooling的基本概念6.5.2Spooling的虚拟输入设备Spooling的虚拟输入设备技术包括两个操作:

①物理地从外围设备读一个记录并存储到磁盘输入井上。②进程可以从缓冲区访问到输入记录的一个副本。下面是StuartE.给的一个Spooling工作机制,其中的输入过程分为两部分:收容输入和提取输入,如右图所示。6.5.2Spooling的虚拟输入设备输入Spool表存放着各个作业在输入井上的存储位置。它的长度字段保存着作业的记录数量。状态字段的值可以是输入、后备、运行。

①输入:表示该作业当前正在进行输入。②后备:表示该作业当前已输入完毕,正等待运行。③运行:表示该作业当前正在运行。如果给输入Spool表扩充若干字段,用来记录作业的优先数、估计运行

温馨提示

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

评论

0/150

提交评论