操作系统原理--第8章输入输出设备管理课件.ppt

上传人:牧羊曲112 文档编号:3766695 上传时间:2023-03-21 格式:PPT 页数:86 大小:1.19MB
返回 下载 相关 举报
操作系统原理--第8章输入输出设备管理课件.ppt_第1页
第1页 / 共86页
操作系统原理--第8章输入输出设备管理课件.ppt_第2页
第2页 / 共86页
操作系统原理--第8章输入输出设备管理课件.ppt_第3页
第3页 / 共86页
操作系统原理--第8章输入输出设备管理课件.ppt_第4页
第4页 / 共86页
操作系统原理--第8章输入输出设备管理课件.ppt_第5页
第5页 / 共86页
点击查看更多>>
资源描述

《操作系统原理--第8章输入输出设备管理课件.ppt》由会员分享,可在线阅读,更多相关《操作系统原理--第8章输入输出设备管理课件.ppt(86页珍藏版)》请在三一办公上搜索。

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

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

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

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

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

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

7、逻辑设备。,2023/3/21,计算机操作系统-第8章,18/86,按照设备的交互对象分类,人机交互设备如:视频显示设备、键盘、鼠标、打印机与计算机或其他电子设备交互的设备如:磁盘、磁带、传感器、控制器计算机间的通信设备如:网卡、调制解调器,2023/3/21,计算机操作系统-第8章,19/86,按照设备的交互方向分类,输入(可读)如:键盘、扫描仪输出(可写)如:显示设备、打印机输入/输出(可读写)如:磁盘、网卡,2023/3/21,计算机操作系统-第8章,20/86,8.1.3 设备管理的功能,对设备的控制 将用户的输入/输出请求转换为每个设备能够识别的输入/输出指令,并实施设备驱动和中断处

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

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

10、控制器的组成,各类寄存器:数据、命令、状态信号线:数据线(独立寻址、内存寻址)、地址线、控制线I/O逻辑:在其控制下完成与CPU、设备的通信,2023/3/21,计算机操作系统-第8章,24/86,本章目录,8.1 输入/输出系统 8.2 设备控制器8.3 输入/输出控制方式轮流测试(polling)中断方式(interrupts)DMA方式通道方式(channel)8.4 缓冲管理8.5 输入/输出软件8.6 设备分配和回收,2023/3/21,计算机操作系统-第8章,25/86,轮流测试:Polling,原理描述 处理器和设备控制器之间的交互借助于设备控制器中的控制/状态寄存器进行如果控制

11、/状态寄存器中的值为“1”,表示设备控制器“闲”,可以接受处理器的指令如果控制/状态寄存器中的值为“0”,则表示设备控制器处于“忙”,不能接受处理器的指令轮流测试是指处理器以循环方式不断测试设备控制器的控制/状态寄存器中的忙闲标志,2023/3/21,计算机操作系统-第8章,26/86,轮流测试:Polling,工作过程,1.如果处理器运行的现有程序需要从输入/输出设备输入一批数据,处理器检测设备控制器的控制/状态寄存器值是否为1,为1表示此时设备控制器可以接收处理器的指令;否则处理器一直检测该值,直到为“1”为止.,2.设备控制器中的状态标志为“闲”,则处理器向设备控制器发出需要“读”数据指

12、令,给出输入数据在主存中的起始地址;同时,设置设备控制器中的状态标志为“忙”。,3.设备控制器控制输入/输出设备完成数据从输入设备到设备控制器的数据寄存器,如果完成则设备控制器将状态“忙”标志设置为“闲”。,4.在这个输入过程中处理器一直在轮流检测设备控制器的状态寄存器字节是否为“忙”。如果为“忙”,表示没有完成,处理器需要等待;如果为“闲”,则表示已经完成。此时输入数据已经到数据寄存器中。,5.处理器把数据寄存器中的数据读入处理器或主存单元。,方式评价:处理器和输入/输出设备不能并行工作,处理器不能充分发挥效率,计算机系统的效率非常低。,2023/3/21,计算机操作系统-第8章,27/86

13、,中断控制:Interrupts,原理描述 在处理器和设备控制器之间增加了中断请求线每当处理器的指令周期结束后,处理器中断现有程序的执行去检测是否有设备控制器发来的中断请求信号。如果没有,处理器继续执行现有程序。如果有,则处理器暂停现有程序执行,保存当前的指令指针和正在处理程序的断点信息,并转向中断处理。,2023/3/21,计算机操作系统-第8章,28/86,中断控制:Interrupt,与Polling的比较中断控制方式是处理器主动接收设备控制器的中断请求轮流测试方式是处理器被动测试设备控制器的忙闲标志中断控制方式使得处理器能够和输入/输出设备的操作并行执行,处理器有更多的时间来运行程序。

14、结果:处理器运行程序和设备控制器向设备输出数据或从设备输入数据到设备控制器的过程并行运行,提高了系统的运行效率。,方式评价:缺点在于如果计算机系统有较多输入/输出设备,则处理器处理中断的频率增高,从而影响了系统性能,2023/3/21,计算机操作系统-第8章,29/86,DMA方式:Direct Memory Access,原理描述,在内存和输入/输出设备之间设置一条数据通路,让内存和输入/输出设备之间的数据交换在DMA控制器的控制下进行,不需要处理器的干预。,2023/3/21,计算机操作系统-第8章,30/86,DMA方式:Direct Memory Access,DMA控制器,1.MAR

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

16、入设备的设备控制器向DMA控制器发送DMA请求信号2.DMA控制器获取内存总线控制并给出内存地址,将DMA应答信号发回给设备控制器3.设备控制器接收到DMA应答信号后,清除DMA请求信号,传送数据到内存。4.当整个数据传送完成后,DMA控制器向处理器发中断信号,表示数据已经传到内存。,2023/3/21,计算机操作系统-第8章,32/86,DMA方式:Direct Memory Access,方式评价优点:每次DMA传送数据时,不必进入中断系统,即不必通知处理器,处理器可以继续运算,这样提高了处理器的利用率。缺点:如果需要传送多个数据块到不同的内存区,则系统需要发送多个指令,从而使得DMA方式

17、的实现代价高并容易发生内存地址冲突。,2023/3/21,计算机操作系统-第8章,33/86,通道方式:Channel,概念 通道是一种与处理器独立的输入/输出处理器用于代替处理器实现外部设备的输入/输出操作和管理,实现外部设备与处理器的并行操作,2023/3/21,计算机操作系统-第8章,34/86,通道方式:Channel,类型字节多路通道(byte multiplexer channel)主要连接以字节为单位的低速设备通道利用率低,输入、输出的效率不高,2023/3/21,计算机操作系统-第8章,35/86,通道方式:Channel,类型字节多路通道(byte multiplexer c

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

19、度更高,数组多路通道主要用于连接高速设备可以启动多台磁盘机同时执行移臂定位操作,按序交叉地传输多批数据。既具有很高的数据传输速率,又能获得令人满意的通道利用率,2023/3/21,计算机操作系统-第8章,37/86,本章目录,8.1 输入/输出系统 8.2 设备控制器8.3 输入/输出控制方式8.4 缓冲管理缓冲的引入单缓冲区双缓冲区循环缓冲缓冲池 8.5 输入/输出软件8.6 设备分配和回收,2023/3/21,计算机操作系统-第8章,38/86,8.4.1 缓冲的引入,目的组织管理、分配、释放buffer引入缓和CPU和I/O设备间速度不匹配的矛盾。如:计算打印buffer打印减少对CPU

20、的中断频率如:buffer越大,“buffer满”信号发生频率越低。提高CPU和I/O并行性,2023/3/21,计算机操作系统-第8章,39/86,缓冲的分类,单方向缓冲:单缓冲:一个缓冲区,CPU和外设轮流使用,一方处理完之后接着等待对方处理。双缓冲:两个缓冲区,CPU和外设都可以连续处理而无需等待对方。要求CPU和外设的速度相近。循环缓冲:多个缓冲区,CPU和外设的处理速度可以相差较大。双方向缓冲缓冲池,2023/3/21,计算机操作系统-第8章,40/86,8.4.2 缓冲管理单缓冲,由于C和T可并行,M和C或M和T不能并行,因此处理一块数据时间:Max(C,T)+M用户进程何时阻塞?

21、,2023/3/21,计算机操作系统-第8章,41/86,8.4.3 缓冲管理双缓冲,效率有所提高,且进一步平滑了传输峰值。系统处理一块数据的时间约为:MAX(C,T,M)收发可双向同时传送。,2023/3/21,计算机操作系统-第8章,42/86,8.4.4 缓冲管理循环多缓冲,类型:R:空缓冲;G:满缓冲;C:当前缓冲,2023/3/21,计算机操作系统-第8章,43/86,循环多缓冲的使用,nextg:指示下一个应取数据的bufnexti:指示下一个空buf.Getbuf:取nextg对应缓冲区提供使用,将Nextg置为空,Nextg=(Nextg+1)Mod N将Nexti对应缓冲区提

22、供使用,将Nexti置为满,Nexti=(Nexti+1)Mod NReleasebuf:若C满,则改为G若C空,则改为R,2023/3/21,计算机操作系统-第8章,44/86,循环多缓冲的同步问题,Nexti 追上Nextg:表示输入速度输出速度,全部buf满,这时输入进程阻塞Nextg追上Nexti:输入速度输出速度,全部buf空,这时输出进程阻塞,2023/3/21,计算机操作系统-第8章,45/86,8.4.5 缓冲管理缓冲池,缓冲池:系统提供的公用缓冲 组成:3个队列:空缓冲队列emq输入队列inq输出队列outq四个工作缓冲区:hin:收容输入数据sin:提取输入数据hout:收

23、容输出数据sout:提取输出数据,2023/3/21,计算机操作系统-第8章,46/86,8.4.5 缓冲管理缓冲池,四种工作方式1.收容输入2.提取输入3.收容输出4.提取输出,2023/3/21,计算机操作系统-第8章,47/86,8.4.5 缓冲管理缓冲池,1.hin=getbuf(emq);putbuf(inq,hin)2.sin=getbuf(inq);计算;putbuf(emq,sin)3.hout=getbuf(emq);putbuf(outq,hout)4.sout=getbuf(outq);输出;putbuf(emq,sout),2023/3/21,计算机操作系统-第8章,4

24、8/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);addbuf(type,number);signal(MS(type);signal(RS(type);end,Getbuf和Putbuf过程,2023/3/21,计算机操作系统-第8章,49/86,本章目录,8.1 输入/输出系统 8.2 设备控制器8.3 输入/输出控制方式8.4 缓冲管理8.5 输入/输出软件

25、中断处理程序设备驱动程序 与设备无关的操作系统软件 用户级输入/输出软件 8.6 设备分配和回收,2023/3/21,计算机操作系统-第8章,50/86,输入/输出软件分层,实现输入/输出管理的软件部分设计目标是改善输入/输出设备的效率,实现统一标准的输入/输出设备管理方式。目前,输入/输出软件采用四层设计,2023/3/21,计算机操作系统-第8章,51/86,8.5.1 中断处理程序,位于输入/输出软件层的最下层其他功能层尽可能少与中断处理程序发生联系,进程请求I/O操作,向相应的设备控制器发出I/O命令,CPU,进程被阻塞,CPU继续执行程序,设备控制器执行相应I/O操作,I/O完成,设

26、备控制器向CPU发送一个中断信号唤醒处于阻塞的进程,CPU转向相应的中断处理程序,2023/3/21,计算机操作系统-第8章,52/86,中断处理过程,2023/3/21,计算机操作系统-第8章,53/86,8.5.2 设备驱动程序,输入/输出进程与设备控制器之间的通信程序 接收上层软件发来的抽象要求,并将设备控制器发来的信号传送给上层软件设备驱动程序的功能设备驱动程序的特点 设备驱动程序的处理过程 设备出错处理,2023/3/21,计算机操作系统-第8章,54/86,设备驱动程序的功能,每个设备都有自己专用的驱动程序 主要功能如下:将上层软件传送来的逻辑I/O请求转换为设备具体要求验证用户作

27、业I/O请求的合法性,了解设备状态,传递参数,设置设备工作方式发出I/O命令,启动分配的I/O设备工作,执行指定I/O操作及时响应设备控制器或通道发来的中断请求,根据中断类型调用相应的中断处理程序进行处理如果计算机系统设置有通道,设备驱动程序还应能够根据用户作业的I/O请求,自动地构成通道程序设备出错处理,2023/3/21,计算机操作系统-第8章,55/86,设备驱动程序的特点,设备驱动程序是请求I/O的进程与设备控制器之间的一个通信程序将进程的I/O请求传送给设备控制器,把设备控制器中所记录的设备状态、操作完成情况传送给进程设备驱动程序与I/O控制方式紧密相关常用的设备控制方式是中断和DM

28、A方式。设备驱动程序针对一类具体的设备工作,与设备硬件紧密相关通常用汇编语言书写,目前有很多驱动程序的基本部分已经固化在ROM中。,2023/3/21,计算机操作系统-第8章,56/86,设备驱动程序的处理过程,不同类型设备 不同设备驱动程序。设备驱动程序接收来自于上层与设备无关的软件的请求,然后执行该请求。任何设备都只能完成特定的功能,如果设备驱动程序验证接收到的请求不被设备支持,会拒绝执行该请求。,2023/3/21,计算机操作系统-第8章,57/86,设备出错处理,设备出错处理由设备驱动程序完成。大多数设备出错情况,只有驱动程序知道该如何处理。如果发生的错误很小,不影响设备的正常使用,设

29、备驱动程序会忽略错误。如果发生的错误不能忽略,则设备驱动程序会采取重试的方法或报警的方法。如何报警、如何处理错误则与操作系统无关,可能需要人工解决。,2023/3/21,计算机操作系统-第8章,58/86,8.5.3 与设备无关的操作系统软件,1设备无关的软件定义设备驱动程序不能独立于设备,最上层的用户级I/O软件要求用户程序对设备的使用独立于具体使用的物理设备,实现设备独立性。在设备驱动程序与用户级I/O软件之间需要再加上与设备无关的软件(设备独立性软件),2023/3/21,计算机操作系统-第8章,59/86,8.5.3 与设备无关的操作系统软件,2设备的逻辑名与物理名之间的映射设备的逻辑

30、名是预先设计的统一名称,不依赖于设备 设备的物理名是系统提供的标准名称,不可改变 设备驱动程序需要将设备的逻辑名映射为物理名,并按照设备逻辑名进行设备的分配和回收逻辑设备表实现了设备逻辑名到物理名的映射,2023/3/21,计算机操作系统-第8章,60/86,8.5.3 与设备无关的操作系统软件,3提供统一用户设备使用操作,通过限制操作的权限保护设备设备向用户I/O程序层提供统一的接口。对所有的设备,用户的操作都是相同的系统对每个设备设置读写权限,最终实现保护设备的目的。,2023/3/21,计算机操作系统-第8章,61/86,8.5.3 与设备无关的操作系统软件,4实现设备独立性软件的优点使

31、得设备分配时具有灵活性,提高了设备利用率应用程序应用设备只与设备的逻辑名有关,与设备的物理名无关。实现同类设备的分配,提高了设备的利用率。易于实现输入/输出重定向,提高系统可适用性用于输入/输出操作的设备可以更换,即重定向,而不必改变应用程序。,2023/3/21,计算机操作系统-第8章,62/86,8.5.4 用户级输入/输出软件,大多数的输入/输出软件都在操作系统核心中实现,只有与用户程序链接在一起的库函数以及运行在操作系统核心之外的其它程序才在用户层实现,2023/3/21,计算机操作系统-第8章,63/86,用户级输入/输出软件,1库文件对I/O系统进行调用的系统函数属于用户级。如对设

32、备的read、write操作。2.spooling程序技术,2023/3/21,计算机操作系统-第8章,64/86,spooling程序技术,(1)spooling程序技术定义脱机I/O是通过外围控制机实现信息的I/O,不需要主机的参与,使得主机的处理与I/O过程并行进行,提高了系统的效率,特别是处理器的效率。,2023/3/21,计算机操作系统-第8章,65/86,spooling程序技术,外围控制机的I/O控制功能用程序来模拟。模拟输入程序将大量需要处理的信息预先输入到磁盘中暂存,实现了“预输入”,当用户作业需要输入信息时则直接从磁盘中输入。当需要输出信息时,暂时将信息保存到磁盘中,待作业

33、完成后,模拟输出程序再将磁盘中的输出信息输出到输出设备,实现了“缓输出”。这样的I/O是在主机的控制下,实现的脱机输入/输出,称为spooling(simultaneaus periphernal operations on-line),也称为假脱机。,2023/3/21,计算机操作系统-第8章,66/86,spooling程序技术,(2)spooling系统的组成,2023/3/21,计算机操作系统-第8章,67/86,spooling系统的组成,输入井和输出井输入井模拟脱机输入,收容输入/输出设备输入的数据。输出井模拟脱机输出,收容用户程序的输出数据。输入缓冲区和输出缓冲区缓和处理器与磁盘

34、速度不匹配的问题输入信息经输入缓冲区传送到输入井,实现预输入输出缓冲区将磁盘上的缓输出信息输出到输出设备,2023/3/21,计算机操作系统-第8章,68/86,spooling系统的组成,预输入进程SPI和缓输出进程SPOSPI模拟脱机输入时的外围控制机,将输入设备的输入信息通过输入缓冲区送到输入井,当用户程序需要输入数据时,直接从输入井读入内存中的用户程序区。SPO模拟脱机输出时的外围控制机,把输出的信息从用户程序区送到输出井,待输出设备空闲时,再将输出井中的信息经过输出缓冲区送到输出设备上。,2023/3/21,计算机操作系统-第8章,69/86,spooling系统的组成,井管理程序在

35、作业执行过程中,进程如果请求启动某台输入/输出设备操作,操作系统得到该请求并调出井管理程序,控制从相应的输入井读取数据或将信息输出到输出井。输入井中的信息被作业取走后,输入井应该归还。同样,如果输出井中的信息被送入到输出缓冲区后,输出井也应该归还。操作系统通过预输入表和缓输出表管理输入作业和输出作业。表中有作业名、作业状态、文件名、设备类、数据起始位置、数据当前位置等信息。当输入井或输出井删除时,作业信息也从表中删除。井管理程序的主要工作就是管理预输入表和缓输出表及回收输入井和输出井。,2023/3/21,计算机操作系统-第8章,70/86,spooling程序技术,(3)应用spooling

36、技术实现共享打印机 利用spooling技术,将打印机(独享设备)改造为一台可供多个用户共享的设备,提高利用率。当申请打印输出时,spooling系统同意为进程打印输出,但并不真正分配打印机,做两件事:输出进程在输出井中申请一空闲盘块区,将要打印的数据送入其中输出进程请求一张空白的缓输出表,将用户的打印要求填入表中,如果还有作业打印输出,系统仍可接收请求并将其写入表中。,2023/3/21,计算机操作系统-第8章,71/86,spooling程序技术,(4)spooling技术的特点提高了I/O速度spooling缓和了处理器与低速I/O设备之间速度不匹配的矛盾将独占设备改造为共享设备通过输入

37、井和输出井实现了独占设备向共享设备的转变。实现了虚拟设备功能实现了将独占设备变换为若干对应的逻辑设备,2023/3/21,计算机操作系统-第8章,72/86,本章目录,8.1 输入/输出系统 8.2 设备控制器8.3 输入/输出控制方式8.4 缓冲管理8.5 输入/输出软件8.6 设备分配和回收 对设备的控制和描述信息 设备分配原则 设备分配与回收过程,2023/3/21,计算机操作系统-第8章,73/86,8.6.1 设备的控制与描述,设备控制表DCT控制器控制表(COCT)通道表(CHCT)系统设备表(SDT)记录系统中全部设备及其驱动程序地址,2023/3/21,计算机操作系统-第8章,

38、74/86,8.6.1 设备的控制与描述,设备控制表DCT控制器控制表(COCT)通道表(CHCT)系统设备表(SDT)记录系统中全部设备及其驱动程序地址,2023/3/21,计算机操作系统-第8章,75/86,设备的控制与描述,设备控制表DCT,2023/3/21,计算机操作系统-第8章,76/86,8.6.1 设备的控制与描述,设备控制表DCT控制器控制表(COCT)通道表(CHCT)系统设备表(SDT)记录系统中全部设备及其驱动程序地址,2023/3/21,计算机操作系统-第8章,77/86,设备的控制与描述,控制器控制表(COCT),2023/3/21,计算机操作系统-第8章,78/8

39、6,8.6.1 设备的控制与描述,设备控制表DCT控制器控制表(COCT)通道表(CHCT)系统设备表(SDT)记录了系统中全部设备及其驱动程序地址,2023/3/21,计算机操作系统-第8章,79/86,设备的控制与描述,通道表(CHCT),2023/3/21,计算机操作系统-第8章,80/86,设备的控制与描述,设备控制表DCT控制器控制表(COCT)通道表(CHCT)系统设备表(SDT)记录系统中全部设备及其驱动程序地址,2023/3/21,计算机操作系统-第8章,81/86,设备的控制与描述,系统设备表(SDT),2023/3/21,计算机操作系统-第8章,82/86,8.6.2 设备

40、分配的原则,设备的固有属性:共享+虚拟:注意调度的合理性独享:排它性分配,控制不好可能死锁,安全性:安全分配(同步):每进程获得一I/O后,即block,直到其I/O完成。即打破了死锁条件缺点:CPU、I/O对该进程是串行,进程进展缓慢不安全分配(异步):需进行安全性检查,进程执行效率高,分配算法:FIFO优先权,2023/3/21,计算机操作系统-第8章,83/86,8.6.3 设备的分配与回收,设备分配过程,2023/3/21,计算机操作系统-第8章,84/86,设备的分配与回收,设备的回收是设备分配过程的一个逆过程当进程使用设备结束后,进程释放设备请求操作系统修改与设备有关信息:系统设备控制表信息设备控制表信息设备控制器控制表信息通道控制表信息主要是修改状态信息,以便下一次再分配,2023/3/21,计算机操作系统-第8章,85/86,作业,练习8.4 8.6作业通过发送电子邮件附件形式提交到助教老师邮箱:赵 静 作业文件名命名要求:OS_学号_姓名_n.doc(n为当章节序号)如一个合法文件名:OS_95002_张三_8.doc,2023/3/21,计算机操作系统-第8章,86/86,Any Question?,Thank you!,

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号