[精选]设备管理培训教材(PPT 62页)25677.pptx
第五章设备管理概概 述述1)设备管理的基本任务)设备管理的基本任务完成用户提出的I/O请求,实施具体的I/O操作提高I/O的速度、设备的利用率及设备与CPU的并行工作能力2)设备管理的主要功能)设备管理的主要功能D设备的分配、回收与管理D设备的处理(I/O控制、驱动与中断处理)D缓冲区的管理D设备的独立性与虚拟设备的实现5.1 I/O系统I/OI/O系统:计算机系统中负责数据系统:计算机系统中负责数据I/OI/O及及存储存储的子系统的子系统1 1)I/OI/O设备类型设备类型作用方面划分:I/O型、存储型使用属性划分:独占、共享、虚拟传输速率划分:低速、中速、高速信息交换单位划分:字符设备、块设备2 2)I/OI/O系统组成系统组成 一般包括I/O设备、控制器、接口及线路、设备驱动、控制和管理的相关程序,有的大中型机中还有通道。n 控制器控制器 相关概念:相关概念:连接CPU(内存)与I/O设备,用于控制设备工作,实现I/O设备与计算机之间的数据交换的硬件装置。控制器的功能控制器的功能:接收、识别由CPU发来的命令进行数据传递与交换设备状态的检查,设备地址的识别,数据缓冲,差错控制n 通通 道道 定义定义:能独立于CPU执行通道程序通道程序向控制器发命令的 装置特殊的处理机特殊的处理机 通道的功能:通道的功能:执行简单的I/O指令(与CPU并行并行工作)直接访问内存,进行内存与I/O设备间的数据传送替代CPU,通过执行通道程序对设备进行控制 通道的类型:通道的类型:字节多路通道数组选择通道数组多路通道总线结构示意图3)I/O3)I/O系统体系结构系统体系结构 微机系统:总线结构大型机系统:通道结构CPU内存内存磁盘控制器磁盘控制器打印机控制器打印机控制器磁盘磁盘打印机打印机系统总线系统总线CPU内存内存通道通道1通道通道2控制器控制器1设备设备1设备设备2控制器控制器m设备设备3设备设备4通道通道n单通道结构示意图单通道结构示意图5.2 I/O5.2 I/O控制方式控制方式p 程序程序I/OI/O方式方式p 中断驱动中断驱动I/OI/O方式(一般中断方式)方式(一般中断方式)p DMA I/O DMA I/O方式(方式(DMADMA控制器控制方式)控制器控制方式)p 通道通道I/OI/O控制方式(采用控制方式(采用I/OI/O通道实施控制)通道实施控制)1 1)程序)程序I/OI/O方式方式工作过程工作过程CPU发一条I/O指令给控制器,启动设备工作CPU不断测试设备的工作状态直至设备完成工作CPU发下一条I/O指令,再次启动设备工作特点特点CPU等待设备完成工作,CPU效率很低2)中断驱动)中断驱动I/O方式方式中断机构中断机构设备自动产生中断信息,并由CPU进行响应和处理 工作过程工作过程CPU发出I/O指令给控制器启动设备工作其后CPU不再等待设备完成,而是返回执行其他程序待设备完成时产生中断信号,CPU才去响应处理特点特点 CPU与设备间断并行工作,但设备每传送一个数据(通常为字节或字),CPU则要响应处理中断一次,效率仍不是太高3 3)DMA I/ODMA I/O控制方式控制方式DMADMA控制器的组成控制器的组成 工作过程工作过程CPU发I/O指令给DMA控制器(进行相应设置),启动设备工作其后CPU返回执行其他程序待DMA控制设备将一组数据传送完毕产生中断后,CPU才去干预处理 特点特点CPU与设备间断并行,CPU效率较高4)通道)通道I/O控制方式控制方式工作过程工作过程CPU向通道发命令,启动通道工作,CPU返回继续执行通道执行事先组织好的通道程序,启动设备进行数据传送待通道程序执行完毕,产生通道中断,CPU才响应处理特点特点CPU与通道、设备完全并行工作,CPU效率高5 5)四种方式比较)四种方式比较特点适用场合(系统)程序I/O方式:CPU等待设备完成早期无中断机构中断I/O方式:CPU与设备间断并行 一般字符设备DMA I/O方式:CPU与设备间断并行 块设备通道I/O方式:CPU与设备并行大型有通道5.3 缓冲技术和缓冲管理缓冲技术和缓冲管理p缓冲的引入缓冲的引入p缓冲的实现缓冲的实现p缓冲区类型缓冲区类型p缓冲池管理缓冲池管理 1 1)缓冲的引入)缓冲的引入 在操作系统中,引入缓冲的主要原因,可归结为以下几点:缓和缓和CPU与与IO设备间速度不匹配的矛盾设备间速度不匹配的矛盾减少对减少对CPU的中断频率的中断频率,放宽对中断响应时间的限制放宽对中断响应时间的限制提高提高CPU和和IO设备之间的并行性设备之间的并行性 注:凡数据到达率与离去率不一致的场合,均可采用凡数据到达率与离去率不一致的场合,均可采用缓冲加以解决缓冲加以解决2 2)缓冲的实现)缓冲的实现硬缓冲:在设备中设置缓冲区(通常是一组寄 存器)由硬件实现软缓冲:在内存中开辟一个空间用作缓冲区3 3)缓冲的类型)缓冲的类型 专用缓冲区:单缓冲、双缓冲、多缓冲 公用缓冲区:缓冲区的集合(缓冲池)注:注:分配的缓冲区个数愈多,缓冲效果愈好分配的缓冲区个数愈多,缓冲效果愈好4 4)各种缓冲及其管理)各种缓冲及其管理n 单缓冲单缓冲主机(内存)I/O设备 n 双缓冲双缓冲数据(设备)缓冲区缓冲区2缓冲区1内存(主机)缓冲区的数据存取操作可并行缓冲区的数据存取操作可并行缓冲区的数据存取操作是串行的缓冲区的数据存取操作是串行的n 循环多缓冲循环多缓冲 变量含义变量含义G装满数据的缓冲区R空缓冲区C当前工作的缓冲区 Nexti指向下一个可用空缓冲区指针 Nextg 指向下一个满缓冲区指针Current正在使用的缓冲区的指针 循环缓冲区的使用过程及同步循环缓冲区的使用过程及同步注:只要Nextg不赶上Nexti,都可从满缓冲区中取数据 只要Nexti不赶上Nextg,都可向空缓冲区中送数据GGRRGGNextiNextgn缓冲池及其管理缓冲池及其管理缓冲池缓冲池:公用缓冲区的集合组成组成:空缓冲区队列空缓冲区队列(供分配的空缓冲区组成)输入缓冲区队列输入缓冲区队列(装满输入数据的满缓冲区组成)输出缓冲区队列输出缓冲区队列(装满输出数据的满缓冲区组成)工作方式(四种)工作方式(四种)收容输入收容输入:从输入设备输入数据到空缓冲区提取输入提取输入:从输入缓冲区中提取数据到内存工作区收容输出收容输出:从内存向空缓冲区中送数据提取输出提取输出:从输出缓冲区中提取数据到输出设备输出缓冲池工作原理缓冲池工作原理123hin 3L(out)151372F(out)sout 5输输入入设设备备输输出出设设备备L(em)121063F(em)sin 4hout 1 用用 户户 程程 序序。O84F(in)L(in)4565.4I/O软件l 总体设计目标:高效性高效性和通用性通用性l 基本思想:I/O软件按分层分层的思想构成,较低层软件要使较高层软件独立于硬件的特性,较高层软件则要向用户提供一个友好的、清晰的、简单的、功能更强的接口。1)I/O软件的层次结构 各层任务如下:各层任务如下:用户层软件用户层软件:实现与用户交互的接口,用户可执行I/O系统调用设备独立性软件设备独立性软件:负责实现适用于所有设备的功用操作,并向用户层提供一个统一的接口设备驱动程序:设备驱动程序:与硬件直接相关,负责具体实施对设备发出操作指令驱动I/O设备工作中断处理程序:中断处理程序:I/O中断发出后执行相应的程序进行I/O的善后处理,并在处理完成后返回被中断进程硬件层:硬件层:实现物理IO的操作v 中断处理程序中断处理程序v设备驱动程序设备驱动程序A.A.主要功能主要功能接收上层软件(比如I/O进程)发来的命令和参数,并将其转换成具体的操作要求向控制器发I/O指令,启动设备工作,并进行中断响应和处理在有通道的I/O系统中,生成通道程序B.设备处理的方式设备处理的方式为每类设备设置一个驱动进程整个系统设置一个驱动进程不设置进程,仅设置相应驱动程序供调用无论何种处理方式,都必须有一组相应的驱动程序无论何种处理方式,都必须有一组相应的驱动程序C.C.驱动程序特点驱动程序特点 I/O请求与设备控制器之间的通信和转换程序 与设备控制器和I/O设备硬件特性相关 与采用的I/O控制方式相关 其中部分必须是汇编语言实现D.D.设备驱动的处理过程设备驱动的处理过程 转换上层软件的抽象要求为具体操作要求 对I/O请求进行合法性检查 对控制器、设备的工作状态进行检测 向控制器传送参数和命令,启动设备工作v设备独立性软件设备独立性软件A.设备独立性设备独立性:概念:概念:应用程序独立于物理设备即与具体设备无关好好处处:增加了设备分配的灵活性;利于设备的更新(I/O重定向重定向)实实现现:应用程序采用逻逻辑辑设设备备名名请求使用某类设备,实际执行时使用物理设备名称。系统通过逻逻辑辑设设备备表表(LUT)为之实现逻辑设备到物理设备的转换。B.设备独立性软件设备独立性软件基本任务是实现所有设备都需要的功能,并且向用户级软实现所有设备都需要的功能,并且向用户级软件提供一个统一的接口件提供一个统一的接口。其中所有设备共有的操作包括:独占设备的分配和释放逻辑设备名到物理设备名的映射设备保护提供与设备无关的逻辑块缓冲管理差错控制5.5 5.5 设备分配设备分配设备分配程序按照一定的策略把设备分配给I/O请求用户以解决资源的无序竞争问题,确保设备安全,正确地共享使用。1)设备分配的相关数据结构)设备分配的相关数据结构p设备控制表 DCTp控制器控制表 COCTp通道控制表 CHCTp系统设备表 SDTn 设备控制表(设备控制表(DCT)每个设备一张,描述设备特性和状态。反映设备特性、设备和控制器的连接情况。n控制器控制(COCT)n通道控制表(CHCT)n系统设备表(SDT)系统内一张,反映系统中设备资源的状态,记录所有设备的状态及其设备控制表的入口各表间的关系示意图各表间的关系示意图DCTCOCTCHCTSDT表目表目PCBPCB 2 2)设备分配应考虑的相关因素)设备分配应考虑的相关因素p设备的使用属性p设备分配的策略(算法)p设备分配的安全性p设备的独立性(无关性)n设备使用属性独占设备独占设备:共享设备共享设备:虚拟设备虚拟设备:一次只能分配给一个用户(进程)使用可同时分配给多个进程使用(比如磁盘)逻辑上可同时分配给多个进程,物理上仍是一个进程一个进程依次使用n设备分配算法设备分配算法 先请求先服务先请求先服务 优先级高者优先优先级高者优先n设备分配的安全性设备分配的安全性 安全分配方式安全分配方式:进程请求I/O后,立即被阻塞(不会产生新的请求)不安全分配方式不安全分配方式:进程请求I/O后不阻塞,会产生新的请求n设备独立性(即设备无关性)设备独立性(即设备无关性)用户程序中所使用的设备(逻辑设备)与系统配置的实际物理设备无关。3)独占设备分配流程)独占设备分配流程 查查SDT,找到对应,找到对应DCT设备忙?设备忙?插入设备请求队列插入设备请求队列Y查查COCT控制器忙?控制器忙?Y插入控制器等待队列插入控制器等待队列NN查查CHCT通道忙?通道忙?YN插入通道等待队列插入通道等待队列分配成功!分配成功!图图1:独占设备(单通路)分配流程:独占设备(单通路)分配流程5.6Spooling技术与虚拟设备1)问题的提出与解决)问题的提出与解决 问题提出问题提出独占设备一旦被某进程占用,即使占用期间设备闲置,其他请求者必须长期等待,导致进程推进速度放慢,系统效率降低 解决办法解决办法 采用脱机I/O,需增加外围机,且是脱机操作 利用Spooling技术,进行假脱机I/O操作Spooling工作原理工作原理利用可并发执行的输入和输出进程,在联机的状态下,模拟实施脱机I/O操作:预输入预输入和和缓输出缓输出 称实现假脱机操作的系统为称实现假脱机操作的系统为Spooling系统系统2)Spooling系统的设计与实现系统的设计与实现1 1 输入井和输出井:在磁盘上。输入井和输出井:在磁盘上。2 2 输入缓冲区和输出缓冲区:在内存。输入缓冲区和输出缓冲区:在内存。3 3 输入进程和输出进程:守护(输入进程和输出进程:守护(daemondaemon)进程)进程输入缓冲区输入缓冲区输出缓冲区输出缓冲区输入进程输入进程Spi输出进程输出进程Spo输入设备输入设备输出设备输出设备输入井输入井输出井输出井独占设备独占设备主机(内存)主机(内存)磁盘磁盘3)工作过程举例(以请求打印机为例)工作过程举例(以请求打印机为例)多个进程同时请求打印机,由Spooling系统响应根据请求,为用户进程分配磁盘输出井空间,将输出(打印)数据快速写到输出井中(暂存)建立“用户请求打印表”,填入相关请求数据将请求打印表插入请求打印队列待打印机空闲时,若请求打印队列不空,则唤醒输出进程,待其调度执行时,根据请求打印表信息从输出井读入数据送内存缓冲区,再由打印机输出,直至输出完毕重复上一操作,直至请求打印队列空为止(可阻塞输出进程)4)Spooling系统的作用与特征系统的作用与特征 提高了I/O的速度,同时也提高了进程的推进速度 将独占设备改造为独占设备改造为逻辑上可共享的设备共享的设备 实现了虚拟设备虚拟设备的功能(一名独占设备被逻辑扩充为 多台)设备管理归纳设备管理归纳任务任务实现实现完成用户I/O请求,实施I/O操作 设备分配,设备驱动,中断处理提高I/O的速率及与cpu并行工作能力引入缓冲技术,实现虚拟设备提高磁盘的存取访问速度提高磁盘的存取访问速度5.7磁盘存储器管理v磁盘存储器磁盘存储器:外部存储器或辅助存储器(重要的设备)特点:可长期保存程序和数据,容量大缺点:存取访问速度较低(比内存低46数量级)v磁盘管理的目标磁盘管理的目标改善磁盘系统的性能,提高存取(访问)速度1)磁盘存储器简介)磁盘存储器简介磁盘类型磁盘类型:硬盘和软盘 移动头和固定头磁盘结构结构 每个盘面有若干磁道磁道 每个磁道划分成若干扇区扇区 每个磁道某扇区对应的弧被称为一个盘块盘块 移动头磁盘的访问时间移动头磁盘的访问时间a)寻道时间Tsb)旋转延迟时间Trc)数据读/写时间Tt 要提高磁盘数据的存取速度,必须尽可能较少要提高磁盘数据的存取速度,必须尽可能较少寻道时间寻道时间2)磁盘调度)磁盘调度选择磁盘访问的寻道次序,不同的次序形成不同的磁盘调度算法,希望选用的调度算法使得平均寻道的时间为最少。常用的磁盘调度算法有:先来先服务算法先来先服务算法最短寻道时间优先最短寻道时间优先扫描法(来回双向)扫描法(来回双向)循环扫描法(单向)循环扫描法(单向)磁盘I/O执行顺序为磁盘I/O请求的先后顺序。磁头需要移动640个柱面,平均寻道长度80l 先来先服务(先来先服务(FCFSFCFS)选择从当前磁头位置出发,移动最少的磁盘I/O请求。该算法的目标是使每次磁头移动时间最少。l 最短寻道时间优先最短寻道时间优先 SSTF SSTF磁头需要移动236个柱面,平均寻道长度29.5l 扫描扫描(SCAN)(SCAN)算法:算法:选择在磁头前进方向上从当前位置移动最少的磁盘I/O请求执行,没有前进方向上的请求时才改变方向。故又称电梯调度算法磁头总共移动了磁头总共移动了236/208236/208个柱面的距离个柱面的距离l循环扫描算法循环扫描算法CSCANCSCAN CSCAN算法规定磁头只能单向运动(如自里向外),当磁头运动到最外面的被访问磁道时,磁头立即返回到最里面的欲访的磁道,即将最小磁道号紧接着最大磁道号构成循环,进行扫描。磁头总共移磁头总共移动了动了322322个柱个柱面的距离面的距离例:某时刻多个进程请求访问磁盘的磁道序列为55,58,39,18,90,160,150,38,184假定当前磁头位置位于100道且由外向里移动1.183839555890(100)150160184先来先服务的寻道次序为:55,58,39,18,90,160,150,38,184平均寻道长度为:498/9=55.3道 4.循环扫描法的平均寻道长度为 322/9=35.8道2.最短寻道时间优先的寻道次序为:90,58,55,39,38,18,150,160,184 平均寻道长度:248/9=27.5道 3.扫描法的寻道次序为:150,160,184,90,58,55,39,38,18平均寻道长度:250/9=27.8道 3)磁盘高速缓存)磁盘高速缓存v策略:策略:内存设置磁盘缓冲区,以降低读/写磁盘的次数,从而提高磁盘的访问速度数据逻辑上属于磁盘,数据逻辑上属于磁盘,物理上存在于内存物理上存在于内存(内存映象)(内存映象)内存内存磁盘磁盘 实现实现:缓冲区采用缓冲池结构,每个缓冲区的大小与对应磁盘盘块大小相一致磁盘操作磁盘操作 读磁盘:读磁盘:先查看内存缓冲区,若盘块数据在缓冲区中则直接存取,只有当盘块数据不在缓冲区时,才去读磁盘 写磁盘:写磁盘:先将数据写到对应缓冲区中,再以异步方式从缓冲区写到磁盘本章小结本章小结1)设备管理的基本任务完成I/O操作提高I/O速度及并行工作能力2)设备管理的主要功能设备的分配、回收与管理设备控制、驱动与中断处理缓冲的实现与管理虚拟设备的实现3)相关概念与术语I/O系统(设备、控制器、通道)I/O控制方式(程序测试、中断、DMA、通道)缓冲区,缓冲池有关数据结构(SDT,DCT,COCT,CHCT)逻辑设备与物理设备磁盘调度磁盘高速缓冲存储器4)缓冲管理缓冲的引入:缓解速度不匹配矛盾,提高I/O速度缓冲的实现:内存缓冲区缓冲区的类型:单缓冲、双缓冲、多缓冲、缓冲池5)设备分配分配算法:先请求先服务,优先级高者优先分配过程:查表、判断、分配(设备、控制器、通道)6)Spooling技术与Spooling系统Spooling的概念(假脱机I/O)Spooling系统的组成Spooling系统的作用与特点7)设备处理设备驱动中断处理8)磁盘存储器管理目标:改善磁盘系统的性能,提高存取(访问)速度措施:选择适当的磁盘调度算法 设立磁盘高速缓冲存储器演讲完毕,谢谢观看!