操作系统讲义-第五章设备管理.ppt
《操作系统讲义-第五章设备管理.ppt》由会员分享,可在线阅读,更多相关《操作系统讲义-第五章设备管理.ppt(47页珍藏版)》请在三一办公上搜索。
1、2023/11/3,操作系统讲义,1,第五章 设备管理,2023/11/3,第五章 设备管理,2,主要内容,5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 I/O软件 5.5 设备分配 5.6 磁盘存储器的管理,2023/11/3,第五章 设备管理,3,设备管理概述,在计算机系统中,除了需要一个或多个处理机,一个或多个存储器模块外,还需要用于实现信息输入、输出和存储的设备。设备管理程序便是用于对这类设备进行控制和管理的一组程序。由于I/O设备不仅种类繁多,而且它们的特性和操作方式,往往相差甚大,所以使得设备管理成为操作系统中最繁杂且与硬件紧密相关的部分。,主要对象:I/O
2、设备,以及设备控制器和通道。,2023/11/3,第五章 设备管理,4,设备管理概述,缓冲管理设备分配设备处理虚拟设备实现设备独立性,设备管理的主要功能包括:,设备管理的主要任务:完成用户提出的I/O请求,提高I/O 速率以及提高I/O设备的利用率。,2023/11/3,第五章 设备管理,5,5.1 I/O系统,I/O系统是用于实现数据输入、输出及数据存储的系统。,1.I/O设备,按设备的使用特性可以分成:存储设备,如外存;输入/输出设备,键盘,鼠标,扫描仪,打印机等等。,按传输速率可以分成:低速设备:每秒几个字节到数百个字节,如键盘,鼠标;中速设备:每秒数千个字节到数十万个字节,如打印机;高
3、速设备,每秒数十万字节到千兆字节,如磁带机,磁盘机。,2023/11/3,第五章 设备管理,6,5.1 I/O系统,1.I/O设备,按信息交换的单位可以分成:块设备,如磁盘;字符设备,如打印机。,按设备的共享属性可以分成:独占设备:一段时间只允许一个用户访问,如打印机;共享设备:一段时间内允许多个进程同时访问,如磁盘;虚拟设备:将一台独占设备变成若干台逻辑设备,如虚拟内存。,2023/11/3,第五章 设备管理,7,5.1 I/O系统,1.I/O设备,设备与控制器的接口:设备不直接与CPU进行通信,而是与设备控制器通信,有三种类型的信号:数据信号线:用于在设备和设备控制器之间传送数据信号;控制
4、信号线:作为由设备控制器向I/O设备发送控制信号时的通路;状态信号线:用于传送指示设备当前状态的信号。,I/O设备,缓冲,转换器,控制逻辑,信号数据,至设备控制器,数据信号线,状态信号线,控制信号线,2023/11/3,第五章 设备管理,8,5.1 I/O系统,2.设备控制器,设备控制器的基本功能接收和识别命令:CPU可以向控制器发送不同的命令,设备控制器负责接收并识别这些命令;数据交换:实现CPU与控制器间,控制器与设备间的数据交换;标识和报告设备状态:控制器应记下设备的状态供CPU了解;地址识别:系统中的每个设备也有一个地址,设备控制器必须能够识别它所控制的每个设备的地址;数据缓冲:I/O
5、设备的速率较低而CPU和内存的速率很高,所以控制器中必须设置缓冲器,输出时,缓冲器暂存由主机高速传来的数据,然后以I/O设备具有的速率将缓冲器中的数据传送给I/O设备,输入时相反;差错控制:对由I/O设备传送来的数据进行差错检测,若发现传送中出现了错误,通常还要向CPU报告,CPU将本次传送来的数据作废,重新进行传送。,主要职责是控制I/O设备,以实现I/O设备和计算机之间的数据交换。,2023/11/3,第五章 设备管理,9,5.1 I/O系统,2.设备控制器,设备控制器的组成设备控制器与处理机的接口:实现CPU与设备控制器之间的通信;设备控制器与设备的接口:控制器中有一个或者多个设备接口,
6、每个接口连接一个设备;I/O逻辑:用于实现对设备的控制。,CPU与控制器接口,数据寄存器,控制/状态寄存器,数据状态控制,数据线,地址线,控制线,I/O逻辑,控制器与设备接口1,控制器与设备接口i,数据状态控制,2023/11/3,第五章 设备管理,10,5.1 I/O系统,3.I/O通道,I/O通道设备的引入 设备控制器能大大减少CPU对I/O的干预,但是当主机配置的外设很多时,CPU的负担仍然很重,所以在CPU和设备控制器之间设置通道,其目的是为了建立独立的I/O操作,不仅使数据的传送能独立于CPU,而且能对I/O操作的组织、管理和结束处理尽量独立,使得CPU有更多的时间去进行数据处理。,
7、2023/11/3,第五章 设备管理,11,5.1 I/O系统,3.I/O通道,通道的类型字节多路通道:按字节交叉方式工作的通道,其数量在几十到数百个,每个子通道连接一台I/O设备,并控制该设备的I/O操作;数组选择通道:字节多路通道不适于连接高速设备,这推动了按数组方式进行数据传送的数组选择通道,这种通道可以连接多台高速设备,但是它只含有一个分配型紫铜刀,一段时间只能控制一台设备,所以通道利用率仍然很低;数组多路通道:将数组选择通道传输速率高和字节多路通道能使各子通道分时并行操作的有点结合形成,既具有很高的数据传输速率,又能获得令人满意的通道利用率。,2023/11/3,第五章 设备管理,1
8、2,5.1 I/O系统,3.I/O通道,瓶颈问题,存储器,通道1,通道2,控制器1,控制器2,控制器3,控制器4,设备1,设备2,设备3,设备4,设备5,设备6,设备7,存储器,通道1,通道2,控制器1,控制器4,I/O设备,I/O设备,I/O设备,I/O设备,2023/11/3,第五章 设备管理,13,5.1 I/O系统,4.总线系统,ISA和EISA总线ISA总线:1984年推出的80286型微机的总线结构,带宽8位,最高传输速率2Mb/s。EISA总线:20世纪80年代末推出,带宽32位,传输速率32Mb/s,可连接12台外部设备。,局部总线(Local Bus)VESA总线;低价位占领
9、市场,带宽32位,最高传输速率132Mb/s,广泛应用于486微机;缺点:只能连接2-4台设备,无缓冲;PCI总线:支持Pentium系列芯片,1992和1995分别提出PCI总线的V1.0和V2.1规范,后者支持64位系统,有数据缓冲,能连接10种外设,最大传输速率132Mb/s。,CPU,磁盘控制器,存储器,打印机控制器,其它控制器,磁盘控制器,打印机,系统总线,2023/11/3,第五章 设备管理,14,5.2 I/O控制方式,用于早期的计算机系统,无中断机构,处理机对设备的控制采取忙-等待方式,由于CPU的高速性和I/O设备的低速性,致使CPU的绝大部分时间都处于等待I/O设备完成数据
10、I/O的循环测试中,造成对CPU的极大浪费,造成这种浪费的原因就是CPU无中断机构。,1.程序I/O方式,在现代计算机系统中,毫无例外地引入了中断机构,当某进程要启动某个I/O设备时,便由CPU向相应的设备控制器发出一条I/O命令,然后立即返回执行原来的任务,此时设备控制器按照该命令的要求去控制指定的I/O设备,CPU和I/O设备并行地工作。在I/O设备输入每个数据的过程中,由于无需CPU干预,因而可使CPU与I/O设备并行工作,仅当输完一个数据时,才需要CPU花费极短的时间去做些中断处理,所以这种方式可以使CPU和I/O设备同时处于忙碌状态,从而提高了整个系统的资源利用率和吞吐量。,2.中断
11、驱动I/O方式,2023/11/3,第五章 设备管理,15,5.2 I/O控制方式,程序I/O方式,中断驱动I/O方式,向I/O控制器发读指令,读I/O控制器的状态,从I/O控制器中读入字,向存储器中写字,检查状态?,传送完成?,下一条指令,完成,CPU-内存,I/O-CPU,出错,I/O-CPU,CPU-I/O,就绪,未就绪,未完,向I/O控制器发读指令,读I/O控制器的状态,从I/O控制器中读入字,向存储器中写字,检查状态?,传送完成?,下一条指令,完成,CPU-内存,I/O-CPU,出错,I/O-CPU,CPU-I/O,就绪,未完,CPU做其它事,中断,2023/11/3,第五章 设备管
12、理,16,5.2 I/O控制方式,DMA方式(Direct Memory Access)的引入 针对中断驱动I/O方式以字(节)为单位进行I/O的,每当完成一个字(节)的I/O时,控制器就要向CPU请求一次中断,这种方式应用于块设备是极其低效的。,3.直接存储器访问(DMA)I/O控制方式,DMA方式的特点数据传输的基本单位是数据块;所传送的数据是从设备直接送入内存的,或者相反;仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送是在控制器的控制下完成的。,DMA方式的优点 较之中断驱动方式,成百倍地减少了CPU对I/O的干预,进一步提高了CPU和I/O设备的并行操作度。,向
13、I/O控制器发布读块命令,下一条指令,向I/O控制器发布读块命令,DMA-CPU,CPU-DMA,CPU做其它事,中断,2023/11/3,第五章 设备管理,17,5.2 I/O控制方式,DMA控制器的组成主机与DMA控制器的接口DMA控制器与块设备的接口I/O控制逻辑,3.直接存储器访问DMA方式,DMA控制器设置如下四类寄存器:命令/状态寄存器CR 内存地址寄存器MAR 数据寄存器DC 数据计数器CR,系统总线,CPU,内存,主机-控制器接口,命令,DR,MAR,DC,CR,I/O控制逻辑,控制器-块设备接口,count,DMA控制器,2023/11/3,第五章 设备管理,18,5.2 I
14、/O控制方式,DMA的工作过程 当CPU从磁盘读入一个数据块时,便向磁盘控制器发送读指令,该命令被送到其中的命令寄存器,同时,还须发送本次要将数据读入的内存起始地址,将地址读入内存地址寄存器MAR中,本次要读数据的字节数读入数据计数器DC,降低至送到DMA控制器的I/O控制逻辑上,启动DMA控制器进行数据传送,CPU可以去处理其他任务。,3.直接存储器访问DMA方式,设置MAR和DC初值,启动DMA传送命令,挪用存储器周期传送数据字,存储器地址增1字计数寄存器减1,DC=0?,请求中断,否,是,在继续执行用户程序的同时,准备下一次传送,2023/11/3,第五章 设备管理,19,5.2 I/O
15、控制方式,I/O通道控制方式的引入 DMA方式相比中断方式显著减少了CPU的干预,并且以数据块为传送单位,但CPU每发出一条I/O指令,也只能读/写一个连续的数据块,如果需要一次去读多个数据块,并且分别传送到不同的内存区,必须由CPU分别发出多条I/O指令,并且进行多次中断处理才能完成。为此,引入通道方式,可以进一步减少CPU的干预,可以实现CPU、通道和I/O设备的并行操作,从而更有效地提高整个系统的资源利用率。,4.I/O通道控制方式,2023/11/3,第五章 设备管理,20,5.2 I/O控制方式,4.I/O通道控制方式,通道程序 通道通过执行通道程序,并与设备控制器共同实现对I/O设
16、备的控制。通道程序是由一系列通道指令(通道命令)所构成,通道指令包含以下信息:操作码:规定了指令所执行的操作,如读、写、控制等等;内存地址:标明字符送入内存(读操作)和从内存取出(写操作)时的内存首址;计数:表示本条指令所要读(或写)数据的字节数;通道程序结束位P:表示通道程序是否结束,P=1表示本条指令是通道程序的最后一条指令;记录结束标志R:R=0表示本通道指令与下一条指令所处理的数据是否属于一条记录。,2023/11/3,第五章 设备管理,21,5.3 缓冲管理,1.缓冲的引入,缓和CPU与I/O设备间速度不匹配的矛盾 凡是数据到达速率与其离去速率不同的地方,都可以设置缓冲区。减少对CP
17、U的中断频率,放宽对CPU中断响应时间的限制提高CPU和I/O设备之间的并行性 缓冲的引入可显著地提高CPU和I/O设备间的并行操作读,提高系统的吞吐量和设备的利用率。,9.6kb/s,1位缓冲,(a),(a),9.6kb/s,送内存,(b),8位缓冲寄存器,9.6kb/s,送内存,(c),8位缓冲寄存器,2023/11/3,第五章 设备管理,22,5.3 缓冲管理,2.单缓冲和双缓冲,单缓冲 凡是数据到达速率与其离去速率不同的地方,都可以设置缓冲区。,双缓冲 设备输入时,先将数据送入第一个缓冲区,装满后再转向第二个缓冲区,此时操作系统可以从第一个缓冲区移出数据,送入用户进程,接着由CPU对数
18、据进行计算。,工作区,用户进程,缓冲区1,操作系统,缓冲区2,I/O设备,工作区,用户进程,缓冲区,I/O设备,输入(T),传送(M),处理(C),2023/11/3,第五章 设备管理,23,5.3 缓冲管理,3.循环缓冲,循环缓冲的组成(1)多个缓冲区:用于装输入数据的空缓冲区R,已装满数据的缓冲区G以及计算进程正在使用的现行工作缓冲区C。(2)多个指针:用于指示计算进程下一个可用缓冲区的指针Nextg,指示输入进程下次可用的空缓冲区R的指针Nexti,以及用于指示计算进程正在使用的缓冲区C的指针Current。,循环缓冲的使用(1)Getbuf过程:将指针Nextg所指示的缓冲区给进程,把
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 讲义 第五 设备管理

链接地址:https://www.31ppt.com/p-6472757.html