计算机操作系统-第8章-输入输出设备管理.ppt_第1页
计算机操作系统-第8章-输入输出设备管理.ppt_第2页
计算机操作系统-第8章-输入输出设备管理.ppt_第3页
计算机操作系统-第8章-输入输出设备管理.ppt_第4页
计算机操作系统-第8章-输入输出设备管理.ppt_第5页
已阅读5页,还剩80页未读 继续免费阅读

下载本文档

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

文档简介

1、第8章 输入/输出设备管理,设备管理是操作系统管理功能中最庞杂和琐碎的部分。 设备管理的主要目标: 提高系统效率 为用户或高层应用提供方便的接口 支持设备共享,2020/8/5,计算机操作系统- 第8章,2/86,输入/输出设备管理: 输入/输出设备控制 缓冲管理 设备独立性 设备分配 虚拟设备 磁盘存储器管理,设备控制方式: 程序控制方式 中断方式 直接存储器访问(DMA)方式 通道方式,虚拟设备:SPOOLing,缓冲管理: 单缓冲区 双缓冲区 循环缓冲 缓冲池,磁盘存储器管理:磁盘存储空间的划分,磁盘存储空间的分配和回收。,回顾:操作系统的功能,2020/8/5,计算机操作系统- 第8章

2、,3/86,I/O设备管理概述,上层用户程序(应用层),设备 控制器,命令寄存器,DMA,中断处理程序,设备驱动程序,设备无关程序,用户进程,2020/8/5,计算机操作系统- 第8章,4/86,I/O软件体系结构,中断处理程序,底层硬件设备,设备驱动程序,用户I/O软件,设备无关软件,I/O请求,I/O响应,提供系统库调用,供人员使用;提供类似Spooling这样的精灵守护进程管理共享设备,命名、保护、阻塞、缓冲,建立设备寄存器、解决错误,处理中断信号,I/O设备管理概述,2020/8/5,计算机操作系统- 第8章,5/86,本章目录,8.1 输入/输出系统 8.2 设备控制器 8.3 输入

3、/输出控制方式 8.4 缓冲管理 8.5 输入/输出软件 8.6 设备分配和回收,2020/8/5,计算机操作系统- 第8章,6/86,本章目录,8.1 输入/输出系统 输入/输出系统(发展) 输入/输出设备(分类) 传输率 数据组织形式 共享属性 设备管理的功能 8.2 设备控制器 8.3 输入/输出控制方式 8.4 缓冲管理 8.5 输入/输出软件 8.6 设备分配和回收,2020/8/5,计算机操作系统- 第8章,7/86,8.1.1 输入/输出系统,大型计算机的输入/输出系统 小型计算机和微型计算机的输入/输出系统,2020/8/5,计算机操作系统- 第8章,8/86,大型机输入/输出

4、系统,大型机的组织结构: 主机Host 通道Channel 设备控制单元DCU,2020/8/5,计算机操作系统- 第8章,9/86,大型机输入/输出系统,通过网络应用进行扩展 在通道和设备控制单元之间增加交换机,将一个系统连接到多个系统,2020/8/5,计算机操作系统- 第8章,10/86,小型机和微机的输入/输出系统,小型机的总线组织结构: ISA: 工业标准结构总线 EISA: 扩展工业标准结构 VESA: 32位标准的计算机局部总线 PCI: 外设组件互连标准,基于总线的组织结构: 形式简单,实现方便,性能可靠,2020/8/5,计算机操作系统- 第8章,11/86,通用计算机组织结

5、构- 具有全局总线和局部总线的PCI总线,2020/8/5,计算机操作系统- 第8章,12/86,8.1.2 输入/输出设备,输入设备 将各种外部设备的信息送入到计算机 输出设备 将计算机内存中已经处理好的信息输出到外部设备中 计算机输入/输出设备的种类和数量繁多,按照应用和速度等的不同有不同的分类,2020/8/5,计算机操作系统- 第8章,13/86,按照输入/输出设备的传输率分类,即按速度分: 低速设备 键盘、打印机 中速设备 磁盘、监视器 高速设备 网卡、调制解调器,2020/8/5,计算机操作系统- 第8章,14/86,按照设备的数据组织形式分类,字符设备 以字符方式进行数据的输入和

6、输出 传输率较低,不可寻址,中断驱动方式传输 交互式终端、打印机 块设备 以数据块的方式进行数据的输入和输出 传输速率较高,可寻址,DMA方式进行传输 磁盘,可定位,2020/8/5,计算机操作系统- 第8章,15/86,按照设备的数据组织形式分类,字符设备 以字符方式进行数据的输入和输出 传输率较低,不可寻址,中断驱动方式传输 交互式终端、打印机 块设备 以数据块的方式进行数据的输入和输出 传输速率较高,可寻址,DMA方式进行传输 磁盘,可定位,2020/8/5,计算机操作系统- 第8章,16/86,按照设备的共享属性分类,独占设备 如:临界资源 共享设备 如:磁盘。 虚拟设备 本身固有属性

7、为独占,但将其虚拟为几个逻辑设备。,2020/8/5,计算机操作系统- 第8章,17/86,按照设备的交互对象分类,人机交互设备 如:视频显示设备、键盘、鼠标、打印机 与计算机或其他电子设备交互的设备 如:磁盘、磁带、传感器、控制器 计算机间的通信设备 如:网卡、调制解调器,2020/8/5,计算机操作系统- 第8章,18/86,按照设备的交互方向分类,输入(可读) 如:键盘、扫描仪 输出(可写) 如:显示设备、打印机 输入/输出(可读写) 如:磁盘、网卡,2020/8/5,计算机操作系统- 第8章,19/86,8.1.3 设备管理的功能,对设备的控制 将用户的输入/输出请求转换为每个设备能够

8、识别的输入/输出指令,并实施设备驱动和中断处理工作 对设备状态进行跟踪和分配 跟踪设备的状态,保留在设备控制表中 根据作业或进程的请求而分配设备,并在作业或进程使用设备结束后回收设备,重新分配 实现虚拟设备 将一台独占的物理设备变为多个逻辑设备,从而能够接收多个进程对设备的请求 缓冲管理 实现低速的输入/输出设备与高速处理器之间的协调工作,虚拟设备:SPOOLing,缓冲管理: 单缓冲区 双缓冲区 循环缓冲 缓冲池,设备控制方式: 程序、中断、DMA、通道,2020/8/5,计算机操作系统- 第8章,20/86,本章目录,8.1 输入/输出系统 8.2 设备控制器 设备控制器及其主要功能 设备

9、控制器的组成 8.3 输入/输出控制方式 8.4 缓冲管理 8.5 输入/输出软件 8.6 设备分配和回收,2020/8/5,计算机操作系统- 第8章,21/86,8.2.1 设备控制器的功能,接收和识别处理器命令 具有命令寄存器和译码器,将处理器的命令接收到命令寄存器中并对命令进行译码 设备控制 根据接收和译码后的处理器命令对设备采取相应的控制 数据交换 实现处理器与设备控制器之间、设备控制器与设备之间的数据交换 识别设备地址 系统中的每一个设备都有一个地址,设备控制器能够识别所控制设备的地址 了解和报告设备的状态 设备控制器中的控制/状态寄存器能够存储接收到的设备状态信息,并将信息上传给处

10、理器,2020/8/5,计算机操作系统- 第8章,22/86,8.2.2 设备控制器的组成,各类寄存器:数据、命令、状态 信号线:数据线(独立寻址、内存寻址)、地址线、控制线 I/O逻辑:在其控制下完成与CPU、设备的通信,2020/8/5,计算机操作系统- 第8章,23/86,本章目录,8.1 输入/输出系统 8.2 设备控制器 8.3 输入/输出控制方式 轮流测试(polling) 中断方式(interrupts) DMA方式 通道方式(channel) 8.4 缓冲管理 8.5 输入/输出软件 8.6 设备分配和回收,2020/8/5,计算机操作系统- 第8章,24/86,轮流测试:Po

11、lling,原理描述 处理器和设备控制器之间的交互借助于设备控制器中的控制/状态寄存器进行 如果控制/状态寄存器中的值为“1”,表示设备控制器“闲”,可以接受处理器的指令 如果控制/状态寄存器中的值为“0”,则表示设备控制器处于“忙”,不能接受处理器的指令 轮流测试是指处理器以循环方式不断测试设备控制器的控制/状态寄存器中的忙闲标志,2020/8/5,计算机操作系统- 第8章,25/86,轮流测试:Polling,工作过程,1.如果处理器运行的现有程序需要从输入/输出设备输入一批数据,处理器检测设备控制器的控制/状态寄存器值是否为1,为1表示此时设备控制器可以接收处理器的指令;否则处理器一直检

12、测该值,直到为“1”为止.,2.设备控制器中的状态标志为“闲”,则处理器向设备控制器发出需要“读”数据指令,给出输入数据在主存中的起始地址;同时,设置设备控制器中的状态标志为“忙”。,3.设备控制器控制输入/输出设备完成数据从输入设备到设备控制器的数据寄存器,如果完成则设备控制器将状态“忙”标志设置为“闲”。,4.在这个输入过程中处理器一直在轮流检测设备控制器的状态寄存器字节是否为“忙”。如果为“忙”,表示没有完成,处理器需要等待;如果为“闲”,则表示已经完成。此时输入数据已经到数据寄存器中。,5.处理器把数据寄存器中的数据读入处理器或主存单元。,方式评价:处理器和输入/输出设备不能并行工作,

13、处理器不能充分发挥效率,计算机系统的效率非常低。,2020/8/5,计算机操作系统- 第8章,26/86,中断控制:Interrupts,原理描述 在处理器和设备控制器之间增加了中断请求线 每当处理器的指令周期结束后,处理器中断现有程序的执行去检测是否有设备控制器发来的中断请求信号。 如果没有,处理器继续执行现有程序。 如果有,则处理器暂停现有程序执行,保存当前的指令指针和正在处理程序的断点信息,并转向中断处理。,2020/8/5,计算机操作系统- 第8章,27/86,中断控制:Interrupt,与Polling的比较 中断控制方式是处理器主动接收设备控制器的中断请求 轮流测试方式是处理器被

14、动测试设备控制器的忙闲标志 中断控制方式使得处理器能够和输入/输出设备的操作并行执行,处理器有更多的时间来运行程序。 结果:处理器运行程序和设备控制器向设备输出数据或从设备输入数据到设备控制器的过程并行运行,提高了系统的运行效率。,方式评价:缺点在于如果计算机系统有较多输入/输出设备,则处理器处理中断的频率增高,从而影响了系统性能,2020/8/5,计算机操作系统- 第8章,28/86,DMA方式:Direct Memory Access,原理描述,在内存和输入/输出设备之间设置一条数据通路,让内存和输入/输出设备之间的数据交换在DMA控制器的控制下进行,不需要处理器的干预。,2020/8/5

15、,计算机操作系统- 第8章,29/86,DMA方式:Direct Memory Access,DMA控制器,1.MAR:内存地址寄存器,用于存放内存和输入/输出设备之间交换的数据在内存中的地址。,2.DR: 数据寄存器,用于匹配内存与输入/输出设备之间的数据传输,起到中间暂存数据的作用,使得两者传输数据相匹配。,3.CR: 命令/状态寄存器,用于接收从处理器发来的输入/输出命令及设备的状态信息。,4.DC: 数据计数器,用于对传输数据进行计数。,5.输入/输出控制逻辑,用于向处理器提出输入/输出中断请求并保存处理器发来的输入/输出命令,控制DMA的传送过程。,2020/8/5,计算机操作系统-

16、 第8章,30/86,DMA方式:Direct Memory Access,工作过程,1.当输入设备有数据要传送到内存时,输入设备的设备控制器向DMA控制器发送DMA请求信号 2.DMA控制器获取内存总线控制并给出内存地址,将DMA应答信号发回给设备控制器 3.设备控制器接收到DMA应答信号后,清除DMA请求信号,传送数据到内存。 4.当整个数据传送完成后,DMA控制器向处理器发中断信号,表示数据已经传到内存。,2020/8/5,计算机操作系统- 第8章,31/86,DMA方式:Direct Memory Access,方式评价 优点:每次DMA传送数据时,不必进入中断系统,即不必通知处理器,

17、处理器可以继续运算,这样提高了处理器的利用率。 缺点:如果需要传送多个数据块到不同的内存区,则系统需要发送多个指令,从而使得DMA方式的实现代价高并容易发生内存地址冲突。,2020/8/5,计算机操作系统- 第8章,32/86,通道方式:Channel,概念 通道是一种与处理器独立的输入/输出处理器 用于代替处理器实现外部设备的输入/输出操作和管理,实现外部设备与处理器的并行操作,2020/8/5,计算机操作系统- 第8章,33/86,通道方式:Channel,类型 字节多路通道(byte multiplexer channel) 主要连接以字节为单位的低速设备 通道利用率低,输入、输出的效率

18、不高,2020/8/5,计算机操作系统- 第8章,34/86,通道方式:Channel,类型 字节多路通道(byte multiplexer channel) 主要连接以字节为单位的低速设备 通道利用率低,输入、输出的效率不高,数组选择通道(block selector channel) 主要用于连接磁盘,磁带等高速输入/输出设备 以一组数据为单位,每次传送一批数据,因此传送速度更高,2020/8/5,计算机操作系统- 第8章,35/86,通道方式:Channel,类型 字节多路通道(byte multiplexer channel) 主要连接以字节为单位的低速设备 通道利用率低,输入、输出的

19、效率不高,数组选择通道(block selector channel) 主要用于连接磁盘,磁带等高速输入/输出设备 以一组数据为单位,每次传送一批数据,因此传送速度更高,数组多路通道 主要用于连接高速设备 可以启动多台磁盘机同时执行移臂定位操作,按序交叉地传输多批数据。 既具有很高的数据传输速率,又能获得令人满意的通道利用率,2020/8/5,计算机操作系统- 第8章,36/86,本章目录,8.1 输入/输出系统 8.2 设备控制器 8.3 输入/输出控制方式 8.4 缓冲管理 缓冲的引入 单缓冲区 双缓冲区 循环缓冲 缓冲池 8.5 输入/输出软件 8.6 设备分配和回收,2020/8/5,

20、计算机操作系统- 第8章,37/86,8.4.1 缓冲的引入,目的 组织管理、分配、释放buffer 引入 缓和CPU和I/O设备间速度不匹配的矛盾。 如:计算打印buffer打印 减少对CPU的中断频率 如:buffer越大,“buffer满”信号发生频率越低。 提高CPU和I/O并行性,2020/8/5,计算机操作系统- 第8章,38/86,缓冲的分类,单方向缓冲: 单缓冲:一个缓冲区,CPU和外设轮流使用,一方处理完之后接着等待对方处理。 双缓冲:两个缓冲区,CPU和外设都可以连续处理而无需等待对方。要求CPU和外设的速度相近。 循环缓冲:多个缓冲区,CPU和外设的处理速度可以相差较大。

21、 双方向缓冲 缓冲池,2020/8/5,计算机操作系统- 第8章,39/86,8.4.2 缓冲管理单缓冲,由于C和T可并行,M和C或M和T不能并行,因此处理一块数据时间: Max(C, T) + M 用户进程何时阻塞?,2020/8/5,计算机操作系统- 第8章,40/86,8.4.3 缓冲管理双缓冲,效率有所提高,且进一步平滑了传输峰值。 系统处理一块数据的时间约为: MAX(C, T, M) 收发可双向同时传送。,2020/8/5,计算机操作系统- 第8章,41/86,8.4.4 缓冲管理循环多缓冲,类型: R:空缓冲;G:满缓冲;C:当前缓冲,2020/8/5,计算机操作系统- 第8章,

22、42/86,循环多缓冲的使用,nextg:指示下一个应取数据的buf nexti:指示下一个空buf. Getbuf: 取nextg对应缓冲区提供使用,将Nextg置为空, Nextg=(Nextg+1)Mod N 将Nexti对应缓冲区提供使用,将Nexti置为满, Nexti=(Nexti+1)Mod N Releasebuf: 若C满,则改为G 若C空,则改为R,2020/8/5,计算机操作系统- 第8章,43/86,循环多缓冲的同步问题,Nexti 追上Nextg: 表示输入速度输出速度,全部buf满, 这时输入进程阻塞 Nextg追上Nexti: 输入速度输出速度,全部buf空, 这

23、时输出进程阻塞,2020/8/5,计算机操作系统- 第8章,44/86,8.4.5 缓冲管理缓冲池,缓冲池:系统提供的公用缓冲 组成: 3个队列: 空缓冲队列emq 输入队列inq 输出队列outq 四个工作缓冲区: hin:收容输入数据 sin:提取输入数据 hout:收容输出数据 sout:提取输出数据,2020/8/5,计算机操作系统- 第8章,45/86,8.4.5 缓冲管理缓冲池,四种工作方式 1.收容输入 2.提取输入 3.收容输出 4.提取输出,2020/8/5,计算机操作系统- 第8章,46/86,8.4.5 缓冲管理缓冲池,1.hin=getbuf(emq); putbuf(

24、inq,hin) 2.sin=getbuf(inq); 计算; putbuf(emq,sin) 3.hout=getbuf(emq); putbuf(outq, hout) 4.sout=getbuf(outq);输出;putbuf(emq,sout),2020/8/5,计算机操作系统- 第8章,47/86,8.4.5 缓冲管理缓冲池,Getbuf(type) Begin wait(RS(type); wait(MS(type); B(number):=takebuf(type); signal(MS(type); end,Putbuf(type) Begin wait(MS(type); a

25、ddbuf(type,number); signal(MS(type); signal(RS(type); end,Getbuf和Putbuf过程,2020/8/5,计算机操作系统- 第8章,48/86,本章目录,8.1 输入/输出系统 8.2 设备控制器 8.3 输入/输出控制方式 8.4 缓冲管理 8.5 输入/输出软件 中断处理程序 设备驱动程序 与设备无关的操作系统软件 用户级输入/输出软件 8.6 设备分配和回收,2020/8/5,计算机操作系统- 第8章,49/86,输入/输出软件分层,实现输入/输出管理的软件部分 设计目标是改善输入/输出设备的效率,实现统一标准的输入/输出设备管

26、理方式。 目前,输入/输出软件采用四层设计,2020/8/5,计算机操作系统- 第8章,50/86,8.5.1 中断处理程序,位于输入/输出软件层的最下层 其他功能层尽可能少与中断处理程序发生联系,进程请求I/O操作,向相应的设备控制器发出I/O命令,CPU,进程被阻塞,CPU继续执行程序,设备控制器执行相应I/O操作,I/O完成,设备控制器向CPU发送一个中断信号唤醒处于阻塞的进程,CPU转向相应的中断处理程序,2020/8/5,计算机操作系统- 第8章,51/86,中断处理过程,2020/8/5,计算机操作系统- 第8章,52/86,8.5.2 设备驱动程序,输入/输出进程与设备控制器之间

27、的通信程序 接收上层软件发来的抽象要求,并将设备控制器发来的信号传送给上层软件 设备驱动程序的功能 设备驱动程序的特点 设备驱动程序的处理过程 设备出错处理,2020/8/5,计算机操作系统- 第8章,53/86,设备驱动程序的功能,每个设备都有自己专用的驱动程序 主要功能如下: 将上层软件传送来的逻辑I/O请求转换为设备具体要求 验证用户作业I/O请求的合法性,了解设备状态,传递参数,设置设备工作方式 发出I/O命令,启动分配的I/O设备工作,执行指定I/O操作 及时响应设备控制器或通道发来的中断请求,根据中断类型调用相应的中断处理程序进行处理 如果计算机系统设置有通道,设备驱动程序还应能够

28、根据用户作业的I/O请求,自动地构成通道程序 设备出错处理,2020/8/5,计算机操作系统- 第8章,54/86,设备驱动程序的特点,设备驱动程序是请求I/O的进程与设备控制器之间的一个通信程序 将进程的I/O请求传送给设备控制器,把设备控制器中所记录的设备状态、操作完成情况传送给进程 设备驱动程序与I/O控制方式紧密相关 常用的设备控制方式是中断和DMA方式。 设备驱动程序针对一类具体的设备工作,与设备硬件紧密相关 通常用汇编语言书写,目前有很多驱动程序的基本部分已经固化在ROM中。,2020/8/5,计算机操作系统- 第8章,55/86,设备驱动程序的处理过程,不同类型设备 不同设备驱动

29、程序。 设备驱动程序接收来自于上层与设备无关的软件的请求,然后执行该请求。 任何设备都只能完成特定的功能,如果设备驱动程序验证接收到的请求不被设备支持,会拒绝执行该请求。,2020/8/5,计算机操作系统- 第8章,56/86,设备出错处理,设备出错处理由设备驱动程序完成。 大多数设备出错情况,只有驱动程序知道该如何处理。 如果发生的错误很小,不影响设备的正常使用,设备驱动程序会忽略错误。 如果发生的错误不能忽略,则设备驱动程序会采取重试的方法或报警的方法。 如何报警、如何处理错误则与操作系统无关,可能需要人工解决。,2020/8/5,计算机操作系统- 第8章,57/86,8.5.3 与设备无

30、关的操作系统软件,1设备无关的软件定义 设备驱动程序不能独立于设备,最上层的用户级I/O软件要求用户程序对设备的使用独立于具体使用的物理设备,实现设备独立性。 在设备驱动程序与用户级I/O软件之间需要再加上与设备无关的软件(设备独立性软件),2020/8/5,计算机操作系统- 第8章,58/86,8.5.3 与设备无关的操作系统软件,2设备的逻辑名与物理名之间的映射 设备的逻辑名是预先设计的统一名称,不依赖于设备 设备的物理名是系统提供的标准名称,不可改变 设备驱动程序需要将设备的逻辑名映射为物理名,并按照设备逻辑名进行设备的分配和回收 逻辑设备表实现了设备逻辑名到物理名的映射,2020/8/

31、5,计算机操作系统- 第8章,59/86,8.5.3 与设备无关的操作系统软件,3提供统一用户设备使用操作,通过限制操作的权限保护设备 设备向用户I/O程序层提供统一的接口。对所有的设备,用户的操作都是相同的 系统对每个设备设置读写权限,最终实现保护设备的目的。,2020/8/5,计算机操作系统- 第8章,60/86,8.5.3 与设备无关的操作系统软件,4实现设备独立性软件的优点 使得设备分配时具有灵活性,提高了设备利用率 应用程序应用设备只与设备的逻辑名有关,与设备的物理名无关。 实现同类设备的分配,提高了设备的利用率。 易于实现输入/输出重定向,提高系统可适用性 用于输入/输出操作的设备

32、可以更换,即重定向,而不必改变应用程序。,2020/8/5,计算机操作系统- 第8章,61/86,8.5.4 用户级输入/输出软件,大多数的输入/输出软件都在操作系统核心中实现, 只有与用户程序链接在一起的库函数以及运行在操作系统核心之外的其它程序才在用户层实现,2020/8/5,计算机操作系统- 第8章,62/86,用户级输入/输出软件,1库文件 对I/O系统进行调用的系统函数属于用户级。 如对设备的read、write操作。 2. spooling程序技术,2020/8/5,计算机操作系统- 第8章,63/86,spooling程序技术,(1)spooling程序技术定义 脱机I/O是通过

33、外围控制机实现信息的I/O,不需要主机的参与,使得主机的处理与I/O过程并行进行,提高了系统的效率,特别是处理器的效率。,2020/8/5,计算机操作系统- 第8章,64/86,spooling程序技术,外围控制机的I/O控制功能用程序来模拟。模拟输入程序将大量需要处理的信息预先输入到磁盘中暂存,实现了“预输入”,当用户作业需要输入信息时则直接从磁盘中输入。 当需要输出信息时,暂时将信息保存到磁盘中,待作业完成后,模拟输出程序再将磁盘中的输出信息输出到输出设备,实现了“缓输出”。 这样的I/O是在主机的控制下,实现的脱机输入/输出,称为spooling(simultaneaus periphe

34、rnal operations on-line),也称为假脱机。,2020/8/5,计算机操作系统- 第8章,65/86,spooling程序技术,(2)spooling系统的组成,2020/8/5,计算机操作系统- 第8章,66/86,spooling系统的组成,输入井和输出井 输入井模拟脱机输入,收容输入/输出设备输入的数据。 输出井模拟脱机输出,收容用户程序的输出数据。 输入缓冲区和输出缓冲区 缓和处理器与磁盘速度不匹配的问题 输入信息经输入缓冲区传送到输入井,实现预输入 输出缓冲区将磁盘上的缓输出信息输出到输出设备,2020/8/5,计算机操作系统- 第8章,67/86,spoolin

35、g系统的组成,预输入进程SPI和缓输出进程SPO SPI模拟脱机输入时的外围控制机,将输入设备的输入信息通过输入缓冲区送到输入井,当用户程序需要输入数据时,直接从输入井读入内存中的用户程序区。 SPO模拟脱机输出时的外围控制机,把输出的信息从用户程序区送到输出井,待输出设备空闲时,再将输出井中的信息经过输出缓冲区送到输出设备上。,2020/8/5,计算机操作系统- 第8章,68/86,spooling系统的组成,井管理程序 在作业执行过程中,进程如果请求启动某台输入/输出设备操作,操作系统得到该请求并调出井管理程序,控制从相应的输入井读取数据或将信息输出到输出井。输入井中的信息被作业取走后,输

36、入井应该归还。同样,如果输出井中的信息被送入到输出缓冲区后,输出井也应该归还。操作系统通过预输入表和缓输出表管理输入作业和输出作业。表中有作业名、作业状态、文件名、设备类、数据起始位置、数据当前位置等信息。当输入井或输出井删除时,作业信息也从表中删除。 井管理程序的主要工作就是管理预输入表和缓输出表及回收输入井和输出井。,2020/8/5,计算机操作系统- 第8章,69/86,spooling程序技术,(3)应用spooling技术实现共享打印机 利用spooling技术,将打印机(独享设备)改造为一台可供多个用户共享的设备,提高利用率。 当申请打印输出时,spooling系统同意为进程打印输

37、出,但并不真正分配打印机,做两件事: 输出进程在输出井中申请一空闲盘块区,将要打印的数据送入其中 输出进程请求一张空白的缓输出表,将用户的打印要求填入表中,如果还有作业打印输出,系统仍可接收请求并将其写入表中。,2020/8/5,计算机操作系统- 第8章,70/86,spooling程序技术,(4)spooling技术的特点 提高了I/O速度 spooling缓和了处理器与低速I/O设备之间速度不匹配的矛盾 将独占设备改造为共享设备 通过输入井和输出井实现了独占设备向共享设备的转变。 实现了虚拟设备功能 实现了将独占设备变换为若干对应的逻辑设备,2020/8/5,计算机操作系统- 第8章,71/86,本章目录,8.1 输入/输出系统 8.2 设备控制器 8.3 输入/输出控制方式 8.4 缓冲管理 8.5 输入/输出软件 8.6 设备分配和回收 对设备的控制和描述信息 设备分配原则 设备分配与回收过程,2020/8/5,计算机操作系统- 第8章,72/86,8.6.1 设备的控制与

温馨提示

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

评论

0/150

提交评论