操作系统-设备管理.ppt
《操作系统-设备管理.ppt》由会员分享,可在线阅读,更多相关《操作系统-设备管理.ppt(90页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第五章设备管理第五章 设备管理5.2 I/O控制方式5.3 缓冲管理5.4 I/O软件5.5 设备分配5.6 磁盘存储器管理5.1 I/O系统5.1 I/O系统n引述引述n在计算机系统中,除了处理机和存储器外,还有用于在计算机系统中,除了处理机和存储器外,还有用于实现信息输入、输出和存储的设备,以及相应的设备实现信息输入、输出和存储的设备,以及相应的设备控制器,控制器,I/O通道或通道或I/O处理机等。处理机等。n设备管理的对象设备管理的对象n主要是主要是I/O设备,另外还有设备控制器和设备,另外还有设备控制器和I/O通道。通道。n设备管理的基本任务设备管理的基本任务n完成用户提出的完成用户提
2、出的I/O请求,提高请求,提高I/O速率以及提高速率以及提高I/O设备的利用设备的利用率。率。nI/O设备种类多,且特性和操作方式相差很大,使得设设备种类多,且特性和操作方式相差很大,使得设备管理成为备管理成为OS中最繁杂且与硬件最紧密相关的部分。中最繁杂且与硬件最紧密相关的部分。nI/O性能经常成为系统性能的瓶颈。性能经常成为系统性能的瓶颈。5.1 I/O系统n5.1.1 I/O设备设备n1、I/O设备的类型设备的类型n(1)按使用特性分类)按使用特性分类n存储设备:如磁盘。存储设备:如磁盘。n输入输入/输出设备:输出设备:输入:如键盘、鼠标、扫描仪、摄像头、传感器输出:如打印机显示器、音响
3、输出。n(2)按传输速率分类)按传输速率分类n低速设备:速度每秒几字节至数百个字节低速设备:速度每秒几字节至数百个字节如键盘、鼠标器、语音的输入输出等设备。n中速设备:每秒数千个字节至数十万个字节中速设备:每秒数千个字节至数十万个字节如行式打印机、激光打印机等。n高速设备:每秒数百个千字节至千兆字节高速设备:每秒数百个千字节至千兆字节如磁带机、磁盘机、光盘机等。5.1 I/O系统n5.1.1 I/O设备设备n1、I/O设备的类型设备的类型n(3)按信息交换的单位分类)按信息交换的单位分类n块设备:以数据块为单位存取信息,如磁盘。块设备:以数据块为单位存取信息,如磁盘。传输速率高几兆位每秒,可寻
4、址n字符设备:以字符为单位存取信息,如键盘、打印机等。字符设备:以字符为单位存取信息,如键盘、打印机等。传输速率低,几百至几千字节,不可寻址,常采用中断驱动方式进行输入输出。n(4)按共享属性分类)按共享属性分类n独占设备:一段时间内存只允许一个进程访问的设备。独占设备:一段时间内存只允许一个进程访问的设备。n共享设备:一段时间内允许多个进程同时访问的设备。共享设备:一段时间内允许多个进程同时访问的设备。n虚拟设备:通过虚拟技术将一台独占设备变幻成多台逻辑设备,供多个进程同时使虚拟设备:通过虚拟技术将一台独占设备变幻成多台逻辑设备,供多个进程同时使用。用。5.1 I/O系统n5.1.1 I/O
5、设备设备n2、I/O设备与控制器之间的接口设备与控制器之间的接口n通常,设备并不是直接与通常,设备并不是直接与CPU进行通信,而是与设备控制器通信。因此,在进行通信,而是与设备控制器通信。因此,在设备与设备控制器之间应有一接口。设备与设备控制器之间应有一接口。n数据信号线:传输数据信号数据信号线:传输数据信号n控制信号线:发送控制信号,规定设备执行的操作控制信号线:发送控制信号,规定设备执行的操作n状态信号线:指示设备当前状态信号状态信号线:指示设备当前状态信号5.1 I/O系统n5.1.2 设备控制器设备控制器n1、基本概念、基本概念n设备控制器是设备控制器是CPU与与I/O设备间的接口设备
6、间的接口n设备控制器接收从设备控制器接收从CPU发来的命令,并控制发来的命令,并控制I/O设备工作,使处理机从繁杂的设备工作,使处理机从繁杂的设备控制事务中解脱出来。设备控制事务中解脱出来。n设备控制器常做成印刷电路卡形式,称为接口卡,如显卡、声卡等。设备控制器常做成印刷电路卡形式,称为接口卡,如显卡、声卡等。n设备控制器可控制一个或多个同类设备控制器可控制一个或多个同类I/O设备。设备。5.1 I/O系统n5.1.2 设备控制器设备控制器n2、基本功能、基本功能n(1)接收和识别命令)接收和识别命令 n(2)数据交换)数据交换 n(3)标识和报告设备的状态)标识和报告设备的状态 n(4)地址
7、识别)地址识别 n(5)数据缓冲)数据缓冲 n(6)差错控制)差错控制5.1 I/O系统n5.1.2 设备控制器设备控制器n3、设备控制器的组成、设备控制器的组成n设备控制器处于设备控制器处于CPU与设备之间,它既要与与设备之间,它既要与CPU通信,又要与设备通信,还通信,又要与设备通信,还应具有应具有 按照按照CPU所发来的命令去控制设备工作的功能。所发来的命令去控制设备工作的功能。n由以下三部分组成:由以下三部分组成:n设备控制器与设备控制器与CPU的接口的接口 n设备控制器与设备的接口设备控制器与设备的接口 nI/O逻辑逻辑 设备控制器设备控制器CPUCPU设备设备1 1设备设备i i5
8、.1 I/O系统n5.1.2 设备控制器设备控制器n3、设备控制器的组成、设备控制器的组成设备控制器设备控制器设设备备1 1设设备备i iCPU5.1 I/O系统n5.1.3 I/O通道通道n1、I/O通道的引入通道的引入n虽然在虽然在CPU与与I/O设备之间增加了设备控制器,但当外设很多时,设备之间增加了设备控制器,但当外设很多时,CPU的负担的负担仍很重。为此,在仍很重。为此,在CPU和设备控制器之间又增设了和设备控制器之间又增设了I/O通道。其目的是使一些通道。其目的是使一些原来由原来由CPU处理的处理的I/O任务转由通道来承担,从而进一步把任务转由通道来承担,从而进一步把CPU从繁杂的
9、从繁杂的I/O任任务中解脱出来。务中解脱出来。nI/O通道是一种特殊的处理机,专门负责数据的输入输出操作。具有执行通道是一种特殊的处理机,专门负责数据的输入输出操作。具有执行I/O指指令的能力,令的能力,I/O指令用来控制指令用来控制I/O操作。操作。5.1 I/O系统n5.1.3 I/O通道通道n2、I/O通道的类型通道的类型n字节多路通道字节多路通道n主通道以字节为单位传送数据,多个子通道与每主通道以字节为单位传送数据,多个子通道与每个设备连接,子通道按时间片轮转方式共享主通个设备连接,子通道按时间片轮转方式共享主通道。抢占式。道。抢占式。n数组选择通道数组选择通道n主通道按数组方式传送数
10、据,只有一个子通道连主通道按数组方式传送数据,只有一个子通道连接设备,子通道非抢占式使用通道传输数据。接设备,子通道非抢占式使用通道传输数据。n数组多路通道数组多路通道n主通道按数组方式传送数据,多个子通道与设备主通道按数组方式传送数据,多个子通道与设备连接,子通道按时间片轮转方式共享主通道。连接,子通道按时间片轮转方式共享主通道。5.1 I/O系统n5.1.3 I/O通道通道n2、I/O通道的类型通道的类型n字节多路通道的工作原理字节多路通道的工作原理5.1 I/O系统n5.1.3 I/O通道通道n3、“瓶颈瓶颈”问题问题n由于通道价格昂贵,致使机器中所设置的通道数量势必较少,这又往往使它由
11、于通道价格昂贵,致使机器中所设置的通道数量势必较少,这又往往使它成为成为I/O 的瓶颈,进而造成整个系统吞吐量的下降。的瓶颈,进而造成整个系统吞吐量的下降。5.1 I/O系统n5.1.3 I/O通道通道n3、“瓶颈瓶颈”问题问题n解决方案:增加设备到主机间的通路而不增加通道。解决方案:增加设备到主机间的通路而不增加通道。5.1 I/O系统n5.1.4 总线系统总线系统n计算机系统中的各部件,如计算机系统中的各部件,如cpu、存储器及各种、存储器及各种I/O设备之间的联系,都设备之间的联系,都是通过总线实现的。是通过总线实现的。5.1 I/O系统n5.1.4 总线系统总线系统n与主板连接的接口主
12、要与主板连接的接口主要ISA、EISA、VESA、PCI、AGP等几种。等几种。nISA和和EISA总线带宽窄、速度慢,总线带宽窄、速度慢,VESA总线扩展能力总线扩展能力差,这三种总线已经被市场淘汰。差,这三种总线已经被市场淘汰。n现在常见的是现在常见的是PCI和和AGP接口。接口。nPCI总线接口,以总线接口,以1/2或或1/3的系统总线频率工作,如果的系统总线频率工作,如果要在处理图像数据的同时处理其它数据,那么流经要在处理图像数据的同时处理其它数据,那么流经PCI总线的全部数据就必须分别地进行处理,这样势必存总线的全部数据就必须分别地进行处理,这样势必存在数据滞留现象,在数据量大时,在
13、数据滞留现象,在数据量大时,PCI总线就显得很紧总线就显得很紧张。张。nAGP接口可以解决这个问题,它是一种专用的显示接接口可以解决这个问题,它是一种专用的显示接口,具有独占总线的特点,只有图像数据才能通过口,具有独占总线的特点,只有图像数据才能通过AGP端口,数据传输率高。端口,数据传输率高。5.1 I/O系统n5.1.4 总线系统总线系统5.1 I/O系统n5.1.4 总线系统总线系统5.1 I/O系统n5.1.4 总线系统总线系统第五章 设备管理5.2 I/O控制方式5.3 缓冲管理5.4 I/O软件5.5 设备分配5.6 磁盘存储器管理5.1 I/O系统5.2 I/O控制方式n 随着计
14、算机技术的发展,随着计算机技术的发展,I/O控制方式也在不断地控制方式也在不断地发展。发展。nI/O控制方式的发展经历了以下四个阶段:控制方式的发展经历了以下四个阶段:n5.2.1 程序程序I/O方式方式n5.2.2 中断驱动中断驱动I/O控制方式控制方式n5.2.3 直接存储器访问直接存储器访问(DMA)I/O控制方式控制方式n5.2.4 I/O通道控制方式通道控制方式5.2 I/O控制方式n5.2.1 程序程序I/O方式方式n又称忙又称忙等待方式。等待方式。n在该方式中,由于在该方式中,由于CPU的高速性和的高速性和I/O设备的设备的低速性,致使低速性,致使CPU的的绝大部分时间都处于绝大
15、部分时间都处于等待等待I/O设备完成数据设备完成数据I/O的循环测试中,的循环测试中,造成对造成对CPU的极大浪费。的极大浪费。5.2 I/O控制方式n5.2.2 中断驱动中断驱动I/O控制方式控制方式n在在I/O设备输入每个数据过程中设备输入每个数据过程中,无须,无须CPU干预,可使干预,可使CPU与与I/O设备并行工作。仅当传输完设备并行工作。仅当传输完一个数据时,才需一个数据时,才需CPU花极短花极短时间处理中断。时间处理中断。n这样可使这样可使CPU和和I/O设备都设备都处于忙碌状态,从而提高处于忙碌状态,从而提高了整个系统的资源利用率及了整个系统的资源利用率及吞吐量。吞吐量。n这种方
16、式适用于打印机、这种方式适用于打印机、键盘等以字符为单位传送键盘等以字符为单位传送的字符设备。的字符设备。5.2 I/O控制方式n5.2.3 直接存储器访问直接存储器访问(DMA)I/O控制方式控制方式n虽然中断驱动虽然中断驱动I/O比程序比程序I/O方式方式更有效,但它是以字更有效,但它是以字(节节)为单位为单位进行进行I/O的,若将这种方式用于的,若将这种方式用于块设备的块设备的I/O,显然将会是极其,显然将会是极其低效的。低效的。n为进一步减少为进一步减少CPU对对I/O的干预,的干预,引入了直接存储器访问引入了直接存储器访问(Direct Memory Access)方式。方式。nDM
17、A控制方式适用于磁盘等块设备的控制方式适用于磁盘等块设备的I/O。5.2 I/O控制方式n5.2.3 直接存储器访问直接存储器访问(DMA)I/O控制方式控制方式n特点特点n 数据传输的基本单位是数据块;数据传输的基本单位是数据块;n 所传送的数据是从设备直接送入内存的,或者相反;所传送的数据是从设备直接送入内存的,或者相反;n 仅在传送一个或多个数据块的开始和结束时,才需仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的干预,整块数据的传送是在控制器的控制下完成的。传送是在控制器的控制下完成的。n可见,可见,DMA方式较之中断驱动方式,又是成百倍地减少了方式较之中断驱动方式,
18、又是成百倍地减少了CPU对对I/O的干预,的干预,进一步提高了进一步提高了CPU与与I/O设备的并行操作程度。设备的并行操作程度。5.2 I/O控制方式n5.2.3 直接存储器访问直接存储器访问(DMA)I/O控制方式控制方式nDMA控制器的组成控制器的组成n主机与主机与DMA控制器的接口;控制器的接口;nDMA控制器与块设备的接口;控制器与块设备的接口;nI/O控制逻辑;控制逻辑;5.2 I/O控制方式n5.2.3 直接存储器访问直接存储器访问(DMA)I/O控制方式控制方式nDMA从处理器那里取得控制权,通过系统总线在主存和设备之间传输数从处理器那里取得控制权,通过系统总线在主存和设备之间
19、传输数据据nDMA使用使用“周期挪用技术周期挪用技术”挪用一个总线周期来传输数据挪用一个总线周期来传输数据,使得使得CPU的执的执行变得慢了。行变得慢了。5.2 I/O控制方式n5.2.4 I/O通道控制方式通道控制方式n采用采用DMA方式可一次性读取一个数据块的内容,但当方式可一次性读取一个数据块的内容,但当我们需要一次去读多个数据块且将它们分别传送到不我们需要一次去读多个数据块且将它们分别传送到不同的内存区域时,则需要同的内存区域时,则需要CPU进行多次中断来处理。进行多次中断来处理。nI/O通道方式是通道方式是DMA方式的发展,可一次完成多个数据方式的发展,可一次完成多个数据块的读块的读
20、/写及有关的控制和管理,期间不需要写及有关的控制和管理,期间不需要CPU的干的干预,从而实现预,从而实现CPU、通道、通道、I/O设备三者并行操作,提设备三者并行操作,提高系统资源利用率。高系统资源利用率。n例如,当例如,当CPU要完成一组相关的读要完成一组相关的读(或写或写)操作及有关控操作及有关控制时,只需向制时,只需向I/O通道发送一条通道发送一条I/O指令,以给出其所要指令,以给出其所要执行的通道程序的首址和要访问的执行的通道程序的首址和要访问的I/O设备,通道接到设备,通道接到该指令后,通过执行通道程序便可完成该指令后,通过执行通道程序便可完成CPU指定的指定的I/O任务。任务。第五
21、章 设备管理5.2 I/O控制方式5.3 缓冲管理5.4 I/O软件5.5 设备分配5.6 磁盘存储器管理5.1 I/O系统5.3 缓冲管理n5.3.1 缓冲的引入缓冲的引入n目的目的n(1)缓和缓和CPU与与I/O设备间速度不匹配的矛盾。设备间速度不匹配的矛盾。n(2)减少对减少对CPU的中断频率,的中断频率,放宽对放宽对CPU中断响应时间的限制。中断响应时间的限制。n(3)提高提高CPU和和I/O设备之间的并行性。设备之间的并行性。n缓冲技术缓冲技术n 单缓冲单缓冲n 双缓冲双缓冲n 循环缓冲循环缓冲n 缓冲池缓冲池5.3 缓冲管理n5.3.2 单缓冲和双缓冲单缓冲和双缓冲n1、单缓冲、单
22、缓冲n单缓冲是单缓冲是OS提供的最简单的一种缓冲形式。每当一个用户进程发出一提供的最简单的一种缓冲形式。每当一个用户进程发出一I/O请求请求时,操作系统便在主存中为之分配一缓冲区。时,操作系统便在主存中为之分配一缓冲区。n在块设备输入时,缓冲区用于暂存块设备输入的一块数据;在块设备输入时,缓冲区用于暂存块设备输入的一块数据;n在字符设备输入时,缓冲区用于暂存用户输入的一行数据。在字符设备输入时,缓冲区用于暂存用户输入的一行数据。5.3 缓冲管理n5.3.2 单缓冲和双缓冲单缓冲和双缓冲n1、单缓冲、单缓冲n系统对每一块数据的处理时间表示为系统对每一块数据的处理时间表示为Max(C,T)+M。5
23、.3 缓冲管理n5.3.2 单缓冲和双缓冲单缓冲和双缓冲n2、双缓冲、双缓冲n为了加快输入、输出速度和提高设备利用率,又引入了双缓冲工作方式,也为了加快输入、输出速度和提高设备利用率,又引入了双缓冲工作方式,也称为缓冲对换(称为缓冲对换(Buffer Swapping)方式。)方式。n在设备输入时,先将数据输入第一缓冲区,装满后便转向第二缓冲区。在设备输入时,先将数据输入第一缓冲区,装满后便转向第二缓冲区。此时此时操作系统可从第一缓冲区中移出数据送用户进程区,接着由操作系统可从第一缓冲区中移出数据送用户进程区,接着由CPU对数据进行对数据进行计算。计算。5.3 缓冲管理n5.3.2 单缓冲和双
24、缓冲单缓冲和双缓冲n2、双缓冲、双缓冲n在双缓冲时,系统处理一块数据的时间可粗略地认为是在双缓冲时,系统处理一块数据的时间可粗略地认为是Max(C,T)。5.3 缓冲管理n5.3.2 单缓冲和双缓冲单缓冲和双缓冲n2、双缓冲、双缓冲n当两台机器之间通信时,如果采用单缓冲技术,它们之间的任一时刻都只能当两台机器之间通信时,如果采用单缓冲技术,它们之间的任一时刻都只能实现单方向的数据传输。为了实现双向数据传输,必须在两台机器中都设置实现单方向的数据传输。为了实现双向数据传输,必须在两台机器中都设置两个缓冲区。两个缓冲区。5.3 缓冲管理n5.3.3 循环缓冲循环缓冲n当输入、输出或生产者当输入、输
25、出或生产者-消费者的速度相差甚远时,双缓冲的效果则不够消费者的速度相差甚远时,双缓冲的效果则不够理想,但可以增加缓冲区数量而使情况有所改善。因此,引入了多缓冲,理想,但可以增加缓冲区数量而使情况有所改善。因此,引入了多缓冲,并将多缓冲组织成循环缓冲形式。并将多缓冲组织成循环缓冲形式。5.3 缓冲管理n5.3.3 循环缓冲循环缓冲n循环缓冲的组成循环缓冲的组成n多个缓冲区:每个缓冲区大小相同,分成三类:多个缓冲区:每个缓冲区大小相同,分成三类:n空缓冲区空缓冲区R、已装满数据的缓冲区、已装满数据的缓冲区G、现行工作缓冲区、现行工作缓冲区Cn多个指针多个指针nNextg指示计算进程下一个可用的缓冲
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 设备管理
限制150内