《操作系统课件第5章》由会员分享,可在线阅读,更多相关《操作系统课件第5章(144页珍藏版)》请在金锄头文库上搜索。
1、第五章 设 备 管 理 设备管理第五章 设 备 管 理 I/O的特点1.I/O性能经常成为系统性能的瓶颈(1)CPU性能不等于系统性能响应时间也是一个重要因素(2)CPU性能越高,与I/O差距越大弥补:更多的进程(3)进程切换多,系统开销大第五章 设 备 管 理 2.操作系统庞大复杂的原因之一是:资源多、杂,并发,均来自I/O外设种类繁多,结构各异输入输出数据信号类型不同速度差异很大3.理解I/O的工作过程与结构是理解操作系统的工作过程与结构的关键I/O技术很实用4.与其他功能联系密切,特别是文件系统第五章 设 备 管 理 设备管理的目标和任务1.按照用户的请求,控制设备的各种操作,完成I/O
2、设备与内存之间的数据交换(包括设备分配与回收;设备驱动程序;设备中断处理;缓冲区管理),最终完成用户的I/O请求第五章 设 备 管 理 功能(1)设备分配与回收记录设备的状态根据用户的请求和设备的类型,采用一定的分配算法,选择一条数据通路(2)建立统一的独立于设备的接口(3)完成设备驱动程序,实现真正的I/O操作(4)处理外部设备的中断处理(5)管理I/O缓冲区第五章 设 备 管 理 2.向用户提供使用外部设备的方便接口,使用户摆脱繁琐的编程负担方便性友好界面透明性逻辑设备与物理设备、屏蔽硬件细节(设备的物理细节,错误处理,不同I/O的差异性)第五章 设 备 管 理 3.充分利用各种技术(通道
3、,中断,缓冲等)提高CPU与设备、设备与设备之间的并行工作能力,充分利用资源,提高资源利用率并行性均衡性(使设备充分忙碌)第五章 设 备 管 理 4.保证在多道程序环境下,当多个进程竞争使用设备时,按一定策略分配和管理各种设备,使系统能有条不紊的工作5.保护设备传送或管理的数据应该是安全的、不被破坏的、保密的第五章 设 备 管 理 6.与设备无关性(设备独立性)用户在编制程序时,使用逻辑设备名,由系统实现从逻辑设备到物理设备(实际设备)的转换用户能独立于具体物理设备而方便的使用设备第五章 设 备 管 理 用户申请使用设备时,只需要指定设备类型,而无须指定具体物理设备,系统根据当前的请求,及设备
4、分配的情况,在相同类别设备中,选择一个空闲设备,并将其分配给一个申请进程统一性:对不同的设备采取统一的操作方式,在用户程序中使用的是逻辑设备第五章 设 备 管 理 优点:设备忙碌或设备故障时,用户不必修改程序改善了系统的可适应性和可扩展性第五章 设 备 管 理 第五章第五章 设备管理设备管理 5.1 I/O5.1 I/O系统系统 5.2 I/O5.2 I/O控制方式控制方式 5.3 5.3 缓冲管理缓冲管理 5.4 5.4 设备分配设备分配 5.5 5.5 设备处理设备处理 5.6 5.6 磁盘存储器管理磁盘存储器管理 第五章 设 备 管 理 5.1.1 I/O设备(种类繁多设备(种类繁多)1
5、.I/O设备的类型设备的类型 1)按传输速率分类 按传输速度的高低,可将I/O设备分为三类。第一类是低速设备,这是指其传输速率仅为每秒钟几个字节至数百个字节的一类设备。属于低速设备的典型设备有键盘、鼠标器、语音的输入和输出等设备。第二类是中速设备,这是指其传输速率在每秒钟数千个字节至数万个字节的一类设备。典型的中速设备有行式打印机、激光打印机等。第三类是高速设备,这是指其传输速率在数百千个字节至数十兆字节的一类设备。典型的高速设备有磁带机、磁盘机、光盘机等。5.1 I/O 系系 统统第五章 设 备 管 理 第五章 设 备 管 理 2)按信息交换的单位分类 可将I/O设备分成两类。第一类是块设备
6、(Block Device),这类设备用于存储信息。由于信息的存取总是以数据块为单位,故而得名。它属于有结构设备。典型的块设备是磁盘,每个盘块的大小为512 B4 KB。磁盘设备的基本特征是其传输速率较高,通常每秒钟为几兆位;另一特征是可寻址,即对它可随机地读/写任一块;此外,磁盘设备的I/O常采用DMA方式。第二类是字符设备(Character Device),用于数据的输入和输出。其基本单位是字符,故称为字符设备。第五章 设 备 管 理 3)按设备的共享属性分类这种分类方式可将I/O设备分为如下三类:(1)独占设备。(2)在一段时间内只能有一个进程使用的设备,一般为低速在一段时间内只能有一
7、个进程使用的设备,一般为低速I/O设备。(如打印机,磁带等)设备。(如打印机,磁带等)(3)(2)共享设备。(4)在一段时间内可有多个进程共同使用的设备,多个进程在一段时间内可有多个进程共同使用的设备,多个进程以交叉的方式来使用设备,其资源利用率高。(如硬盘)以交叉的方式来使用设备,其资源利用率高。(如硬盘)第五章 设 备 管 理(3)虚拟设备。在一类设备上模拟另一类设备,常用共享设备模拟独占设备,用高速设备模拟低速设备,被模拟的设备称为虚设备目的:将慢速的独占设备改造成多个用户可共享的设备,提高设备的利用率(实例:SPOOLing技术,利用虚设备技术用硬盘模拟输入输出设备)第五章 设 备 管
8、 理 按使用特性分存储型设备输入型设备(外设主机)输出型设备(主机外设)输入输出型设备(交互型设备)第五章 设 备 管 理 从程序使用角度分逻辑设备物理设备第五章 设 备 管 理 2.设备与控制器之间的接口设备与控制器之间的接口 图 5-1 设备与控制器间的接口 第五章 设 备 管 理 5.1.2 设备控制器设备控制器是CPU和设备之间的接口。在小型和微型机中,它常采用印刷电路卡插入计算机中。可以控制一个或者多个设备,完成设备与主机间的连接和通讯设备控制器中有一组寄存器,CPU通过向其中的控制寄存器写命令字来执行I/O操作;I/O情况以及设备状况均放在状态寄存器中;还包括一些设备数据缓冲寄存器
9、每个寄存器均要编址第五章 设 备 管 理 第五章 设 备 管 理 控制器卡上通常有一个插座,通过电缆与设备相连控制器和设备之间的接口是一个标准接口,它符合ANSI、IEEE或ISO这样的国际标准CPU外部设备控控制制逻逻辑辑电电路路控制寄存器控制寄存器状态寄存器状态寄存器数据寄存器数据寄存器第五章 设 备 管 理 1.设备控制器的基本功能设备控制器的基本功能 1)接收和识别命令 2)2)数据交换 3)3)标识和报告设备的状态 4)4)地址识别 5)5)数据缓冲 6)6)差错控制 第五章 设 备 管 理 2.设备控制器的组成设备控制器的组成 图 5-2 设备控制器的组成 第五章 设 备 管 理
10、通道技术1.定义:通道是独立于CPU的专门负责数据输入/输出传输工作的处理机,对外部设备实现统一管理,代替CPU对输入/输出操作进行控制,从而使输入,输出操作可与CPU并行操作。可以执行通道程序5.1.3 I/O通道通道 第五章 设 备 管 理 2.引入通道的目的为了使CPU从I/O事务中解脱出来,同时为了提高CPU与设备,设备与设备之间的并行工作能力第五章 设 备 管 理 3.分类1)字节多路通道字节多路通道以字节为单位传输信息,它可以分时地执行多个通道程序。当一个通道程序控制某台设备传送一个字节后,通道硬件就控制转去执行另一个通道程序,控制另一台设备传送信息主要连接以字节为单位的低速I/O
11、设备。如打印机,终端。以字节为单位交叉传输,当一台传送一个字节后,立即转去为另一台传送字节第五章 设 备 管 理 第五章 设 备 管 理 2)数组选择通道选择通道是以成组方式工作的,即每次传送一批数据,故传送速度很高。选择通道在一段时间内只能执行一个通道程序,只允许一台设备进行数据传输第五章 设 备 管 理 当这台设备数据传输完成后,再选择与通道连接的另一台设备,执行它的相应的通道程序主要连接磁盘,磁带等高速I/O设备选择通道选择通道第五章 设 备 管 理 3)成组多路通道它结合了选择通道传送速度高和字节多路通道能进行分时并行操作的优点。它先为一台设备执行一条通道指令,然后自动转接,为另一台设
12、备执行一条通道指令主要连接高速设备这样,对于连接多台磁盘机的数组多路通道,它可以启动它们同时执行移臂定位操作,然后,按序交叉地传输一批批数据。数据多路通道实际上是对通道程序采用多道程序设计的硬件实现第五章 设 备 管 理 4.硬件连接结构第五章 设 备 管 理 通道:执行通道程序,向控制器发出命令,并具有向CPU发中断信号的功能。一旦CPU发出指令,启动通道,则通道独立于CPU工作。一个通道可连接多个控制器,一个控制器可连接多个设备,形成树形交叉连接主要目的是启动外设时:a提高了控制器效率b提高可靠性c提高并行度第五章 设 备 管 理 第五章 设 备 管 理 交叉连接第五章 设 备 管 理 5
13、.通道工作原理通道相当于一个功能简单的处理机,包含通道指令(空操作,读操作,写操作,控制,转移操作),并可执行用这些指令编写的通道程序第五章 设 备 管 理 1)通道运算控制部件通道地址字 CAW:记录通道程序在内存中的地址通道命令字 CCW:保存正在执行的通道指令通道状态字 CSW:存放通道执行后的返回结果通道数据字 CDW:存放传输数据 通道和CPU共用内存,通过周期窃取方式取得第五章 设 备 管 理 2)工作原理CPU:执行用户程序,当遇到I/O请求时,可根据该请求生成通道程序放入内存(也可事先编好放入内存),并将该通道程序的首地址放入CAW中;之后执行“启动I/O”指令,启动通道工作第
14、五章 设 备 管 理 通道:接收到“启动I/O”指令后,从CAW中取出通道程序的首地址,并根据首地址取出第一条指令放入CCW中,同时向CPU发回答信号,使CPU可继续执行其他程序,而通道则开始执行通道程序,完成传输工作第五章 设 备 管 理(通道程序完成实际I/O,启动I/O设备,执行完毕后,如果还有下一条指令,则继续执行,否则表示传输完成)当当通通道道传输完完成成最最后后一一条条指指令令时,向向CPUCPU发I/OI/O中中断断,并并且且通通道道停停止止工工作作。CPUCPU接接收收中中断断信信号号,从从CSWCSW中中取取得得有有关信息,决定下一步做什么关信息,决定下一步做什么第五章 设
15、备 管 理 DMA(directmemoryaccess)技术DMA方式与中断的主要区别中断方式是在数据缓冲寄存区满后,发中断请求,CPU进行中断处理 DMA方式则是在所要求传送的数据块全部传送结束时要求CPU进行中断处理 大大减少了CPU进行中断处理的次数中断方式的数据传送是由CPU控制完成的 而DMA方式则是在DMA控制器的控制下不经过CPU控制完成的第五章 设 备 管 理 不用DMA时,磁盘如何读:首先,控制器从磁盘驱动器串行地一位一位地读一个块,直到将整块信息放入控制器的内部缓冲区中其次,它做和校验计算,以核实没有读错误发生然后控制器产生一个中断。CPU响应中断,控制转给操作系统。当操
16、作系统开始运行时,它重复地从控制器缓冲区中一次一个字节或一个字地读这个磁盘块的信息,并将其送入内存中第五章 设 备 管 理 控制器按照指定存控制器按照指定存储器地址,把第一个字器地址,把第一个字节送入主存送入主存然后,按指定字然后,按指定字节数数进行数据行数据传送送每当每当传送一个字送一个字节后,字后,字节计数器数器值减减1 1,直到字,直到字节计数器等于数器等于0 0此此时,控制器引,控制器引发中断,通知操作系中断,通知操作系统,操作完成,操作完成CPUCPU提供提供被被读取取块磁磁盘地址地址目目标存存储地址地址待待读取字取字节数数整整块数据数据读进缓冲区冲区核准校核准校验DMADMA工作示例工作示例(以硬(以硬盘为例)例)第五章 设 备 管 理 DMADMA工作原理工作原理窃取窃取总线控制控制权存放存放输入数据的内存起始地址、要入数据的内存起始地址、要传送的字送的字节数数送入送入DMADMA控制器的内存地址寄存器和控制器的内存地址寄存器和传送字送字节计数器数器中断允中断允许位和启位和启动位置成位置成1 1,启,启动设备发出出传输要求的要求的进程程进入等待状入等待状态执行指令被行指令