您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 20--os设备管理
软件技术基础制作主讲段景山段景山设备管理段景山2操作系统内容概要操作系统概述和基本原理操作系统的几大基本的管理功能处理机管理存储器管理设备管理文件管理作业管理段景山3设备管理的基本概念设备的分配第二篇操作系统设备的驱动设备数据传送方式缓冲技术假脱机技术段景山4I/O系统7.1I/O系统7.1.1I/O系统的结构7.1.2I/O设备分类7.1.3设备管理的功能7.1.4设备控制器7.1.5I/O通道段景山5基于总线结构的I/O系统(1)微机I/O系统的结构共享总线,设备与CPU之间要通过设备控制器CPU存储器高速I/O设备总线低速I/O设备设备控制器设备控制器段景山6基于主存和通道的I/O系统CPU主存通道通道通道通道某I/O设备磁盘磁带通信设备主存可同时进行控制(2)主机I/O系统结构通道与CPU共享主存通道代替CPU完成与设备控制器的通信段景山7I/O设备分类7.1.2I/O设备分类按传输速度按信息交换单位按分配方式按工作特性I/O设备存储设备低速:键盘、鼠标中速:打印机高速:磁盘块设备:信息传输以块为单位字符设备:信息传输以字节为单位独占设备:打印机共享设备:磁盘虚拟设备:将独占设备虚拟为多台虚拟设备达到共享设备的目的段景山8设备管理的功能7.1.3设备管理的功能为用户提供简单一致的方式访问各种I/O设备的能力1)进行设备分配——设备分配程序按设备类型和系统分配策略进行设备分配与回收2、实现真正I/O操作——设备驱动程序向用户提供统一的接口——屏蔽I/O操作的细节实现设备驱动——真正的I/O操作实现虚拟设备管理3、实现其它功能——缓冲区管理用缓冲区提供CPU与I/O设备的速度匹配段景山9设备管理控制器7.1.4设备控制器1)什么是设备控制器位于CPU与设备之间,接收CPU下达的输入、输出命令并控制具体设备实现操作。接口:位于CPU与设备之间解脱:将CPU从I/O控制中解脱可编址:一个控制器可控制一个或多个设备接口卡:存在形式,如声卡、显卡等字符与块控制:I/O控制,数据传递方式段景山10设备控制器的功能2)设备控制器功能接收和识别命令地址识别命令接收命令识别数据交换数据暂存、缓冲数传速率匹配监测设备状态CPU下达控制命令地址识别out10H,110H11H命令接收命令识别弹出光盘光盘就绪产生中断信号通知CPU段景山11设备控制器的接口3)设备控制器的接口数据接口传递数据控制接口传递控制命令或控制信号状态接口传递设备状态信号段景山12设备控制器的组成4)设备控制器组成控制器与CPU的接口单元控制器与设备接口单元I/O逻辑单元实现控制功能:命令识别,状态处理数据线数据寄存器地址线I/O逻辑控制线控制器与设备接口控制器与设备接口数据信号控制信号状态信号数据信号控制信号状态信号段景山13通道7.1.5I/O通道引入将CPU进一步从低速复杂的I/O操作中解脱出来通道:是一种特殊的处理机,具有执行I/O指令的能力。通道通过执行通道程序来控制I/O操作主机具有一个或多个通道,通道和CPU都共享一个主存一个通道可管理一个或多个设备控制器,进而管理一个或多个设备段景山14通道一个通道可管理一个或多个设备控制器,进而管理一个或多个设备通道设备控制器设备控制器设备设备设备通道设备控制器设备设备主存CPUOPPR数量地址031OP:操作码,读、写、控制P:通道程序结束标志R:纪录结束标志C0004R011000200W01401200w113001240RWC例:磁带反卷从通道中读入1000个字节到内存200起始处向通道写出40字节,数据块起始于内存1200向通道写出300字节,数据块起始于内存1240通道程序指令结构通道程序段景山16通道工作原理通道工作基本原理CPU只需向通道发出一条指令,通道便从内存中取出本次执行的通道程序,并执行。通道程序可以包含多次输入、输出,是一个相对完整的过程通道把CPU从繁杂的I/O任务中解脱出来通道之间可以并行执行,系统I/O效率得到提高段景山17通道的类型通道类型字节多路通道以字节为单位传送数据以“分时”方式服务于多个I/O设备——多路数据传送速率低数组选择通道以数组为单位传送数据设备独占通道数据传送速率高,通道利用率低段景山18通道的类型通道的类型数组多路通道以数组为单位分时服务于多个设备数据传送速率高,通道利用率高段景山19单通路与多通路系统单通路与多通路系统单通路:树型结构,从通道到设备只有一条通路多通路:从设备到通道有多条通路通道设备控制器设备控制器设备设备设备通道通道设备控制器设备控制器设备设备通道设备段景山20I/O控制方式7.2I/O控制方式程序控制I/O方式中断控制I/O方式DMA方式通道控制方式类比假设你参加希望工程,捐助一名失学儿童,你会怎样与她/他沟通?段景山21程序控制I/O方式7.2.1程序控制I/O方式(轮询)由程序循环测试控制器的状态启动数据接收有数据接收?否是启动数据发送数据发送完毕?否是忙等段景山22中断控制方式与DMA方式CPU总线I/O设备内存中断CPUI/O设备内存DMA通知已传输完毕段景山23中断控制I/O方式7.2.2中断控制方式设备的控制通过中断机制实现,如有数据到达时,设备通过中断信号通知CPU,CPU调用相应的中断处理程序接收数据结合中断机制和进程状态转换,可实现让权等待CPU总线I/O设备内存中断段景山24中断实现输入的流程进程利用中断实现输入的流程初始化阻塞等待输入控制设备完成输入中断处理程序中,根据中断类型唤醒相应等待进程设备产生输入中断需要输入数据的进程段景山25中断实现输出的流程进程利用中断实现输出的流程向设备输出数据阻塞等待输出完成设备产生输出中断中断处理程序中,根据中断类型唤醒相应等待进程需要输出数据的进程中断机制实现了CPU与设备的并行控制——让权等待CPU输入:其他进程中断处理设备等待数据继续处理输入数据被唤醒的等待进程数据到设备产生中断暂不接收数据清除中断等待数据唤醒等待接收的进程CPU等待进程测试设备设备等待数据继续测试设备处理输入数据数据到设备暂不接收数据等待数据忙等轮询方式中断方式段景山27中断控制方式的特点中断控制方式的特点结合中断控制方式和进程的状态转换,可以实现让权等待,使CPU和设备都得到充分利用中断控制方式一般以字节为单位产生中断,传输速率较低系统处理一个字节要经过中断响应、中断程序处理、控制设备的进程被唤醒、进程被调度,进程从设备读入或向设备输出一个字节。开销较大,传输效率较低段景山28DMA控制I/O方式7.2.3DMA方式DMA方式为成块传递,减少CPU在数据传递过程中的干预1)数据直接在DMA控制器控制下通过总线传递到内存中2)在完成指定数量的数据接收后,DMA控制器才向CPU产生中断。3)中断处理程序可能唤醒等待数据的进程4)等待数据的进程经过调度后,处理输入的数据,此时数据已经在内存里了段景山29通道控制I/O方式7.2.4通道控制通道通过执行通道程序并行完成一系列输入输出过程通道进一步减少CPU对输入输出过程的干预。整个过程中,CPU只需向通道发出一个指令通道提高CPU与设备之间的并行性,提高资源利用率,提高系统吞吐量通道之间,通道与CPU之间是并行的段景山30缓冲管理7.3缓冲管理7.3.1缓冲思想的引入:CPU与I/O设备速度匹配问题减少中断频率缓冲一定数量的数据后才向CPU产生一次中断提高CPU与I/O之间的并行性减少CPU在设备数据传输期的干预速度1速度2段景山31单缓冲管理7.3.2单缓冲接收设备以速率V向缓冲输入数据缓冲区满后CPU以速率W读出数据缓冲区处理完后再由设备输入数据发送反之亦然速度V速度W解决了速率匹配问题段景山32双缓冲管理7.3.3双缓冲设置两个缓冲区提高CPU与设备间的并行度设备CPU设备1设备2CPU双向通信接收设备发送设备CPU例1例2例3同时同时段景山33循环缓冲管理7.3.4循环缓冲多个缓冲区循环使用,类似循环队列CPU设备输入next_innext_out段景山34缓冲池的管理7.3.5缓冲池的管理可供多个对象共享的公用缓冲区组成的缓冲池缓冲池组成多种类型的缓冲区组成的三条队列inq:从设备输入的数据缓冲区队列outq:准备向设备输出的数据缓冲区队列emptyq:空缓冲区队列段景山35缓冲池的组成缓冲池的组成emptyqinqoutq收容输入提取输出提取输入收容输出设备CPU数据到达取走数据发送数据取走发送段景山36缓冲池操作缓冲池操作(四种操作)设备输入数据到缓冲池getbufferfromemptyq;filldatainbuffer;putbufferininq;收容输入用户从缓冲池读入数据getbufferfrominq;calculatedatainbuffer;putbufferbacktoemptyq提取输入用户向数据缓冲池输出数据getbufferfromoutq;Senddata;putbufferinemptyq;收容输出设备从缓冲池中读出输出数据并完成输出getbufferfromemptyq;filldatainbuffer;putbufferoutq;提取输出设备用户注意:还应结合进程同步机制段景山37设备分配的功能7.4设备的分配7.4.1设备分配功能按一定算法进行设备分配保证:“有”——用户能得到设备使用权。“安全”——用户使用设备是安全的。包括设备、设备控制器及通道段景山38段景山39设备分配涉及的数据结构7.4.2实现设备分配的数据结构系统设备表:纪录系统设备情况设备控制表:纪录设备信息及设备的控制器表设备控制器表:纪录控制器信息及通道控制表通道控制表:纪录通道信息设备名SDTDCTCOCTCHCT设备控制表设备名设备控制表设备名设备控制表设备名设备控制表SDT设备名设备控制器设备名设备控制器状态状态控制器名通道控制表状态控制器名通道控制表状态DCTCOCT通道标识状态通道标识状态CHCT段景山40设备分配时考虑的因素7.4.3设备分配应考虑的因素1)设备的固有属性:独占共享2)分配的算法:当申请设备的进程有多个时先申请的进程先满足FIFO按进程的优先级分配当可申请的设备有多个时段景山41设备分配时考虑的因素3)设备分配的安全性:死锁安全分配:非请求和保持,CPU与设备串行工作不安全分配:分配设备时应该进行安全性状态检测段景山42设备分配时考虑的因素4)逻辑设备独立于物理设备用户使用逻辑设备,由系统控制具体的物理设备系统能根据用户提供的逻辑设备名找到相应的物理设备优点:灵活分配易于重定向逻辑设备表:完成逻辑设备名到物理设备的映射段景山43段景山44设备分配的过程7.4.4设备分配的基本过程分配设备分配设备控制器分配通道启动I/O设备开始信息传递段景山45分配设备的子流程分配设备根据设备名查SDT表,找到该设备的DCT该设备忙?分配安全?将设备分配给进程将进程插入DCT等待设备进程队列中否是是否*段景山46分配设备控制器的子流程分配设备控制器根据DCT表,找到该设备的控制器表COCT控制器忙?将设备控制器分配给进程将进程插入COCT等待设备控制器进程队列中否是**段景山47分配通道的子流程分配通道根据COCT表,找到该设备的通道表CHCT通道忙?将通道分配给进程将进程插入CHCT等待通道进程队列中否是**段景山48真脱机I/O技术7.5虚拟设备管理——SPOOLING技术“假脱机技术”7.5.1真脱机技术输入、输出是脱离主机完成的。CPU只与高速磁盘(磁带)交换数据靠外围机控制输入、输出设备与磁盘交换数据其它输入井输出井高速高速脱离主机进行脱离主机进行段景山49虚拟设
本文标题:20--os设备管理
链接地址:https://www.777doc.com/doc-1305117 .html