《设备管理3课程学习.pptx》由会员分享,可在线阅读,更多相关《设备管理3课程学习.pptx(115页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、会计学1设备设备(shbi)管理管理3第一页,共115页。4.1 I/O硬件硬件(yn jin)n n总线总线n n设备控制器设备控制器n n直接存储器访问直接存储器访问(fngwn)控制器控制器n n通道通道n n设备设备n n控制方式控制方式第2页/共115页第二页,共115页。总线总线(zn xin)n n 第一章所讲的总线的基本内容。n n PCI总线及其配置(pizh)空间第3页/共115页第三页,共115页。设备(shbi)控制器lI/O设备通常包含一个机械部件和一个电子部件。电子部件被称作I/O部件或设备控制器。l操作系统一般只与控制器打交道,而非设备本身(bnshn)。l早期C
2、PU是直接控制外部设备的,在引入I/O部件之后,I/O指令功能加强,才将CPU逐渐从与外设的交互细节中解放出来。第4页/共115页第四页,共115页。设备设备(shbi)控制器控制器数据寄存器数据寄存器控制控制/状态状态寄存器寄存器 I/O逻辑逻辑控制器控制器与设备与设备接口接口1控制器控制器与设备与设备接口接口N设备(shbi)控制器的组成 设备(shbi)控制器的组成 设备控制器的组成设备控制器的组成 l控制器的基本结构控制器的基本结构第5页/共115页第五页,共115页。总总线线(zn(zn xin)xin)控控 制制器器处理机处理机 主存主存 显卡显卡 外外 设设 光光 盘盘 磁磁 盘
3、盘SCSISCSI控制器控制器外设控制器外设控制器控控制制器器控控制制器器PCIPCI外外设设总总线线(zn(zn xin)xin)设备(shbi)控制器各部件的连接模型各部件的连接模型主版总线主版总线SCSI是一种智能的通用接口标准 第6页/共115页第六页,共115页。磁盘磁盘 控制器控制器主存主存比特流字节块转换、校验字符字符(z(z f)f)显示控显示控制器制器主存经主存经CPUCPU显示(xinsh)信号字节(z ji)流转换设备控制器l 控制器的任务:在外部设备与内存(或CPU)之间完成比特流(或外部信号)和字节块(流)之间的转换。第7页/共115页第七页,共115页。直接直接(z
4、hji)存储器访问控制器存储器访问控制器n n DMA控制器内部结构及外部(wib)接口关系 CPUDRMARDCCRI/O控制逻辑第9页/共115页第九页,共115页。l定义:通道是独立于定义:通道是独立于CPUCPU的专门负责的专门负责(fz)(fz)数据输入数据输入/输出传输工输出传输工作的处理机,对外部设备实现统一管理,代替作的处理机,对外部设备实现统一管理,代替CPUCPU对输入对输入/输出操输出操作进行控制,从而使输入,输出操作可与作进行控制,从而使输入,输出操作可与CPUCPU并行操作。并行操作。l 通道又称输入输出处理机,术语通道又称输入输出处理机,术语“通道通道”专指专门用来
5、负专指专门用来负责责(fz)(fz)输入输出工作的处理机(简称输入输出工作的处理机(简称/处理机)。比起中处理机)。比起中央处理机来,通道是一个比功能较弱、速度较慢、央处理机来,通道是一个比功能较弱、速度较慢、价格较为便宜的处理机。但价格较为便宜的处理机。但“通道通道”一词在微型机中常指与一词在微型机中常指与或与或与/处理机相连设备的单纯的数据传送通路,它并不具处理机相连设备的单纯的数据传送通路,它并不具有处理机的功能。有处理机的功能。通道(tngdo)第11页/共115页第十一页,共115页。通道通道通道通道(tngdo)(tngdo)(tngdo)(tngdo)1.引入通道的目的 为了(w
6、i le)使CPU从I/O事务中解脱出来,同时为了(wi le)提高CPU与设备,设备与设备之间的并行工作能力第12页/共115页第十二页,共115页。2.通道类型字节多路通道:通常按字节交叉的方式工作,适用于低速设备。数组选择通道:按成组方式进行(jnxng)数据传输,适用于高速设备。数组多路通道:综合前二个优点(数据传送率和通道利用率都较高)。通道通道(tngdo)(tngdo)第13页/共115页第十三页,共115页。1)字节多路通道 字节多路通道以字节为单位传输信息,它可以分时地执行多个(du)通道程序。当一个通道程序控制某台设备传送一个字节后,通道硬件就控制转去执行另一个通道程序,控
7、制另一台设备传送信息。主要连接以字节为单位的低速I/O设备。如打印机,终端。以字节为单位交叉传输,当一台传送一个字节后,立即转去为另一台传送字节。通道通道(tngdo)(tngdo)第14页/共115页第十四页,共115页。第15页/共115页第十五页,共115页。2)数组选择通道数组选择通道 数组选择通道是以成组方式数组选择通道是以成组方式工作的,即每次传送一批数工作的,即每次传送一批数据,故传送速度很高。选择据,故传送速度很高。选择通道在一段时间内只能执行通道在一段时间内只能执行一个通道程序,只允许一个通道程序,只允许(ynx)一台设备进行数据传一台设备进行数据传输输 当这台设备数据传输完
8、成后,当这台设备数据传输完成后,再选择与通道连接的另一台再选择与通道连接的另一台设备,执行它的相应的通道设备,执行它的相应的通道程序程序 主要连接磁盘,磁带等高速主要连接磁盘,磁带等高速I/O设备设备 通道(tngdo)第16页/共115页第十六页,共115页。通道(tngdo)数组选择数组选择(xunz)通道通道第17页/共115页第十七页,共115页。3)3)3)3)数组多路通道数组多路通道数组多路通道数组多路通道 数组多路通道结合了选择通道传送速度数组多路通道结合了选择通道传送速度数组多路通道结合了选择通道传送速度数组多路通道结合了选择通道传送速度高和字节多路通道能进行分时并行操作的优高
9、和字节多路通道能进行分时并行操作的优高和字节多路通道能进行分时并行操作的优高和字节多路通道能进行分时并行操作的优点。它先为一台设备执行一条通道指令点。它先为一台设备执行一条通道指令点。它先为一台设备执行一条通道指令点。它先为一台设备执行一条通道指令(zhlng)(zhlng)(zhlng)(zhlng),然后自动转接,为另一台设备执,然后自动转接,为另一台设备执,然后自动转接,为另一台设备执,然后自动转接,为另一台设备执行一条通道指令行一条通道指令行一条通道指令行一条通道指令(zhlng)(zhlng)(zhlng)(zhlng)主要连接高速设备主要连接高速设备主要连接高速设备主要连接高速设备
10、 这样,对于连接多台磁盘机的数组多路通这样,对于连接多台磁盘机的数组多路通这样,对于连接多台磁盘机的数组多路通这样,对于连接多台磁盘机的数组多路通道,它可以启动它们同时执行移臂定位操作,道,它可以启动它们同时执行移臂定位操作,道,它可以启动它们同时执行移臂定位操作,道,它可以启动它们同时执行移臂定位操作,然后,按序交叉地传输一批批数据。数据多然后,按序交叉地传输一批批数据。数据多然后,按序交叉地传输一批批数据。数据多然后,按序交叉地传输一批批数据。数据多路通道实际上是对通道程序采用多道程序设路通道实际上是对通道程序采用多道程序设路通道实际上是对通道程序采用多道程序设路通道实际上是对通道程序采用
11、多道程序设计的硬件实现计的硬件实现计的硬件实现计的硬件实现 通道通道(tngdo)(tngdo)第18页/共115页第十八页,共115页。3.3.3.3.硬件硬件硬件硬件(yn jin)(yn jin)(yn jin)(yn jin)连接结构连接结构连接结构连接结构 系 统 总 线I/O 总 线I/O控制器I/O控制器I/O控制器I/O控制器处理器通道处理器内存第19页/共115页第十九页,共115页。通道相当于一个通道相当于一个(y)(y)功能简功能简单的处理机,包含通道指令(空操单的处理机,包含通道指令(空操作,读操作,写操作,控制,转移作,读操作,写操作,控制,转移操作),并可执行用这些
12、指令编写操作),并可执行用这些指令编写的通道程序的通道程序 4.通道工作(gngzu)原理通道通道(tngdo)(tngdo)第20页/共115页第二十页,共115页。通道地址字通道地址字 CAW CAW:记录通道程序在内存记录通道程序在内存中的地址中的地址通道命令字通道命令字 CCW CCW:保存正在执行的通道保存正在执行的通道指令指令通道状态字通道状态字 CSW CSW:存放通道执行后的返回存放通道执行后的返回(fnhu)(fnhu)结果结果通道数据字通道数据字 CDW CDW:存放传输:存放传输数据数据 通道和通道和CPUCPU共用内存,通过共用内存,通过周期窃取方式取得周期窃取方式取得
13、1)1)通道通道(tngdo)(tngdo)运算控制部件运算控制部件第21页/共115页第二十一页,共115页。用于用于I/OI/O操作的命令主要有两种:操作的命令主要有两种:I/O I/O指令:启动通道程序指令:启动通道程序 通道命令:对通道命令:对I/OI/O操作进行操作进行(jnxng)(jnxng)控制控制 读、反读、写、测试设备状态的数据传读、反读、写、测试设备状态的数据传输命令、用于设备控制的命令(磁带反绕、输命令、用于设备控制的命令(磁带反绕、换页)、实现通道程序内部控制的转移命换页)、实现通道程序内部控制的转移命令令 2)通道(tngdo)命令第22页/共115页第二十二页,共
14、115页。命令(mng lng)格式一般包括:操作码、数据传输内存地址、特征位、计数器 3)通道命令(mng lng)格式第23页/共115页第二十三页,共115页。CPU:执行用户程序,当遇到I/O请求时,可根据该请求生成通道程序放入内存(也可事先(shxin)编好放入内存),并将该通道程序的首地址放入CAW中;之后执行“启动I/O”指令,启动通道工作。4)工作(gngzu)原理第24页/共115页第二十四页,共115页。n n通道:接收到通道:接收到“启动启动I/O”I/O”指令后,从指令后,从CAWCAW中取出通道中取出通道程序的首地址,并根据首地程序的首地址,并根据首地址取出第一条指令
15、放入址取出第一条指令放入CCWCCW中,同时中,同时(tngsh)(tngsh)向向CPUCPU发发回答信号,使回答信号,使CPUCPU可继续执可继续执行其他程序,而通道则开始行其他程序,而通道则开始执行通道程序,完成传输工执行通道程序,完成传输工作。作。n n 当通道传输完成当通道传输完成最后一条指令时,向最后一条指令时,向CPUCPU发发I/OI/O中断,并且通道停止工中断,并且通道停止工作。作。CPUCPU接收中断信号,从接收中断信号,从CSWCSW中取得有关信息,决定中取得有关信息,决定下一步做什么下一步做什么4)4)工作工作(gngzu)(gngzu)原理原理第25页/共115页第二
16、十五页,共115页。5.通道与CPU的关系主从关系可并行工作有通信方式作用不同(b tn)(通道/;计算)通道通道(tngdo)(tngdo)第26页/共115页第二十六页,共115页。通道通道(tngdo)n n通道传送与中断传送的区别:n n中断控制传送由中断控制器发出中断信息,中止CPU现行程序,转去执行中断服务程序。通道方式则是通过执行通道程序来实现。n n中断服务程序与CPU的现行程序是串行工作的,而通道程序的执行与CPU的现行程序是并行工作的。n n程序中断控制传送以CPU为中心,而通道则和DMA一样(yyng)以内存为中心。第27页/共115页第二十七页,共115页。通道(tng
17、do)l通道传送与DMA传送的区别:lDMA主要靠专用接口硬件实现数据传送;通道则靠执行通道程序实现数据传送。中断服务程序与CPU的现行程序是串行工作的,而通道程序的执行与CPU的现行程序是并行工作的。lDMA一般用来控制高速外设成组传送,通道既可控制高速外设成组传送,也可控制低速外设进行(jnxng)字或字节交叉传送。第28页/共115页第二十八页,共115页。设备(shbi)l按数据组织分类:按数据组织分类:l块设备块设备l字符设备字符设备l从资源分配角度分类:从资源分配角度分类:l独占设备独占设备l共享设备共享设备l虚拟设备虚拟设备l按传输速率分类:按传输速率分类:l低速设备低速设备l中
18、速设备中速设备l高速设备高速设备 l按其他方法分类:如按输入按其他方法分类:如按输入/输出输出(shch)对象进行,或对象进行,或者按是否可交互来进行者按是否可交互来进行。第29页/共115页第二十九页,共115页。CPU直接(zhji)控制外部设备引入I/O部件,CPU直接(zhji)控制I/O部件引入中断驱动(q dn)方式引入DMAI/O通道或I/O处理机输入输出控制方式的发展过程控制方式第30页/共115页第三十页,共115页。控制(kngzh)方式l程序直接控制方式:l需要CPU直接控制I/O操作的全过程,包括发送读写命令、传输数据、测试(csh)设备状态。l处理机指令集应包括控制类
19、、测试(csh)类、读写类I/O指令。l I/O部件接收到相应的指令后,将I/O状态写在寄存器的相应位置上。随着操作的执行更改状态位,由CPU执行相应指令读取I/O完成状态。I/O数据通过CPU寄存器转发。如下图:第31页/共115页第三十一页,共115页。l 针对程序直接方式的不足,提出了中断方式:lCPU向I/O部件发出指令后,转去做其他有用的工作。当I/O部件准备好数据后,利用中断通知CPU,再由CPU完成数据传输。l 优点:lCPU不必反复测试寄存器状态,节约了时间。l 缺点:l中断控制方式仍然消耗(xioho)大量的CPU时间,因为每个字的数据传输都必须经过CPU寄存器转发。控制(k
20、ngzh)方式第32页/共115页第三十二页,共115页。控制(kngzh)方式l程序直接控制程序直接控制(kngzh)方式与中断方式的缺方式与中断方式的缺陷:陷:l I/O的传输速率受的传输速率受CPU测试或中断响应的速测试或中断响应的速度限制度限制l CPU为管理为管理I/O耗费大量时间耗费大量时间l更有效的方式更有效的方式DMA(直接内存存取)(直接内存存取):l负责完成整个负责完成整个I/O操作,无需再经操作,无需再经CPU寄存器寄存器转发,并在全部传输结束后向转发,并在全部传输结束后向CPU发中断信发中断信号。号。lCPU向向DMA部件发送部件发送I/O指令后,即可进行指令后,即可进
21、行其他工作。给其他工作。给DMA的指令中应包括:操作类的指令中应包括:操作类别、别、I/O设备的地址、读写数据在内存中的首设备的地址、读写数据在内存中的首地址、字数。地址、字数。第33页/共115页第三十三页,共115页。程序程序(chngx)I/O中断中断(zhngdun)I/O DMA第34页/共115页第三十四页,共115页。n n 通道控制方式通道控制方式(fngsh)(fngsh)n n 通道:执行通道程序,向控制器发通道:执行通道程序,向控制器发出命令,并具有向出命令,并具有向CPUCPU发中断信号的功能。发中断信号的功能。一旦一旦CPUCPU发出指令,启动通道,则通道独发出指令,
22、启动通道,则通道独立于立于CPUCPU工作。一个通道可连接多个控制工作。一个通道可连接多个控制器,一个控制器可连接多个设备,形成树器,一个控制器可连接多个设备,形成树形交叉连接形交叉连接n n 主要目的是启动外设时:主要目的是启动外设时:n n a a 提高了控制器效率提高了控制器效率n n b b 提高可靠性提高可靠性n n c c 提高并行度提高并行度控制(kngzh)方式第35页/共115页第三十五页,共115页。第36页/共115页第三十六页,共115页。交叉交叉交叉交叉(jioch)(jioch)连接连接连接连接第37页/共115页第三十七页,共115页。4.2/O软件软件(run
23、jin)n n设备的使用设备的使用(shyng)与管理与管理n n软件层次结构软件层次结构n n缓冲管理缓冲管理n n设备驱动程序设备驱动程序n n中断处理程序中断处理程序第38页/共115页第三十八页,共115页。设备的使用设备的使用(shyng)与管理与管理n n设备设备(shbi)管理的目标管理的目标n n提高设备提高设备(shbi)的利率的利率n n为用户提供方便、统一的界面为用户提供方便、统一的界面n n设备设备(shbi)管理的任务管理的任务n n动态地掌握并记录设备动态地掌握并记录设备(shbi)的状态的状态n n设备设备(shbi)分配和释放分配和释放n n缓冲区管理缓冲区管理
24、n n实现物理实现物理I/O设备设备(shbi)的操作的操作第39页/共115页第三十九页,共115页。设备的使用设备的使用设备的使用设备的使用(sh(sh yng)yng)与管理与管理与管理与管理n n设备相关系统调用:设备相关系统调用:n n申请申请(shnqng)设备:该系设备:该系统调用中有参数说明了要申统调用中有参数说明了要申请请(shnqng)的设备名称,的设备名称,操作系统处理该系统调用时,操作系统处理该系统调用时,会按照设备特性(是独占还会按照设备特性(是独占还是分时共享式使用)及设备是分时共享式使用)及设备的占用情况来分配设备,返的占用情况来分配设备,返回申请回申请(shnq
25、ng)是否成功是否成功标志。标志。n n将数据写入设备。将数据写入设备。n n从设备读取数据。从设备读取数据。n n释放设备。这是申请释放设备。这是申请(shnqng)设备的逆操作。设备的逆操作。第40页/共115页第四十页,共115页。设备设备设备设备(shbi)(shbi)的使用与管理的使用与管理的使用与管理的使用与管理n n设设备备管管理理(gunl)(gunl)中中的的数数据据结结构构n n在在多多通通路路的的/系系统统中中,为为了了满满足足一一个个/请请求求,不不仅仅仅仅是是分分配配一一个个/设设备备的的问问题题,还还应应分分配配相相应应的的控控制制器器和和通通道道,以以确确保保与与
26、/设设备备之之间间能能进进行行通通信信,在在存存储储器器与与/设设备备之之间间能能进进行行数数据据的的直直接接存存取。取。n n设设备备管管理理(gunl)(gunl)程程序序对对/设设备备进进行行分分配配和和控控制制是是借借助助于于一一些些表表格格;表表格格中中记记录录了了对对/设设备备控控制制所所需需之之信信息息。它它们们是是设设备备管管理理(gunl)(gunl)程程序序实实现现管理管理(gunl)(gunl)功能的数据结构。功能的数据结构。第41页/共115页第四十一页,共115页。数据结构数据结构数据结构数据结构(sh j ji u)(sh j ji u)(sh j ji u)(sh
27、 j ji u)(续)(续)(续)(续)n n控控制制所所需需之之信信息息。它它们们是是设设 备备 管管 理理 程程 序序 实实 现现(shxin)(shxin)管管理理功功能能的的数数据据结构。如下表:结构。如下表:设备控制表()设备控制表()每个设备一个每个设备一个控制器表()控制器表()每个控制器一个每个控制器一个通道表(通道表(H H)每个通道一个每个通道一个系统设备表()系统设备表()整个系统一个整个系统一个第42页/共115页第四十二页,共115页。整个系统一张表,记录系统整个系统一张表,记录系统中所有中所有I/OI/O设备设备(shbi)(shbi)的信息,的信息,表目包括:表目
28、包括:设备设备(shbi)(shbi)类型、设备类型、设备(shbi)(shbi)标识符、进程标识符、标识符、进程标识符、DCTDCT表指针等。表指针等。1)1)系统系统(xtng)(xtng)设备表设备表SDTSDT数据结构数据结构(sh j ji u)(sh j ji u)(续)(续)第43页/共115页第四十三页,共115页。主要内容:设备类型、设备标识符、设备状态、与此设备相连的COCT、重复执行的次数或时间、等待队列(duli)的队首和队尾指针、I/O程序地址 3)控制器控制表COCT 4)通道控制表CHCT COCT和CHCT与DCT类似2)2)设备设备(shbi)(shbi)控制
29、表控制表DCTDCT数据结构数据结构(sh j ji u)(sh j ji u)(续)(续)第44页/共115页第四十四页,共115页。设备控制设备控制设备控制设备控制(kngzh)(kngzh)(kngzh)(kngzh)块块块块 通道控制通道控制通道控制通道控制(kngzh)(kngzh)(kngzh)(kngzh)块块块块 控制控制控制控制(kngzh)(kngzh)(kngzh)(kngzh)器控制器控制器控制器控制(kngzh)(kngzh)(kngzh)(kngzh)块块块块 (DCB)(DCB)(DCB)(DCB)(CHCB)CHCB)CHCB)CHCB)(COCBCOCBCOC
30、BCOCB)设备标示符设备标示符通道标示符通道标示符控制器标示符控制器标示符设备状态设备状态通道状态通道状态控制器状态控制器状态与设备相连的与设备相连的控制器表控制器表与通道相连的与通道相连的控制器表控制器表与控制器相连的与控制器相连的通道表通道表等待此设备的等待此设备的进程表进程表 等待此通道的等待此通道的进程表进程表 等待控制器的进等待控制器的进程表程表 三种三种(sn(sn zhn)zhn)控制块控制块第45页/共115页第四十五页,共115页。设备设备(shbi)的使用与管理的使用与管理n nI/O设备的使用设备的使用(shyng)方式:方式:n n独占式共享使用独占式共享使用(shy
31、ng)设备设备n n分时式共享使用分时式共享使用(shyng)设备设备n n以以SPOOLing方式使用方式使用(shyng)外设外设第46页/共115页第四十六页,共115页。设备设备(shbi)的使用与管理的使用与管理n n独占式共享使用独占式共享使用(shyng)设设备:备:n n是指在申请设备时,如果设是指在申请设备时,如果设备空闲,就将其独占,不再备空闲,就将其独占,不再允许其他进程申请使用允许其他进程申请使用(shyng),一直等到该设备,一直等到该设备被释放,才允许被其他进程被释放,才允许被其他进程申请使用申请使用(shyng)。n n独占式使用独占式使用(shyng)设备时,设
32、备时,设备利用率很低。设备利用率很低。n n如果一个逻辑上完整的数据如果一个逻辑上完整的数据可以用设备的一次可以用设备的一次I/O操作操作完成,那么我们就不必要独完成,那么我们就不必要独占该设备。反过来说,如果占该设备。反过来说,如果一次一次I/O操作的数据逻辑上操作的数据逻辑上完整,我们就不必要对该设完整,我们就不必要对该设备进行独占方式的申请使用备进行独占方式的申请使用(shyng)。在申请这种设备。在申请这种设备时,不必检查是否已被占用,时,不必检查是否已被占用,只要简单累加设备使用只要简单累加设备使用(shyng)者计数即可。者计数即可。第47页/共115页第四十七页,共115页。设备
33、设备(shbi)的使用与管理的使用与管理n n分时式共享使用设备分时式共享使用设备(shbi):n n以一次以一次I/O为单位分时使用为单位分时使用设备设备(shbi),不同进程的,不同进程的I/O操作请求以排队方式分操作请求以排队方式分时地占用设备时地占用设备(shbi)进行进行I/O。n n从用户程序系统调用界面来从用户程序系统调用界面来看,看,I/O操作是并发的。操作是并发的。第48页/共115页第四十八页,共115页。设备的使用设备的使用(shyng)与管理与管理n n以以SPOOLing方式使用外设:方式使用外设:n nSPOOLing 技术是在批处理技术是在批处理操作系统时代引入的
34、,即所操作系统时代引入的,即所谓假脱机输入输出技术。原谓假脱机输入输出技术。原来这种技术输入、输出是针来这种技术输入、输出是针对磁盘上的输入、输出,现对磁盘上的输入、输出,现在是针对磁盘上的文件。在是针对磁盘上的文件。n n 例如例如:同一进程同一进程(jnchng)所有输出数据在进程所有输出数据在进程(jnchng)运行时被写到同运行时被写到同一文件当中,文件排到打印一文件当中,文件排到打印输出队列,打印进程输出队列,打印进程(jnchng)申请占用打印机申请占用打印机后,成批读出文件中数据,后,成批读出文件中数据,并送打印机打印出去。并送打印机打印出去。第49页/共115页第四十九页,共1
35、15页。l什么是什么是Spooling?l 在联机情况下实现的同时外围操作称为在联机情况下实现的同时外围操作称为(chn wi)Spooling,或称为,或称为(chn wi)假假脱机操作。脱机操作。lSpooling系统的组成:系统的组成:l 1、输入井和输出井,磁盘上开辟的两、输入井和输出井,磁盘上开辟的两个大存储空间;个大存储空间;l 2、输入缓冲区和输出缓冲区;、输入缓冲区和输出缓冲区;l 3、输入进程、输入进程SPi和输出进程和输出进程SPo;l 4、请求打印队列。、请求打印队列。l 设备(shbi)的使用与管理第50页/共115页第五十页,共115页。输入设备输入设备输出设备输出设
36、备输入进程输入进程SPi输出进程输出进程SPo输入缓冲区输入缓冲区Bi输出缓冲区输出缓冲区Bo输入井输入井输出井输出井磁盘磁盘Spooling系统系统(xtng)的组成的组成设备的使用(shyng)与管理第51页/共115页第五十一页,共115页。设备的使用设备的使用设备的使用设备的使用(shyng)(shyng)(shyng)(shyng)与管理与管理与管理与管理 Spooling系统的特点系统的特点(tdin):1、提高了、提高了I/O速度;速度;2、将独立设备改造为共享、将独立设备改造为共享设备;设备;3、实现了虚拟设备功能。、实现了虚拟设备功能。第52页/共115页第五十二页,共115
37、页。设备的使用设备的使用设备的使用设备的使用(shyng)(shyng)(shyng)(shyng)与管理与管理与管理与管理n n共享打印机:共享打印机:n n例如例如:同一进程所有输出数据在进程运行同一进程所有输出数据在进程运行时被写到同一文件当中,文件排到打印输时被写到同一文件当中,文件排到打印输出队列出队列(duli)(duli),打印进程申请占用打印,打印进程申请占用打印机后,成批读出文件中数据,并送打印机机后,成批读出文件中数据,并送打印机打印出去。打印出去。第53页/共115页第五十三页,共115页。设备设备(shbi)的使用与管理的使用与管理打打印印请请求求队队列列(含含要要打打
38、印印文文件)件)打印打印daemon daemon 进程进程打印机打印机以以SPOOLing方式方式(fngsh)使用外设使用外设第54页/共115页第五十四页,共115页。软件软件(run jin)层次结构层次结构用户层用户层I/OI/O设备驱动及中断处理设备驱动及中断处理硬件硬件系统调用接口,设备无关的操作系统软件系统调用接口,设备无关的操作系统软件n n通常,操作系统将设备管理通常,操作系统将设备管理系统划分并组织成三个层次:系统划分并组织成三个层次:n n 用户层用户层I/On n 与设备无关的与设备无关的I/On n 设备驱动及中断设备驱动及中断(zhngdun)处理处理第55页/共
39、115页第五十五页,共115页。软件软件(run jin)层次结构层次结构n n用户层用户层I/O:n n用户层与设备的控制细节无用户层与设备的控制细节无关关(wgun),不直接与设备,不直接与设备打交道。打交道。n n它将所有的设备看作逻辑资它将所有的设备看作逻辑资源,为用户进程提供各类源,为用户进程提供各类I/O函数。用户以设备标识函数。用户以设备标识符和一些简单的函数来使用符和一些简单的函数来使用设备,如打开、关闭、读、设备,如打开、关闭、读、写等。如写等。如C库中的函数库中的函数fopen();fread();fwrite();fclose();printf()等等。第56页/共115
40、页第五十六页,共115页。软件软件软件软件(ru(ru n jin)n jin)层次结构层次结构层次结构层次结构n n与与 设设 备备(shbi)无无 关关 的的I/O软件层:软件层:n n 为为了了提提高高系系统统的的可可适适应应性性和和可可扩扩展展性性,我我们们希希望望所所编编制制的的用用户户程程序序与与实实际际使使用用的的物物理理设设备备(shbi)无无关关,这这就就是是所所谓谓与与设设备备(shbi)无关性。无关性。n n 为为此此,我我们们将将逻逻辑辑设设备备(shbi)与与 物物 理理 设设 备备(shbi)区区分分,并并引引入入逻逻辑辑设设备备(shbi)名名称称和和物物理理设设
41、备备(shbi)名名称称的的概概念念。为为 了了 实实 现现 与与 设设 备备(shbi)的的无无关关性性,系系统统中中必必须须有有一一张张联联系系逻逻辑辑设设备备(shbi)名名称称和和物物理理设设备备(shbi)名名称称的的映映射射表表(表)。(表)。第57页/共115页第五十七页,共115页。软件软件软件软件(ru(ru n jin)n jin)层次结构层次结构层次结构层次结构逻辑设备号逻辑设备号物理设备号物理设备号驱动程序地址驱动程序地址172042027204203220E00441FC106120D02772042015101FC1016111FC120第58页/共115页第五十八
42、页,共115页。软件软件软件软件(ru(ru n jin)n jin)层次结构层次结构层次结构层次结构 这个中为三个不同的逻辑设备号列出了同样(tngyng)的物理设备和驱动程序的地址。这说明逻辑设备,目前均得到同一个物理设备的服务(这或许是因为激光打印机及字母型打印机正在被修理,因此本来输出到这些设备上的请求都移到行式打印机)。在这个映射表中我们还可以看到物理设备和都是由同一个驱动程序服务的。这是假定它们是同一类型的终端。第59页/共115页第五十九页,共115页。软件软件(run jin)层次结构层次结构n n与设备无关的与设备无关的I/O软件层:软件层:n n它对上层提供系统调用的接口它
43、对上层提供系统调用的接口(ji ku),对下通过设备驱动,对下通过设备驱动程序接口程序接口(ji ku)调用设备驱调用设备驱动程序。动程序。第60页/共115页第六十页,共115页。软件软件(run jin)层次结构层次结构n n该层软件的基本功能包括:该层软件的基本功能包括:n n(1)设备名与设备驱动程序的映射)设备名与设备驱动程序的映射 n n(2)设备保护)设备保护 n n(3)逻辑块)逻辑块n n(4)缓冲)缓冲 n n(5)设备空闲)设备空闲(kngxin)空间管理与分配。空间管理与分配。n n(6)错误报告)错误报告n n(7)分配及设备释放)分配及设备释放第61页/共115页第
44、六十一页,共115页。软件软件(run jin)层次结构层次结构n n设备驱动与中断处理设备驱动与中断处理(chl):n n设备驱动程序包括了所有与设备驱动程序包括了所有与设备相关的代码,其功能是设备相关的代码,其功能是从与设备无关的软件中接收从与设备无关的软件中接收I/O请求,排入请求队列或请求,排入请求队列或执行之。执行之。n n当进程进行当进程进行I/O操作时,将操作时,将其阻塞至其阻塞至I/O操作结束并发操作结束并发生中断。中断发生时,由中生中断。中断发生时,由中断处理断处理(chl)程序启动请求程序启动请求排队的下一请求并解除等排队的下一请求并解除等I/O进程的阻塞状态,使其进程的阻
45、塞状态,使其能够继续执行。能够继续执行。第62页/共115页第六十二页,共115页。缓冲缓冲(hunchng)管理管理l引入缓冲的主要原因有以下几个方面:引入缓冲的主要原因有以下几个方面:l缓解缓解CPU与与I/O设备间速度不匹配的矛盾。设备间速度不匹配的矛盾。l减少对减少对CPU的中断频率,放宽对中断处理时间的中断频率,放宽对中断处理时间(shjin)的限制。的限制。l提高提高CPU和和I/O设备之间的并行性。设备之间的并行性。第63页/共115页第六十三页,共115页。缓冲缓冲(hunchng)管理管理 缓冲区用户区l单缓冲(单缓冲(Single Buffer):):l是操作系统缓冲支持中
46、最为简单是操作系统缓冲支持中最为简单(jindn)的一的一种形式,每当用户进程发出一个种形式,每当用户进程发出一个I/O请求时,操请求时,操作系统便在内核区域为之分配一个缓冲区。作系统便在内核区域为之分配一个缓冲区。第64页/共115页第六十四页,共115页。缓冲缓冲(hunchng)管理管理n n例如,例如,例如,例如,CPUCPU从磁盘上读入从磁盘上读入从磁盘上读入从磁盘上读入NN个数据个数据个数据个数据(shj)(shj)块,然后块,然后块,然后块,然后对这些数据对这些数据对这些数据对这些数据(shj)(shj)块进行计算,采用单缓冲机制的块进行计算,采用单缓冲机制的块进行计算,采用单缓
47、冲机制的块进行计算,采用单缓冲机制的工作过程为:先从磁盘把一块数据工作过程为:先从磁盘把一块数据工作过程为:先从磁盘把一块数据工作过程为:先从磁盘把一块数据(shj)(shj)读入到缓读入到缓读入到缓读入到缓冲区中,所花时间为冲区中,所花时间为冲区中,所花时间为冲区中,所花时间为T T;在读取一块以后由操作系统;在读取一块以后由操作系统;在读取一块以后由操作系统;在读取一块以后由操作系统将缓冲区的数据将缓冲区的数据将缓冲区的数据将缓冲区的数据(shj)(shj)传送到用户区,所花时间为传送到用户区,所花时间为传送到用户区,所花时间为传送到用户区,所花时间为MM;最后由;最后由;最后由;最后由C
48、PUCPU对这一块数据对这一块数据对这一块数据对这一块数据(shj)(shj)进行计算,所进行计算,所进行计算,所进行计算,所花费的时间为花费的时间为花费的时间为花费的时间为C C。如果不采用缓冲,将数据。如果不采用缓冲,将数据。如果不采用缓冲,将数据。如果不采用缓冲,将数据(shj)(shj)直接从磁盘读入用户区,每批数据直接从磁盘读入用户区,每批数据直接从磁盘读入用户区,每批数据直接从磁盘读入用户区,每批数据(shj)(shj)的处理时的处理时的处理时的处理时间为(间为(间为(间为(T+CT+C)NN。采用单缓冲技术时,数据。采用单缓冲技术时,数据。采用单缓冲技术时,数据。采用单缓冲技术时
49、,数据(shj)(shj)读入缓冲与计算读入缓冲与计算读入缓冲与计算读入缓冲与计算C C是可以并发执行的(第一是可以并发执行的(第一是可以并发执行的(第一是可以并发执行的(第一和最后一块除外,采用前面讲到的预先读取方式),和最后一块除外,采用前面讲到的预先读取方式),和最后一块除外,采用前面讲到的预先读取方式),和最后一块除外,采用前面讲到的预先读取方式),这样,每批数据这样,每批数据这样,每批数据这样,每批数据(shj)(shj)的最大处理时间为的最大处理时间为的最大处理时间为的最大处理时间为MAXMAX(C C,T T)N+MNN+MN。通常。通常。通常。通常MM远小于远小于远小于远小于T
50、 T或或或或C C,这样就提高,这样就提高,这样就提高,这样就提高了了了了CPUCPU和外设的利用率。和外设的利用率。和外设的利用率。和外设的利用率。第65页/共115页第六十五页,共115页。缓冲缓冲(hunchng)管理管理缓冲区A缓冲区B用户区l双缓冲双缓冲(hunchng)(Double Buffer):):l是对单缓冲是对单缓冲(hunchng)方式的改进。可以实现用户方式的改进。可以实现用户数据区数据区缓冲缓冲(hunchng)区之间交换数据和缓冲区之间交换数据和缓冲(hunchng)区区外设之间交换数据并行。外设之间交换数据并行。第66页/共115页第六十六页,共115页。缓冲缓