软件技术基础-OS设备管理课件(PPT 43页).ppt_第1页
软件技术基础-OS设备管理课件(PPT 43页).ppt_第2页
软件技术基础-OS设备管理课件(PPT 43页).ppt_第3页
软件技术基础-OS设备管理课件(PPT 43页).ppt_第4页
软件技术基础-OS设备管理课件(PPT 43页).ppt_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

2.5设备管理,2.5设备管理,设备管理是操作系统最基本、最繁杂的组成部分。且与硬件的关系最密切。,2.5.1设备管理概述,外设按功能分为两类,I/O设备存储设备,I/O设备输入设备模拟信号数字信号(A/D转换)输出设备数字信号模拟信号(D/A转换),一、I/O设备及分类,存储设备存取控制部分(控制电路伺服系统、读写控制电路、磁头、光头等)信息载体(磁盘、磁带、光盘等),按传输速度,低速:键盘、鼠标,中速:打印机,高速:磁盘,按信息交换单位,块设备:信息传输以块为单位,字符设备:信息传输以字节为单位,按分配方式,独占设备:在一段时间只允许一个进程访问的设备。打印机,共享设备:在一段时间允许多个进程同时访问的设备。磁盘,虚拟设备:将独占设备虚拟为多台虚拟设备,独占设备虚拟为共享设备,设备管理的基本任务是:(1)控制I/O操作,进行设备分配,提高CPU与设备之间的并行工作程度。协调和保证设备的高效工作。(2)向用户提供一个使用设备的方便接口。完成用户的I/O请求。,二、设备管理的任务和功能,设备管理的功能:建立统一的独立于设备的接口。按照设备类型和相应算法,进行设备的分配与回收。进行设备驱动,实现真正的I/O操作及设备间的并行操作。实现输入输出缓冲区管理,解决高速CPU与慢速设备速度不匹配问题。实现虚拟设备管理。,1.微机I/O系统CPU通过总线与设备控制器相连接,设备控制器是CPU与设备之间的接口。2.主机I/O系统使用I/O通道(I/O处理机),实现对设备控制器的控制。,三、I/O系统的结构,CPU,存储器,I/O设备,I/O设备,总线,高速,低速,1、微机I/O系统基于总线的微机硬件体系,设备控制器,设备控制器,共享总线,设备与CPU之间的通信通过设备控制器进行,2、主机I/O系统特点,CPU,主存,通道,通道,通道,通道,I/O设备,磁盘,磁带,通信设备,以通道代替CPU与设备控制器通信,通道可认为是特殊的处理器,各通道与CPU共享主存,设备控制器与通道,(1)设备控制器,位于CPU与设备之间,接收CPU下达的输入、输出命令并控制具体设备实现操作。,*功能,接收和识别命令,地址识别,命令接收,命令识别,数据交换,数据暂存、缓冲,监测设备状态,(2)通道,1、通道是一种特殊的处理机,具有执行I/O指令的能力。通过执行通道程序来控制I/O操作,2、CPU只需向通道发出一条指令,通道便从内存中取出本次执行的通道程序,并执行。,通道程序可以包含多次输入、输出,是一个相对完整的过程,4、通道把CPU从繁杂的I/O任务中解脱出来,3、通道之间可以并行执行,2.5.2数据传送控制方式,(1)程序I/O方式(2)中断控制方式(3)DMA控制方式(4)通道控制方式,设备管理的主要任务之一是控制设备与内存或CPU之间的数据传送,选择控制方式的原则是:保证在足够的传输速度下数据的正确传送。系统开销小。充分发挥硬件资源的能力。,本节讨论CPU通过设备控制器来控制数据I/O的方式。,常用的I/O控制方式,(1)程序I/O方式,(2)中断控制方式,结合进程调度机制,实现让权等待,进程利用中断实现输入、输出流程:,初始化,阻塞等待输入,控制设备完成输入,根据中断唤醒等待进程,设备产生输入中断,中断机制实现了CPU与设备的并行控制让权等待,CPU,输入:,其他进程,中断处理,继续,设备,等待数据,处理输入数据,被唤醒的等待进程,数据到设备,产生中断,暂不接收数据,清除中断,等待数据,一次I/O操作(1字节)完成,向CPU发中断信号,CPU作中断处理。效率虽然比程序I/O方式高,但还是不适宜需要交换大量数据的情况。,缺点:,(3)DMA方式,中断控制方式一般以字节为单位产生中断,每个字节在中断处理程序中,读入到CPU的寄存器中。直接存储器访问DMA(DirectMemoryAccess)方式的引入是为解决中断控制方式对块设备低效的问题。减少中断次数。,由于大多数的小型、微型计算机采用总线结构,DMA方式是“窃取”或“挪用”CPU总线的控制权,即要求CPU暂停若干总线周期,由DMA控制器占有存储器周期进行设备与内存之间的数据交换。,DMA方式的基本思想,(1)以数据块为单位进行数据传送。(2)设备与内存之间直接交换数据。,DR数据寄存器,暂时存放设备内存间传送的信息。MAR内存地址寄存器。DC传送字(节)数寄存器。CR命令/状态寄存器。接收从CPU发来的I/O命令、控制信息、设备状态。,主机-控制器接口控制器-块设备接口,DMA控制器的组成,DR,MAR,DC,CR,I/O控制逻辑,CPU,内存,命令,系统总线,DMA控制器,。,count,磁盘,源地址,数据,DMA工作过程,以磁盘数据输入为例预置DMA寄存器启动DMA,传送一个数据块睡眠并等待DMA传送结束I/O中断处理唤醒数据输入进程,DMA方式为成块传递,1、数据直接在DMA控制器控制下通过总线传递到内存中2、在完成指定量的数据接收后,DMA控制器才向CPU产生中断。3、通过中断处理程序可能唤醒等待数据的进程,减少CPU在数据传递过程中的干预,中断控制方式与DMA方式,CPU,总线,I/O设备,内存,中断,CPU,I/O设备,内存,DMA,通知已传输完毕,(4)通道控制,通道通过执行通道程序并行完成一系列输入输出过程,进一步减少CPU对输入输出过程的干预。,提高CPU与设备之间的并行性,提高资源利用率,提高系统吞吐量。,通道是一个独立于CPU的专门控制I/O工作的简单的处理机,它控制设备与内存直接进行数据交换。,CCW的信息:操作码内存地址传送数据字节数通道程序结束位P(P=1结束)记录结束标志R,0指令处理同一记录1处理记录结束,通道(Channel)是比DMA方式更加完善,功能更强的I/O控制方式。DMA与通道方式的异同:相同:以内存为中心,实现设备与内存之间直接交换数据的控制方式。不同:通道是专门控制I/O的处理机。其指令称为通道控制字(CCW),由CCW编制的通道程序,独立执行I/O任务。,通道的控制过程:CPU启动通道通道程序的始址存放在称为通道地址字(CAW)的内存单元中,由CPU启动通道程序后,CPU可去执行其他任务。执行通道指令CCW,向设备控制器发出I/O操作命令。设备根据CCW将数据传送到内存指定单元。数据传送结束,I/O控制器向CPU发出中断请求命令。,按照信息交换方式分类:字节多路通道用于低、中速设备含多个非分配型的子通道,子通道按时间片轮转共享主通道。按字节传送。传输速度慢选择通道连接中、高速设备含一个分配型的子通道,一段时间内只能执行、控制一台设备工作。通道利用率低,传输速度快。数组多路通道连接中、高速设备,通道的类型,中央处理机,内存,字节多路通道,数组多路通道,选择通道,卡片输入机,卡片输入机,打印机,磁盘,磁带,通道结构,2.5.3缓冲技术,1缓解CPU与外设速度不匹配的问题。2减少CPU中断响应次数,放宽响应时间。缓冲一定数量的数据后才向CPU产生一次中断3提高CPU与I/O设备,I/O设备之间的并行操作能力。减少CPU在设备数据传输期的干预,一为什么引入缓冲技术,缓冲技术的基本思想:在内存中开辟一个或多个专用区域(缓冲区),作为CPU与I/O设备间信息的集散地。,速度1,速度2,1.单缓冲区(singlebuffer)在设备和主机之间设置一个缓冲区。只能缓解速度匹配的问题。不能实现设备之间的并行操作。,二、缓冲区的组织,设备以速率V向缓冲输入数据,缓冲区满后CPU以速率W读出数据,缓冲区处理完后再由设备输入数据,接收,解决了速率匹配问题,速度1,速度2,设备,CPU,同时,提高CPU与设备间的并行度,一般是建立两个大小相等的缓冲区,设备交替对两个缓冲区输入数据,操作系统也交替地从两个缓冲区移出数据送用户进程区。,2.双缓冲区(doublebuffer),双向通信,接收,发送,CPU,设备1,设备2,CPU,3.多缓冲区与缓冲池(bufferpool),可以实现多个外设并行工作及解决CPU的速度匹配问题。现行操作系统大都采用此结构。,三、缓冲池的管理,1.缓冲池的结构缓冲池由多个缓冲区构成。每个缓冲区又分为缓冲区首部和缓冲体。,设备号缓冲区号缓冲区地址缓冲区状态(忙/闲)数据块号互斥标识位设备缓冲队列指针,缓冲区首部,将缓冲区连接成三种队列:空缓冲区队列(emq)满输入缓冲区队列(inq)满输出缓冲区队列(outq),有四类工作缓冲区:sin提取输入的工作缓冲区hin收容输入数据的缓冲区sout提取输出的工作缓冲区hout收容输出数据的缓冲区,(1)收容输入输入进程调用过程getbuf(emq),从空缓冲队列中申请一空缓冲区收容输入数据的缓冲区(hin)。从设备输入数据到hin。调用过程putbuf(inq,hin),将满缓冲区hin插入满输入缓冲区队列(inq)的队尾。,2.缓冲池管理方式,(2)提取输入当需要处理输入数据时,计算进程调用getbuf(inq),从满输入缓冲区队列(inq)的队首取出一缓冲区提取输入的工作缓冲区(sin)。计算进程从sin提取数据处理。调用过程putbuf(emq,sin),释放工作缓冲区sin,并插入空缓冲队列尾。,缓冲池管理过程(以输入为例),缓冲输出过程(收容输出、提取输出)与输入类似。,输入输出设备,数据处理程序,hin,sout,sin,hout,inq,emq,outq,putbuf(inq,hin),putbuf(emq,sout),getbuf(inq),getbuf(emq),putbuf(emq,sin),getbuf(outq),getbuf(emq),putbuf(outq,hout),提取输入,提取输出,收容输入,收容输出,典型的缓冲池管理,收容输入,getbuf(emq),hin,putbuf(inq,hin),提取输入,getbuf(inq),sin,putbuf(emq,sin),2.5.4设备的分配,按一定算法进行设备分配,包括设备、设备控制器及通道,保证:,“有”用户能得到设备使用权。,“安全”用户使用设备是安全的。,讨论设备分配的数据结构,分配原则及分配算法。一、设备分配的数据结构,1.设备控制表DCT(DeviceControlTable)系统为每个设备配置了一张设备控制表,记录该设备的情况反映设备特性,设备与I/O控制器连接情况。,2.控制器控制表COCT(ControlerControlTable)系统为每个控制器都设置了一张用于记录本控制器情况的控制表。记录I/O控制器使用情况及与通道连接情况。(DMA无),3.通道控制表CHCT(ChannelControlTable)每个通道都配有一张通道控制表。描述通道的使用情况。,4.系统设备表SDT(SystemDeviceTable)整个系统一张,记录已连接到系统中的设备情况,每个设备在SDT中占一表项。,设备分配的数据结构,设备分配的方式:静态分配一次分配所有需要的设备。不符合分配原则。动态分配进程执行过程中,按需分配。,设备分配总原则:充分发挥设备利用率,避免由于不合理分配引起进程死锁。具体考虑以下方面:1.设备的固有属性(独占、共享、虚拟)。2.设备分配算法(先来先服务、优先级)。3.设备分配的安全性(安全或不安全分配方式)。4.设备独立性(用户程序独立于使用的物理设备)。,二、设备分配的原则及方式,三、设备分配流程,进程P发出I/O请求,搜索SDT找到DCT指针,查DCT设备忙?,进程P按分配算法入I/O队列,Y,N,按分配算法选择进程,进程P选中?,进程P等待设备空闲,N,Y,检查设备分配的安全性,安全吗?,N,Y,设备分配给进程P,1,1,搜索DCT找到COCT指针,控制器忙?,Y,进程P等待控制器,N,分配控制器给进程P,搜索COCT找到CHCT指针,CHCT忙,Y,进程P等待通道,N,分配通道给进程P,启动I/O,多道程序系统中,进程对设备的需求频繁,尤其是独占设备数量有限、效率低,故引入虚拟设备管理技术。基本思想:用大容量的快速设备(磁盘)模拟慢速度的独占设备,把一台物理上的独占设备变为逻辑上的多台共享设备。,SPOOLing是一种典型的虚拟设备技术,SPOOLing是SimultaneousPeripheralOperationsOnLine(外围设备同时联机操作)的缩写,是用程序模拟脱机I/O的功能,故又称为假脱机技术。,2.5.5虚拟设备管理与SPOOLing技术,2.SPOOLing技术,1.虚拟设备管理,真脱机技术:输入、输出是脱离主机完成的。,靠外围机的控制输入、输出设备与磁盘交换数据。,CPU只与高速磁盘(磁带)交换数据,其它,输入井,输出井,高速,高速,假脱机技术,技术要点:,(1)多道程序并发执行,(2)一道程序模拟外围机的输入,将数据从设备输入到磁盘,(3)一道程序模拟外围机的输出,将数据从磁盘输出到设备,(4)其它程序与设备的通信和脱机方式一样:读写高速磁盘,(5)主机仍要控制外围设备“假脱机”,特点,(1)提高了进程访问低速设备速率,(2)独占设备成为虚拟设备,(3)独占设备成为共享设备,不与实际设备交互,磁盘是可共享的高速设备,SPOOLing系统的组成:输入井、输出井输入进程、输出进程I/O缓冲区,输入设备,输入设备,通道,以打印机为例,说明SPOOLing系统的工作过程:当进程请求打印输出时,OS并不是把设备分配给它。1、输出

温馨提示

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

评论

0/150

提交评论