第7章设备管理-共64页PPT资料课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第7章设备管理-共64页PPT资料课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 设备管理 64 PPT 资料 课件
- 资源描述:
-
1、操作系统西安电子科技大学计算机学院第第7章章 设备管理设备管理第7章 外部设备管理7.1 引言引言7.2 缓冲技术缓冲技术7.3 设备分配设备分配7.4 设备控制设备控制7.5 磁盘设备管理磁盘设备管理7.6 设备管理举例设备管理举例外设的外设的特点:特点:种类种类多多差异差异大大( (控制和速度控制和速度) )外设外设管理目的管理目的包括:包括:外设资源的外设资源的控制控制外设资源的外设资源的共享共享提高外设资源的提高外设资源的利用率。利用率。7.1 引言引言7.1.1 7.1.1 外部设备类型和特征外部设备类型和特征7.1.2 I/O7.1.2 I/O控制技术控制技术7.1.3 7.1.3
2、 外设管理的目的和功能外设管理的目的和功能7.1.4 7.1.4 外设管理结构外设管理结构返回7.1.1 7.1.1 外部设备类型和特征外部设备类型和特征人机交互设备人机交互设备:视频显示设备、键盘、鼠标、:视频显示设备、键盘、鼠标、打印机打印机与计算机或其他与计算机或其他电子设备交互电子设备交互的设备:磁盘、的设备:磁盘、磁带、传感器、控制器磁带、传感器、控制器计算机间的计算机间的通信设备通信设备:网卡、调制解调器:网卡、调制解调器返回1. 按交互对象分类按交互对象分类2. 2. 按交互方向分类按交互方向分类输入输入(可读):键盘、扫描仪(可读):键盘、扫描仪输出输出(可写):显示设备、打印
3、机(可写):显示设备、打印机输入输入/ /输出输出(可读写):磁盘、网卡(可读写):磁盘、网卡3. 3. 按外设特性分类按外设特性分类使用特征使用特征:存储、输入:存储、输入/ /输出、终端输出、终端数据传输率数据传输率:低速:低速( (如键盘如键盘) )、中速、中速( (如打印机如打印机) )、高、高速速( (如网卡、磁盘如网卡、磁盘) )信息组织特征信息组织特征:字符设备字符设备( (如打印机如打印机) )、块设备、块设备( (如磁盘如磁盘) )7.1.1 外部设备类型和特征4 4按设备的共享属性分类按设备的共享属性分类 (1)(1)独占设备独占设备。它是指在一段时间内只允许一个用。它是指
4、在一段时间内只允许一个用户户( (进程进程) )访问的设备,即临界资源。因而,对多访问的设备,即临界资源。因而,对多个并发进程而言,应互斥地访问这类设备。系统个并发进程而言,应互斥地访问这类设备。系统一旦把这类设备分配给某后,便由该进程独占,一旦把这类设备分配给某后,便由该进程独占,直至用完释放。应当注意,独占设备的分配有可直至用完释放。应当注意,独占设备的分配有可能引起进程死能引起进程死7.1.1 外部设备类型和特征(2)(2)共享设备共享设备。它是指在一段时间内允许多个进程。它是指在一段时间内允许多个进程同时访问的设备。当然,时刻而言,该类设备仍同时访问的设备。当然,时刻而言,该类设备仍然
5、只允许一个进程访问。显然,共享设备必须是然只允许一个进程访问。显然,共享设备必须是可寻址的相可随访问的设备。可寻址的相可随访问的设备。 典型的共享设备是磁盘典型的共享设备是磁盘。 (3)(3)虚拟设备虚拟设备。它是指通过虚拟技术将一台独占设。它是指通过虚拟技术将一台独占设备变换为若干台逻辑设备,供若干个用户备变换为若干台逻辑设备,供若干个用户( (进程进程) )同时使用,通常把这种经过虚拟技术处理后的设同时使用,通常把这种经过虚拟技术处理后的设备,称为虚拟设备。备,称为虚拟设备。 7.1.2 I/O控制技术返回1. 1. 程序控制程序控制I/O(programmed I/O)I/O(progr
6、ammed I/O)I/OI/O操作由程序发起,并等待操作完成。数据的每次读写操作由程序发起,并等待操作完成。数据的每次读写通过通过CPUCPU。缺点缺点:在外设进行数据处理时,:在外设进行数据处理时,CPUCPU只能等待。只能等待。2. 2. 中断驱动方式中断驱动方式(interrupt-driven I/O)(interrupt-driven I/O)I/OI/O操作由程序发起,在操作完成时(如数据可读或已经写操作由程序发起,在操作完成时(如数据可读或已经写入)由外设向入)由外设向CPUCPU发出中断,通知该程序。数据的每次读写发出中断,通知该程序。数据的每次读写通过通过CPUCPU。优点
7、优点:在外设进行数据处理时,:在外设进行数据处理时,CPUCPU不必等待,可以继续执不必等待,可以继续执行该程序或其他程序。行该程序或其他程序。缺点缺点:CPUCPU每次处理的数据量少(通常不超过几个字节),每次处理的数据量少(通常不超过几个字节),只适于数据传输率较低的设备。只适于数据传输率较低的设备。3. 3. 直接存储访问方式直接存储访问方式(DMA)(DMA)由程序由程序设置设置DMADMA控制器中的若干寄存器值(如内存始址,控制器中的若干寄存器值(如内存始址,传送字节数),然后传送字节数),然后发起发起I/OI/O操作,而后者操作,而后者完成完成内存与外内存与外设的成批数据交换,在操
8、作完成时由设的成批数据交换,在操作完成时由DMADMA控制器向控制器向CPUCPU发出发出中断中断。优点优点:CPUCPU只需干预只需干预I/OI/O操作的开始和结束,而其中的一批操作的开始和结束,而其中的一批数据读写无需数据读写无需CPUCPU控制,适于高速设备。控制,适于高速设备。System BusI/OControllerI/OControllerProcessorDMAControllerMemory.4. 4. 通道控制方式通道控制方式( Channel I/O)( Channel I/O)通道又称为通道又称为I/OI/O处理机处理机,它能完威主存储器和外设,它能完威主存储器和外设
9、之间的信息传输,并与中央处理机并行操作。采用之间的信息传输,并与中央处理机并行操作。采用通道技术解决了通道技术解决了I/0I/0操作的独立性和各部件工作的并操作的独立性和各部件工作的并行性。通道把中央处理机从繁琐的输入输出操作中行性。通道把中央处理机从繁琐的输入输出操作中解放出来。解放出来。 采用通道技术后,不仅能实现采用通道技术后,不仅能实现CPUCPU和通道的并行和通道的并行操作,而且通道与通道之间也能实现并行操作,各操作,而且通道与通道之间也能实现并行操作,各通道上的外围设备也能实现并行操作,从从而可达通道上的外围设备也能实现并行操作,从从而可达到提高势个系统的效率之根本目的:到提高势个
10、系统的效率之根本目的:7.1.2 I/O控制技术通道控制器通道控制器(Channel Processor)(Channel Processor)有自己的专用存有自己的专用存储器,可以执行由储器,可以执行由通道指令通道指令组成的通道程序,因组成的通道程序,因此可以进行此可以进行较为复杂的较为复杂的I/OI/O控制控制,如网卡上信道,如网卡上信道访问控制。通道程序通常由操作系统所构造,放访问控制。通道程序通常由操作系统所构造,放在内存里。在内存里。优点:优点:执行一个通道程序可以完成几批执行一个通道程序可以完成几批I/OI/O操作。操作。7.1.2 I/O控制技术具有通道结构具有通道结构的计算机系
11、的计算机系统,主存、统,主存、通道、控制通道、控制器和设备之器和设备之间采用四级间采用四级连接,实施连接,实施三级控制。三级控制。图为单通路图为单通路I/OI/O系统结系统结构构主存通道通道控制器控制器控制器控制器设备A设备B设备C设备D设备E设备F设备G设备H7.1.2 I/O控制技术字节多路通道字节多路通道:它是为连接大量慢速外围设备,如纸:它是为连接大量慢速外围设备,如纸带输入机、纸带输出机、卡片输入机、卡片输入机带输入机、纸带输出机、卡片输入机、卡片输入机、行式打印机等设置的。、行式打印机等设置的。选择通道选择通道(selector channel)(selector channel)
12、:可以连接多个外设,:可以连接多个外设,而一次只能访问其中一个外设。而一次只能访问其中一个外设。多路通道多路通道(multiplexor channel)(multiplexor channel):可以并发访问多个:可以并发访问多个外设。分为字节多路外设。分为字节多路(byte)(byte)和数组多路和数组多路(block)(block)通通道。道。System BusProcessorI/O BusI/OControllerI/OControllerI/OControllerI/OControllerMemoryChannelProcessor I/O控制的通道控制方式控制的通道控制方式 7
13、.1.2 I/O控制技术控制技术7.1.2 I/O控制技术主存通道A通道B控制器C控制器D设备E设备F设备G设备H多通路的配置方案多通路的配置方案7.1.2 I/O7.1.2 I/O控制技术控制技术如上图可见,设备如上图可见,设备E,F,G,HE,F,G,H均有四条通路到达主存均有四条通路到达主存。例如设备。例如设备E E到达主存的四条通路是:到达主存的四条通路是:通道通道AA控制器控制器CC设备设备E E通道通道AA控制器控制器DD设备设备E E通道通道BB控制器控制器CC设备设备E E通道通道BB控制器控制器DD设备设备E E7.1.3 外设管理的目的和功能提高效率提高效率:提高:提高I/
14、OI/O访问效率,匹配访问效率,匹配CPUCPU和多种和多种不同处理速度的外设不同处理速度的外设方便使用方便使用:方便用户使用,对不同类型的设备:方便用户使用,对不同类型的设备统一使用方法,协调对设备的并发使用统一使用方法,协调对设备的并发使用方便控制方便控制:方便:方便OSOS内部对设备的控制:增加和内部对设备的控制:增加和删除设备,适应新的设备类型删除设备,适应新的设备类型返回1. 1. 外设管理目的外设管理目的2. 2. 外设管理功能外设管理功能(1 1)动态地掌握并记录设备的状态。在设置有通道的系统中)动态地掌握并记录设备的状态。在设置有通道的系统中,还应掌握通道、控制器的使用状态。,
15、还应掌握通道、控制器的使用状态。(2 2)设备分配和释放:使用设备前,需要分配设备和相应的)设备分配和释放:使用设备前,需要分配设备和相应的通道、控制器。通道、控制器。(3 3)完成实际的)完成实际的I/OI/O操作。操作。 首先,设备管理程序根据用户提出的首先,设备管理程序根据用户提出的I/OI/O请求构成相应的请求构成相应的通道程序通道程序( (或称或称I/OI/O程序程序) ),提供给通道执行;,提供给通道执行; 其次,启动指定的设备进行其次,启动指定的设备进行I/OI/O操作;最后,对通道发来操作;最后,对通道发来的中断请求作出及时的响应和处理。的中断请求作出及时的响应和处理。7.1.
16、3 外设管理的目的和功能外设管理的目的和功能7.1.3 外设管理的目的和功能4.4.提供设备使用的用户接口提供设备使用的用户接口:命令接口和编程接口:命令接口和编程接口5.5.设备分配和释放设备分配和释放:使用设备前,需要分配设备和:使用设备前,需要分配设备和相应的通道、控制器。相应的通道、控制器。6.6.设备的访问和控制设备的访问和控制:包括并发访问和差错处理。:包括并发访问和差错处理。7.I/O7.I/O缓冲和调度缓冲和调度:目标是提高:目标是提高I/OI/O访问效率访问效率7.1.3 外设管理的目的和功能设备管理软件设备管理软件,为实现上述基本功能通常由以下程序,为实现上述基本功能通常由
17、以下程序组成:组成: I/O I/O交通管制程序;交通管制程序; I/O I/O调度程序;即设备分配程序;调度程序;即设备分配程序; I/O I/O设备处理程序;通常每类设备都有自己的设备处理程序;通常每类设备都有自己的I IO O设备处理程序。设备处理程序。 7.2 I/O7.2 I/O缓冲技术缓冲技术 缓冲技术可提高外设利用率,尽可能使外设处于忙状缓冲技术可提高外设利用率,尽可能使外设处于忙状态;但有一个限制:进程的态;但有一个限制:进程的I/OI/O请求不能超过外设的处理请求不能超过外设的处理能力。能力。 引入缓冲的主要原因有以下几个方面:引入缓冲的主要原因有以下几个方面:(1)(1)缓
18、和缓和CPUCPU与与I/OI/O设备间速度不匹配的矛盾设备间速度不匹配的矛盾(2)(2)减少对减少对CPUCPU的中断频率,放宽对中断响应时间的限制的中断频率,放宽对中断响应时间的限制(3)(3)提高提高CPUCPU和和I/OI/O设备之间的并行性设备之间的并行性1.1.单缓冲单缓冲(single buffer)(single buffer):一个缓冲区,:一个缓冲区,CPUCPU和外设和外设轮流使用,一方处理完之后接着等待对方处理。轮流使用,一方处理完之后接着等待对方处理。环形缓冲环形缓冲(circular buffer)(circular buffer):多个缓冲区,:多个缓冲区,CPU
19、CPU和外和外设的处理速度可以相差较大。设的处理速度可以相差较大。7.2 I/O缓冲技术缓冲技术缓冲区用户区输入T传送MI/O设备操作系统用户进程 计算C图710 单缓冲工作示意图7.2 I/O缓冲技术缓冲技术2.2.双缓冲双缓冲(double buffer)(double buffer):两个缓冲区,:两个缓冲区,CPUCPU和外设都可和外设都可以连续处理而无需等待对方。以连续处理而无需等待对方。 要求要求CPUCPU和外设的速度相近。和外设的速度相近。缓冲区A用户区缓冲区B输入T传送MI/O设备操作系统用户进程计算C图7.11 双缓冲工作过程示意图7.2 I/O缓冲技术3 3环形缓冲的组成
20、环形缓冲的组成(1)(1)多个缓冲区多个缓冲区 在循环缓冲中含有多个缓冲区,每个缓冲区的大在循环缓冲中含有多个缓冲区,每个缓冲区的大小相同。缓冲区可分成三种类型:小相同。缓冲区可分成三种类型: 空缓冲区空缓冲区R R。用于存放输入数据;。用于存放输入数据; 已装满数据的缓冲区已装满数据的缓冲区G G。其中的数据提供给计。其中的数据提供给计算进程使用算进程使用; ; 现行工作缓冲区现行工作缓冲区C C。这是计算进程正在使用的缓。这是计算进程正在使用的缓冲区。冲区。循环缓冲的组成如下图所示。循环缓冲的组成如下图所示。7.2 I/O缓冲技术RRGGGG213456NextiNextgRRGGGG21
21、3456NextiCurrentNextg循环缓冲循环缓冲 空缓冲区空缓冲区R R;已装满数据的缓冲区;已装满数据的缓冲区G G;现行工作缓冲区;现行工作缓冲区C C。7.2 I/O缓冲技术(2) (2) 多个指针多个指针对用于输入的多缓冲,应设置这样三个指针:对用于输入的多缓冲,应设置这样三个指针:NextgNextg:指示计算进程下一个可用的缓冲区:指示计算进程下一个可用的缓冲区G G;NextiNexti:指示输入进程下次可用的空缓冲区:指示输入进程下次可用的空缓冲区R R;CurrentCurrent:指示计算进程正在使用的缓冲区单元。:指示计算进程正在使用的缓冲区单元。开始时,它指向
22、第一个单元,随计算进程的使用开始时,它指向第一个单元,随计算进程的使用,它将逐次地指向第,它将逐次地指向第2 2个单元,第个单元,第3 3、4 4等单元,等单元,直至缓冲区的最后一个含数据的单元。直至缓冲区的最后一个含数据的单元。7.2 I/O缓冲技术2 2缓冲区的使用缓冲区的使用计算进程和输入进程可利用下述两个过程使用循环缓冲区:计算进程和输入进程可利用下述两个过程使用循环缓冲区: (1) Getbuf(1) Getbuf过程过程 每当计算进程要使用缓冲区中的数据时,可调用每当计算进程要使用缓冲区中的数据时,可调用GetbufGetbuf过程。该过程将指针过程。该过程将指针NextgNext
23、g所所指的缓冲区提供给进指的缓冲区提供给进程使用,相应地,须把它改为现行工作缓冲区,用程使用,相应地,须把它改为现行工作缓冲区,用CurrentCurrent指针指简该缓冲区的第指针指简该缓冲区的第1 1个单元,同时将个单元,同时将NextgNextg移移向下一个向下一个G G缓冲区。缓冲区。 类似地,每当输入进程要使用空缓冲来装入数据时,也可类似地,每当输入进程要使用空缓冲来装入数据时,也可调用调用GetbufGetbuf过程。由该过程将指针过程。由该过程将指针NextiNexti所指缓冲区提供所指缓冲区提供给输入进程使用,同时将给输入进程使用,同时将NextiNexti指针移向下一个指针移
24、向下一个R R缓冲区缓冲区。7.2 I/O缓冲技术 (2) Releasebuf(2) Releasebuf过程过程 当计算进程把当计算进程把G G缓冲区中的数据提取完时,缓冲区中的数据提取完时,便可调用便可调用ReleasebufReleasebuf过程,将该缓冲区释放。此过程,将该缓冲区释放。此时,把该缓冲区由当前时,把该缓冲区由当前( (现行现行) )工作缓冲区工作缓冲区C C改为改为空缓冲区空缓冲区R R。类似地,当输入进程将缓冲区装满。类似地,当输入进程将缓冲区装满时,也调用时,也调用ReleasebufReleasebuf过程,将该缓冲区释放,过程,将该缓冲区释放,并改为并改为G
25、G缓冲区。缓冲区。7.2 I/O缓冲技术3 3进程的同步进程的同步 使用输入缓冲可使输入进程和计算进程并行执使用输入缓冲可使输入进程和计算进程并行执行。相应地,指针行。相应地,指针NextiNexti和指针和指针NextgNextg将不断地沿将不断地沿顺时针方向移动,这样就可能出现两种情况:顺时针方向移动,这样就可能出现两种情况: (1) Nexti(1) Nexti指针追赶上指针追赶上NextgNextg指针指针 输入进程输入数据的速度大于计算进程处理输入进程输入数据的速度大于计算进程处理数据的速度,已把全部缓冲区数据的速度,已把全部缓冲区 ( (可用空缓冲可用空缓冲) )装装满。此时,输入
展开阅读全文