您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 操作系统-设备管理.
1I/OSYSTEMS2计算机系统的一个重要组成部分是I/O系统。I/O系统包括:输入设备输出设备设备控制器I/O通道或I/O处理机设备管理的对象主要是:I/O设备设备控制器I/O通道3设备管理的基本任务是:完成用户提出的I/O请求,提高I/O速率,提高I/O设备的利用率。设备管理的主要功能有:缓冲区管理设备分配设备处理虚拟设备实现设备独立性设备管理是OS中最繁杂且与硬件最紧密相关的部分。4本章总览OS在I/O方面的功能是管理和控制I/O操作和I/O设备。I/O技术表现出两大相冲突的发展趋势:硬件接口的标准化程度的提高设备类型的更多样化的高速发展基本的I/O硬件像接口,总线,设备控制器技术的发展顺应了I/O设备的广泛变化。操作系统内核用各种设备驱动模块来组织I/O子系统结构。问题:性能和复杂。5设备管理的目的和功能外设管理目的提高效率:提高I/O访问效率,匹配CPU和多种不同处理速度的外设。方便使用:方便用户使用,对不同类型的设备统一使用方法,协调对设备的并发使用。方便控制:方便OS内部对设备的控制:增加和删除设备,适应新的设备类型。6设备管理的目的和功能外设管理功能设备分配和释放:使用设备前,需要分配设备和相应的通道、控制器。设备的访问和控制:包括并发访问和差错处理。I/O缓冲和调度:目标是提高I/O访问效率(主要是磁盘)。7891011125.1I/O系统•I/O系统的结构13AtypicalPCbusstructure14155.1.1I/O设备I/O设备的类型繁多,从OS观点看,其重要的性能指标有:数据传输速率、数据的传输单位、设备共享属性等。按传输速率分类•低速设备典型设备有:键盘、鼠标器、语音输入和输出等。•中速设备典型设备有:行式打印机、激光打印机等。•高速设备典型设备有:磁带机、磁盘机、光盘机等。1.I/O设备的类型16按信息交换的单位分类•块设备:这类设备用于存储信息。属于有结构设备。典型的块设备是磁盘,每个盘块的大小为512B~4KB。传输速率较高,可寻址即对它可随机地读/写任一块;磁盘设备的I/O常采用DMA方式。•字符设备:用于数据的输入和输出。其基本单位是字符,故称为字符设备。按设备的共享属性分类独占设备共享设备虚拟设备17设备与控制器之间的接口数据信号控制信号状态信号2.设备与控制器之间的接口通常,设备并不直接与CPU进行通信,而是与设备控制器通信。因此,在I/O设备中应含有与设备控制器间的接口。在该接口中有三种类型的信号各对应一条信号线。18缓冲转换器控制逻辑信号数据数据信号线状态信号线控制信号线至设备控制器I/O设备图5-1设备与控制器间的接口控制信号线:作为设备控制器向I/O设备发送控制信号时的通路。该信号规定了设备将要执行的操作:读操作(指由设备向控制器传送数据)写操作(从控制器接收数据)数据信号线:用于在设备和设备控制器之间传送数据信号。输入设备:外界输入的信号经转换器转换后形成的数据,通常先送入缓冲器中,当数据量达到一定的比特数后,再从缓冲器通过一组数据信号线传送给设备控制器。输出设备:将从设备控制器经过数据信号线传送来的一批数据先暂存于缓冲器中,经转换器作适当转换后,再逐个字符地输出。状态信号线:用于传送指示设备当前状态的信号。设备的当前状态有:正在读(写)设备已读(写)完成,并准备好新的数据传送。195.1.2设备控制器设备控制器是计算机中的一个实体,其主要职责是控制一个或多个I/O设备,以实现I/O设备和计算机之间的数据交换。它是CPU与I/O设备间的接口,它接收从CPU发来的命令,并去控制I/O设备工作,使处理机从繁杂的设备控制事务中解脱出来。它是一个可编址的设备,当它仅控制一个设备时,它只有一个唯一的设备地址;若控制多个设备时,则应含有多个设备地址,并使每一个设备地址对应一个设备。205.1.2设备控制器它可分为两类:控制字符设备的控制器控制块设备的控制器设备控制器的基本功能书P162接收和识别命令数据交换设备状态的了解和报告地址识别数据缓冲差错控制21设备控制器的组成由于设备控制器位于CPU与设备之间,它既要与CPU通信,又要与设备通信,还应具有按照CPU所发来的命令区控制设备工作的功能。因此有以下三部分组成:控制器与处理机接口该接口用于实现CPU与设备控制器之间的通信。控制器与设备接口可以连接一个或多个设备。在每个接口中都存在数据、控制和状态三种类型的信号。控制器中的I/O逻辑根据处理机发来的地址信号去选择一个设备接口。22数据寄存器控制/状态寄存器数据线I/O逻辑…控制器与设备接口1控制器与设备接口i数据状态控制数据状态控制…地址线控制线CPU与控制器接口控制器与设备接口图5-2设备控制器的组成I/O逻辑I/O逻辑用于实现对设备的控制:它通过一组控制线与处理机交互,处理机利用该逻辑向控制器发送I/O命令;I/O逻辑对收到的命令进行译码。每当CPU要启动一个设备时,一方面将启动命令发送给控制器;另一方面有通过地址线把地址发送给控制器,由控制器的I/O逻辑对收到的地址进行译码,再根据所译出的命令对所选设备进行控制。235.1.3I/O通道在CPU与I/O设备之间增加了设备控制器后,已能大大减少CPU对I/O的干预,但当主机所配置的外设很多时,CPU的负担仍然很重。为此,在CPU和设备控制器之间又增设了I/O通道。其主要目的是为了建立独立的I/O操作,不仅使数据的传送能独立于CPU,而且I/O操作的组织、管理及结束处理尽量独立,以保证CPU有更多的时间进行数据处理。即设置I/O通道的目的是使一些原来由CPU处理的I/O任务转由通承担,从而把CPU从繁杂的I/O任务中解脱出来。设置了通道后,CPU只需向通道发送一条I/O指令。通道收到该指令后,便从内存中取出本次要执行的通道程序,然后执行该通道程序;仅当通道完成了规定的I/O任务后,才向CPU发中断信号。24I/O通道是一种特殊的处理机,具有执行I/O指令的能力。通过执行通道(I/O)程序来控制I/O操作。其指令类型单一主要局限于与I/O操作有关的指令通道没有自己的内存,通道所执行的通道程序是放在主机的内存中的。25通道类型字节多路通道一种按字节交叉方式工作的通道。它通常含有许多非分配型子通道,其数量从几十到几百个,每一个子通道连接一台I/O设备,并控制该设备的I/O操作。这些子通道按时间片轮转方式共享主通道:当第一个子通道控制其I/O设备完成一个字节的交换后,便立即腾出主通道,让给第二个子通道使用;当所有子通道轮转一周后,重又返回由第一个子通道去使用主通道。这样,只要字节多路通道扫描每个子通道的速率足够快,而连接到子通道上的设备的速率不是太高时,便不致丢失信息。控制器A控制器B控制器C控制器D控制器N…A1A2A3…子通道AB1B2B3…子通道BC1C2C3…子通道CN1N2N3…子通道NA1B1C1…A2B2C2…设备26数组选择通道字节多路通道不适合连接高速设备数组选择通道可以连接多台高速设备该通道只含有一个分配型子通道这种通道的利用率很低数组多路通道上面两种通道技术的结合有多个非分配型子通道该通道能被广泛地用于连接多台高、中速的外围设备具有很高的数据传输速率,又能获得令人满意的通道利用率27瓶颈问题设备1设备2设备3设备4设备5设备6设备7控制器1控制器2控制器3控制器4通道1通道2存储器通道价格昂贵,通道数量势必减少。这往往又使它成了I/O的瓶颈,从而造成整个系统吞吐量的下降。假设设备1至设备4是四个磁盘,为了启动磁盘4,必须用通道1和控制2;但若这两者已被其他设备占用,必然无法启动磁盘4。28瓶颈问题的解决I/O设备控制器1控制器2通道1通道2存储器I/O设备I/O设备I/O设备解决方法:增加设备到主机间的通路而不增加通道。就是把一个设备连接到多个控制器上,而一个控制器又连接到多个通道上。图中的设备1、2、3、4都有四条通往存储器的通路。多通路方式不仅解决了瓶颈问题,而且提高了系统的可靠性。295.1.4总线系统总线是许多信号线的集合,它是微型计算机芯片间、各部件间和外部设备间相互进行信息或数据交换的通路。由于计算机内部定向的信息流和数据流在总线中的流动,就形成了计算机的各种操作。常见的系统总线标准有ISA、EISA、PCI等总线30总线的主要技术指标总线数据传输速率•单位时间内总线上传送的数据量,即每钞钟传送Mb的最大稳态数据传输率。•总线数据传输速率=总线的工作频率*总线的位宽/8。总线的带宽•总线的带宽指的是总线能同时传送的二进制数据的位数,或数据总线的位数,即32位、64位等总线宽度的概念。总线的工作频率•总线的工作时钟频率以MHZ为单位,工作频率越高,总线工作速度越快,总线传输速率越高。31ISA和EISA总线80286微机的总线。带宽为8bit,最高传输速率为2Mb/s,可以连接12台外部设备。扩展ISA即EISA总线:带宽16位。传输速率高达32Mb/s,可以连接12台外部设备。32局部总线局部总线是指将多媒体卡,高速LAN网卡,高性能图形板等从ISA总线上卸下来,再通过局部总线控制器直接连接到CPU总线上,使之与高速CPU总线相匹配。局部总线中较有影响的是VESA和PCI总线。VESA:带宽32位。最高传输速率132Mb/s,仅能连接2~4台设备。PCI:PCI在CPU和外设之间插入一复杂的管理层,用于协调数据传输和提供一致的接口。PCI能支持10种外设,最大传输速率可达132Mb/s。是当前广为流行的总线。335.2I/O控制方式I/O控制方式是随着计算机技术的发展而不断发展的。在I/O控制方式的整个发展过程中,始终贯穿的宗旨是:尽量减少主机对I/O控制的干预,把主机从反之的I/O控制事物中解脱出来,以便更多地去完成数据处理任务。早期采用程序控制I/O方式;当在系统中引入中断机制后,便发展为中断驱动方式;随着DMA控制器的出现,又使I/O方式在传输单位上发生了变:即从以字节为单位的传输扩大到以数据块为单位进行传输。从而改善了块设备的I/O性能;通道的引入,又使对I/O操作的组织和数据的传送都能独立进行而无需CPU干预。34I/O控制方式程序控制I/O(programmedI/O)中断驱动方式(interrupt-drivenI/O)直接存储访问方式(DMA,DirectMemoryAccess)I/O通道控制方式(channel(channelcontrol)35程序控制(忙—等待或轮询方式)系统中没有中断机构,I/O操作由程序发起,并等待操作完成。数据的每次读写均通过CPU。–例如:当主机要通过端口来写出数据时,主机与控制器之间的握手协议如下:缺点:在外设进行数据处理时,CPU只能等待,致使CPU利用率很低。36六个步骤1主机不断地读取忙位,直到该位被清除;2主机设置命令寄存器中的写位并向数据输出寄存器中写入一个字(节);3主机设置命令就绪位;4当控制器注意到命令就绪位已被设置,则设置忙位;5控制器读取命令寄存器,并看到写入命令,它从数据输出寄存器中读取一个字(节),并向设备执行I/O操作。6控制器清除命令就绪位,清除状态寄存器的故障位,以表示设备成功,清除忙位以表示完成。完成一个字节的传输后继续重复上述步骤取更多的数据。37中断驱动方式I/O操作由程序发起,在操作完成时(如数据可读或已经写入)由外设向CPU发出中断,通知该程序。数据的每次读写通过CPU具体过程如右图所示:38优点:在外设进行数据处理时,CPU不必等待,可以继续执行该程序或其他程序。缺点:CPU每次处理的数据量仍是以字(字节)为单位,只适于数据传输率较低的设备。39直接存储访问方式(DMA)计算机为了避免用PIO而增加CPU的负担,将一部分任务下放给一个专用的处理器-DMA控制器;DMA控制器的组成,如下图所示:DRMARDCCRI/O控
本文标题:操作系统-设备管理.
链接地址:https://www.777doc.com/doc-2381003 .html