欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    计算机操作系统输入输出设备管理.ppt

    • 资源ID:6342510       资源大小:722KB        全文页数:90页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    计算机操作系统输入输出设备管理.ppt

    1,第五章 设备管理,5.1 I/O系统5.2 I/O控制方式5.3 缓冲管理5.4 设备分配5.5 设备处理5.6 磁盘存储器管理,E-Mail:QQ:531305157,2,引言,计算机系统的一个重要组成部分是I/O系统。在该系统中包括有用于实现信息输入、输出和存储功能的设备和相应的设备控制器,在有的大中型机中,还有I/O通道或I/O处理机。设备管理的主要对象是I/O设备,还可能要涉及到设备控制器和I/O通道。而设备管理的主要任务是完成用户提出的I/O请求,提高I/O速率以及提高I/O设备的利用率。设备管理的主要功能有:缓冲区管理、设备分配、设备处理、虚拟设备以及实现设备独立性等。由于I/O设备不仅种类繁多,而且它们的特点和操作方式往往相差甚大,这就使得设备管理成为操作系统最繁杂且与硬件最紧密相关的部分。,3,5.1 I/O系统,顾名思义,I/O系统是用于实现数据输入、输出及数据存储的系统。在I/O系统中,除了需要直接用于I/O和存储信息的设备外,还需要有相应的设备控制器和高速总线;在有的大、中型计算机系统中,还配置了I/O通道或I/O处理机。本节将介绍:一、I/O设备二、设备控制器三、I/O通道四、总线结构,4,一、I/O设备,1.I/O设备的类型2.设备与控制器之间的接口,5,1.I/O设备的类型,I/O设备的类型繁多,从OS观点看,其重要的性能指标有:数据传输速率、数据的传输单位、设备共享属性等。因而可以从不同角度对它们进行分类:1)按传输速率分类2)按信息交换的单位分类3)按设备的共享属性分类,6,1)按传输速率分类,按传输速度的高低,可将I/O设备分为三类。第一类是低速设备这是指其传输速率仅为每秒钟几个字节至数百个字节的一类设备。属于低速设备的典型设备有键盘、鼠标器、语音的输入和输出等设备。第二类是中速设备这是指其传输速率在每秒钟数千个字节至数万个字节的一类设备。典型的中速设备有行式打印机、激光打印机等。第三类是高速设备这是指其传输速率在数百千个字节至数十兆字节的一类设备。典型的高速设备有磁带机、磁盘机、光盘机等。,7,2)按信息交换的单位分类,按信息交换的单位,可将I/O设备分成两类。第一类是块设备(Block Device)这类设备用于存储信息。由于信息的存取总是以数据块为单位,故而得名。它属于有结构设备。典型的块设备是磁盘,每个盘块的大小为512B4KB。磁盘设备的基本特征是其传输速率较高,通常每秒钟为几兆位;另一特征是可寻址,即对它可随机地读/写任一块;此外,磁盘设备的I/O常采用DMA方式。第二类是字符设备(Character Device)用于数据的输入和输出。其基本单位是字符,故称为字符设备。它属于无结构类型。字符设备的种类繁多,如交互式终端、打印机等。字符设备的基本特征是其传输速率较低,通常为几个字节至数千字节;另一特征是不可寻址,即输入/输出时不能指定数据的输入源地址及输出的目标地址;此外,字符设备在输入/输出时,通常采用终端驱动方式。,8,3)按设备的共享属性分类,这种分类方式可将I/O设备分为如下三类:(1)独占设备。(2)共享设备。(3)虚拟设备。,9,2.设备与控制器之间的接口,数据信号线控制信号线状态信号线,10,二、设备控制器,设备控制器是计算机中的一个实体,其主要职责是控制一个或多个(同类)I/O设备,以实现I/O设备和计算机之间的数据交换。它是CPU和I/O设备之间的接口,它接收从CPU发来的命令,并去控制I/O设备工作,以使处理机从繁杂的设备控制事务中解脱出来。设备控制器是一个可编址的设备,当它仅控制一个设备时,它只有一个唯一的设备地址;若控制器可连接多个设备时,则应含有多个设备地址,并使每一个设备地址对应一个设备。设备控制器的复杂性因不同设备而异,相差甚大,于是可把设备控制器分成两类:一类用于控制字符设备的控制器;一类用于控制块设备的控制器。在微型机和小型机中的控制器,常做成印刷电路卡形式,因而也成接口卡,可将它插入计算机(插槽中)。本小节介绍:1、设备控制器的基本功能2、设备控制器的组成,11,1、设备控制器的基本功能,1)接收和识别命令2)数据交换3)标识和报告设备的状态4)地址识别5)数据缓冲6)差错控制,12,2、设备控制器的组成,1)设备控制器与处理机的接口2)设备控制器与设备的接口3)I/O逻辑,13,三、I/O通道,1、I/O通道(I/O Channel)设备的引入2、通道类型3、“瓶颈”问题,14,1、I/O通道(I/O Channel)设备的引入,设备控制器虽然已大大减少CPU对I/O设备的干预,但当主机所配置的外设很多是,CPU的负担仍然很重。为此,在CPU和设备控制器之间有增设了通道。其主要目的是为了建立独立的I/O操作,不仅是数据的传输能独立于CPU,而且也希望有关对I/O操作的组织、管理及其结束处理也尽量独立,以保证CPU有更多的时间去进行数据处理;或者说其目的是使一些原来由CPU处理的I/O任务转由通道来承担,从而把CPU从繁杂的I/O任务中解脱出来。在设置了通道后,CPU只需要向通道发送一条I/O指令;通道在接收到该指令后,便从内存中取出本次要执行的通道程序;然后执行该通道程序,仅当通道完成了规定的I/O任务后,才向CPU发中断信号。实际上,I/O通道是一种特殊的处理机。它具有执行I/O指令的能力,并通过执行通道(I/O)程序来控制I/O操作。但I/O通道又与一般的处理机不同,主要表现在以下两个方面:一是其指令类型单一,这是由于通道硬件比较简单,其所能执行的命令,主要局限于与I/O操作有关的指令;再就是通道没有自己的内存,通道所执行的通道程序是放在主机的内存中的,换言之,是通道与CPU共享内存。,15,2、通道类型,1)字节多路通道(Byte Multiplexor Channel)2)数组选择通道(Block Selector Channel)3)数组多路通道(Block Multiplexor Channel),16,1)字节多路通道,17,2)数组选择通道,字节多路通道不适于连接高速设备,这推动了按数组方式进行数据传送的数组选择通道的形成。这种通道虽然可以连接多台高速设备,但由于它只含有一个分配型子通道,在一段时间内只能执行一道通道程序,控制一台设备进行数据传送,致使当某台设备占用了该通道后,便一直由它独占,即使是它无数据传送,通道被闲置,也不允许其它设备使用该通道,直至该设备传送完毕释放该通道。可见,这种通道的利用率很低。,18,3)数组多路通道,数组选择通道虽有很高的传输速率,但它却每次只允许一个设备传输数据。数组多路通道是将数组选择通道传输速率高和字节多路通道能使各子通道(设备)分时并行操作的优点相结合而形成的一种新通道。它含有多个非分配型子通道,因而这种通道既具有很高的数据传输速率,又能获得令人满意的通道利用率。也正因此,才使该通道能被广泛地用于连接多台高、中速的外围设备,其数据传送是按数组方式进行的。,19,3、“瓶颈”问题,20,四、总线结构,总线型I/O系统结构中,系统各部件如CPU、存储器及各种I/O设备之间是通过总线实现联系的。总线的性能是用总线的时钟频率、带宽和相应的总线传输速率来衡量的。总线随着要求的不断提高从早期的ISA总线发展到EISA、VESA,直到当今广为流行的PCI总线。,21,1、ISA和EISA总线,1)ISA(Industry Standard Architecture)总线:这是为了1984年推出的80286型微机而设计的总线结构。其总线的带宽为8位,最高传输速率为2Mb/s。之后不久又推出了16位的(EISA)总线,其最高传输速率为8Mb/s,后又升至16Mb/s,能连接12台设备。2)EISA(Extended ISA)总线:到80年代末期,ISA总线已难于满足带宽和传输速率的要求,于是人们又开发出扩展ISA(EISA)总线,其带宽为32位,总线的传输速率高达32Mb/s,同样可以连接12台外部设备。,22,2、局部总线(Local Bus),1)VESA(Video Electronic Standard Association)总线 2)PCI(Peripheral Component Interface)总线,23,5.2 I/O控制方式,一、程序I/O方式二、中断驱动I/O控制方式三、直接存储器访问DMA I/O控制方式四、I/O通道控制方式,24,一、程序I/O方式,早期的计算机系统中,由于无中断机构,处理及对I/O设备的控制采取程序I/O方式,或称为“忙等待”方式。在程序I/O方式中,由于CPU的高速性和I/O设备的低速性,致使CPU的绝大部分时间都处于等待I/O设备完成数据I/O的循环测试中,造成对CPU的极大浪费。在该方式中,CPU之所以要不断地测试I/O设备的状态,就是因为在CPU中无中断机构,使I/O设备无法向CPU报告它已完成了一个字符的输入操作。,25,二、中断驱动I/O控制方式,在I/O设备输入每个数据的过程中,由于无须CPU干预,因而可使CPU与I/O设备并行工作。仅当输完一个数据时,才需CPU花费极短的时间去做些中断处理。可见,这样可使CPU和I/O设备都处于忙碌状态,从而提高了整个系统的资源利用率及吞吐量。例如,从终端输入一个字符的时间约为100ms,而将字符送入终端缓冲区的时间小于0.1ms。若采用程序I/O方式,CPU约有99.9ms的时间处于忙等待中。采用中断驱动方式后,CPU可利用这99.9ms的时间去做其它事情,而仅用0.1ms的时间来处理由控制器发来的中断请求。可见,中断驱动方式可以成百倍地提高CPU的利用率。,26,三、直接存储器访问DMA I/O控制方式,1、DMA(Direct Memory Access)控制方式的引入2、DMA控制器的组成3、DMA工作过程,27,1、DMA控制方式的引入,虽然中断驱动I/O方式比程序I/O方式更有效,但CPU是以字(节)为单位进行干预的,该方式用于块设备的I/O显然是低效的。该方式的特点是:数据传输的基本单位是数据块,即在CPU与I/O设备之间,每次传送至少一个数据块;所传送的数据是从设备直接送入内存的,或者相反;仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送是在控制器的控制下完成的。可见,DMA方式较之中断驱动方式,又是成百倍地减少了CPU对I/O的干预,进一步提高了CPU与I/O设备的并行操作程度。,28,2、DMA控制器的组成,为了实现在主机与控制器之间成块数据的直接交换,必须在DMA控制器中设置如下四类寄存器:1)命令/状态寄存器CR。用于接收从CPU发来的I/O命令或有关控制信息,或设备的状态。2)内存地址寄存器MAR。在输入时,它存放把数据从设备传送到内存的起始目标地址;在输出时,它存放由内存到设备的内存源地址。3)数据寄存器DR。用于暂存从设备到内存,或从内存到设备的数据。4)数据计数器DC。存放本次CPU要读或写的字(节)数。,29,3、DMA工作过程,30,四、I/O通道控制方式,1、I/O通道控制方式的引入2、通道程序,31,1、I/O通道控制方式的引入,虽然DMA方式比中断方式已经显著减少了CPU的干预,但CPU每次发出一条I/O指令也只能读/写一个数据块。I/O通道方式是DMA方式的发展,它可进一步减少CPU的干预,即把对一个数据块的读(或写)为单位的干预,减少为对一组数据块的读(或写)及有关的控制和管理为单位的干预。同时,又可实现CPU、通道和I/O设备三者的并行操作,从而更有效地提高整个系统的资源利用率。例如,当CPU要完成一组相关的读(或写)操作及有关控制时,只需向I/O通道发送一条I/O指令,以给出其所要执行的通道程序的首址和要访问的I/O设备,通道接到该指令后,通过执行通道程序便可完成CPU指定的I/O任务。,32,2、通道程序,通道是通过能够执行通道程序,并与设备控制器共同完成对I/O设备的控制的。通道程序是由一系列通道指令(或称为通道命令)所构成的。每条通道指令包含:1)操作码 2)内存地址3)计数4)通道程序结束位P5)记录结束标志R右表是一个六条通道指令构成的简单通道程序。,33,5.3 缓冲管理,一、缓冲的引入二、单缓冲和双缓冲三、循环缓冲四、缓冲池(Buffer Pool),34,一、缓冲的引入,1、缓和CPU与I/O设备间速度不匹配的矛盾。2、减少对CPU的中断频率,放宽对CPU中断响应时间的限制。3、提高CPU和I/O设备之间的并行性。,35,二、单缓冲和双缓冲,1、单缓冲2、双缓冲,36,1、单缓冲,37,2、双缓冲,双缓冲工作原理,双机通信时缓冲区的设置,38,三、循环缓冲,1、循环缓冲的组成2、循环缓冲区的使用3、进程同步,39,1、循环缓冲的组成,40,2、循环缓冲区的使用,1)Getbuf过程2)Releasebuf过程,41,3、进程同步,1)Nexti指针追赶上Nextg指针2)Nextg指针追赶上Nexti指针,42,四、缓冲池(Buffer Pool),1、缓冲池的组成2、Getbuf过程和Putbuf过程3、缓冲区的工作方式,43,1、缓冲池的组成,对于既可用于输入又可用于输出的公用缓冲池,其中至少应含有以下三种类型的缓冲区:空(闲)缓冲区;装满输入数据的缓冲区;装满输出数据的缓冲区。为了管理上的方便,可将相同类型的缓冲区链成一个队列,于是可形成以下三个队列:1)空缓冲队列emq2)输入队列inq3)输出队列outq,44,2、Getbuf过程和Putbuf过程,Procedure Getbuf(type)begin Wait(RS(type);Wait(MS(type);B(number):KG-*3=Takebuf(type);Signal(MS(type);endProcedure Putbuf(type,number)begin Wait(MS(type);Addbuf(type,number);Signal(MS(type);Signal(RS(type);end,45,3、缓冲区的工作方式,46,5.4 设备分配,一、设备分配中的数据结构二、设备分配时应考虑的因素三、设备独立性四、独占设备的分配程序五、SPOOLing技术,47,一、设备分配中的数据结构,1、设备控制表DCT2、控制器控制表、通道控制表和系统设备表,48,二、设备分配时应考虑的因素,1、设备的固有属性2、设备分配算法3、设备分配中的安全性,49,1、设备的固有属性,1)独享设备2)共享设备3)虚拟设备,50,2、设备分配算法,1)先来先服务2)优先级高者优先,51,3、设备分配中的安全性,1)安全分配方式2)不安全分配方式,52,三、设备独立性,1、设备独立性(Device Independence)的概念2、设备独立性软件3、逻辑设备名到物理设备名映射的实现,53,1、设备独立性的概念,为了提高OS的可适应性和可扩展性,在现代OS中都毫无例外地实现了设备独立性,也称为设备无关性。其基本含义是:应用程序独立于具体使用的物理设备。为了实现设备独立性而引入了逻辑设备和物理设备这两个概念。在应用程序中,使用逻辑设备名称来请求使用某类设备;而系统在实际执行时,还必须使用物理设备名称。因此,系统须具有将逻辑设备名称转换为某物理设备名称的功能,这非常类似于存储器管理中所介绍的逻辑地址和物理地址的概念。在实现了设备独立性的功能后,可带来以下两方面的好处。1)设备分配时的灵活性2)易于实现I/O重定向,54,2、设备独立性软件,1)执行所有设备的公有操作,这些公有操作包括:对独立设备的分配与回收;将逻辑设备名映射为物理设备名,进一步可以找到相应物理设备的驱动程序;对设备进行保护,禁止用户直接访问设备;缓冲管理,即对字符设备和块设备的缓冲区进行有效的管理,以提高I/O的效率;差错控制。由于在I/O操作中的绝大多数错误都与设备无关,故主要由设备驱动程序处理,而设备独立性软件只处理那些设备驱动程序无法处理的错误。2)向用户层(或文件层)软件提供统一接口:无论何种设备,它们向用户所提供的接口应该是相同的。例如,对各种设备的读操作,在应用程序中都使用read;而对各种设备的写操作,也都使用write。,55,3、逻辑设备名到物理设备名映射的实现,1)逻辑设备表2)LUT的设置问题,56,四、独占设备的分配程序,1、基本的设备分配程序1)分配设备2)分配控制器3)分配通道2、设备分配程序的改进1)增加设备的独立性2)考虑多通路情况,57,五、SPOOLing技术,1、什么是SPOOLing2、SPOOLing系统的组成3、共享打印机4、SPOOLing系统的特点,58,1、什么是SPOOLing,为了缓和CPU的高速性与I/O设备低速性间的矛盾而引入了脱机输入、脱机输出技术。该技术是利用专门的外围控制机,将低速I/O设备上的数据传送到高速磁盘上;或者相反。事实上,当系统中引入了多道程序技术后,完全可以利用其中的一道程序,来模拟脱机输入时的外围控制机功能,把低速I/O设备上的数据传送到高速磁盘上;再用另一道程序来模拟脱机输出时外围控制机的功能,把数据从磁盘传送到低速输出设备上。这样,便可在主机的直接控制下,实现脱机输入、输出功能。此时的外围操作与CPU对数据的处理同时进行,我们把这种在联机情况下实现的同时外围操作称为SPOOLing(Simultaneaus Periphernal Operating On-Line),或称为假脱机操作。,59,2、SPOOLing系统的组成,60,3、共享打印机,共享打印机技术已被广泛地用于多用户系统和局域网络中。当用户进程请求打印输出时,SPOOLing系统同意为它打印输出,但并不真正立即把打印机分配给该用户进程,而只为它做两件事:由输出进程在输出井中为之申请一个空闲磁盘块区,并将要打印的数据送入其中;输出进程再为用户进程申请一张空白的用户请求打印表,并将用户的打印要求填入其中,再将该表挂到请求打印队列上。,61,4、SPOOLing系统的特点,1)提高了I/O的速度2)将独占设备改造为共享设备3)实现了虚拟设备功能,62,5.5 设备处理,一、设备驱动程序的功能和特点二、设备驱动程序的处理过程三、中断处理程序的处理过程,63,一、设备驱动程序的功能和特点,1、设备驱动程序的功能2、设备处理方式3、设备驱动程序的特点,64,1、设备驱动程序的功能,1)接收由I/O进程发来的命令和参数,并将命令中的抽象要求转换为具体要求,例如,将磁盘块号转换为磁盘的盘面、磁道号及扇区号。2)检查用户I/O请求的合法性,了解I/O设备的状态,传递有关参数,设置设备的工作方式。3)发出I/O命令,如果设备空闲,便立即启动I/O设备去完成指定的I/O操作;如果设备处于忙碌状态,则将请求者的请求块挂在设备队列上等待。4)及时响应由控制器或通道发来的中断请求,并根据其中断类型调用相应的中断处理程序进行处理。5)对于设置有通道的计算机系统,驱动程序还应能够根据用户的I/O请求,自动地构成通道程序。,65,2、设备处理方式,1)为每一类设备设置一个进程,专门用于执行这类设备的I/O操作。2)在整个系统中设置一个I/O进程,专门用于执行系统中所有各类设备的I/O操作。3)不设置专门的设备处理进程,而只为各类设备设置相应的设备处理程序(模块),供用户进程或系统进程调用。,66,3、设备驱动程序的特点,1)驱动程序主要是指在请求I/O的进程与设备控制器之间的一个通信和转换程序。2)驱动程序与设备控制器和I/O设备的硬件特性紧密相关,因而对不同类型的设备应配置不同的驱动程序。3)驱动程序与I/O设备所采用的I/O控制方式紧密相关。4)由于驱动程序与硬件紧密相关,因而其中的一部分必须用汇编语言书写。,67,二、设备驱动程序的处理过程,1、将抽象要求转换为具体要求2、检查I/O请求的合法性3、读出和检查设备的状态4、传送必要的参数5、工作方式的设置6、启动I/O设备,68,三、中断处理程序的处理过程,1、唤醒被阻塞的驱动程序进程2、保护被中断进程的CPU现场3、分析中断原因、转入相应的设备中断处理程序4、进行中断处理5、恢复被中断进程的现场,69,5.6 磁盘存储器管理,一、磁盘性能简述二、磁盘调度三、磁盘高速缓存四、提高磁盘I/O速度的其他方法五、廉价磁盘冗余阵列,70,一、磁盘性能简述,1、数据的组织和格式2、磁盘的类型3、磁盘访问时间,71,1、数据的组织和格式,72,2、磁盘的类型,1)固定头磁盘:这种磁盘在每条磁道上都有一读/写磁头,所有的磁头都被装在一刚性磁臂中。通过这些磁头可访问所有各磁道,并进行并行读/写,有效地提高了磁盘的I/O速度。这种结构的磁盘主要用于大容量磁盘上。2)移动头磁盘:每一个盘面仅配有一个磁头,也被装入磁臂中。为能访问该盘面上的所有磁道,该磁头必须能移动以进行寻道。可见,移动磁头仅能以串行方式读/写,致使其I/O速度较慢;但由于其结构简单,故仍广泛应用于中小型磁盘设备中。,73,3、磁盘访问时间,1)寻道时间Ts:这是指把磁臂(磁头)移动到指定磁道上所经历的时间。该时间是启动磁臂的时间s与磁头移动n条磁道所花费的时间之和,即Ts=mn+s其中,m是一常数,与磁盘驱动器的速度有关,对一般磁盘,m=0.2;对高速磁盘,m0.1,磁臂的启动时间约为2ms。这样,对一般的温盘,其寻道时间将随寻道距离的增加而增大,大体上是530ms。2)旋转延迟时间T:这是指定扇区移动到磁头下面所经历的时间。对于硬盘,典型的旋转速度大多为5400r/min,每转需时11.1ms,平均旋转延迟时间T为5.55ms;对于软盘,其旋转速度为300r/min或600r/min,这样,平均T为50100ms。3)传输时间Tt:这是指把数据从磁盘读出或向磁盘写入数据所经历的时间。Tt的大小与每次所读/写的字节数b和旋转速度有关:Tt=b/rN。其中,r为磁盘每秒钟的转数;N为一条磁道上的字节数,当一次读/写的字节数相当于半条磁道上的字节数时,Tt与T相同,因此,可将访问时间Ta表示为:Ta=Ts+1/2r+b/rN。,74,二、磁盘调度,1、先来先服务FCFS(First-Come,First Served)2、最短寻道时间优先SSTF(Shortest Seek Time First)3、扫描(SCAN)算法4、循环扫描(CSCAN)算法5、N-Step-SCAN和FSCAN调度算法,75,1、先来先服务FCFS,76,2、最短寻道时间优先SSTF,77,3、扫描(SCAN)算法,1)进程“饥饿”现象:SSTF算法虽然能获得较好的寻道性能,但却可能导致某个进程发生“饥饿”(Starvation)现象。因为只要不断有新进程的请求到达,且其所要访问的磁道与磁头当前所在磁道的距离较近,这种新进程的I/O请求必须优先满足。对SSTF算法略加修改后所形成的SCAN算法,即可防止老进程出现“饥饿”现象。2)SCAN算法,78,4、循环扫描(CSCAN)算法,79,5、N-Step-SCAN和FSCAN调度算法,1)N-Step-SCAN算法:在SSTF、SCAN及CSCAN几种调度算法中,都可能出现磁臂停留在某处不动的情况,例如,有一个或几个进程对某一磁道有较高的访问频率,即这个(些)进程反复请求对某一磁道的I/O操作,从而垄断了整个磁盘设备。我们把这一现象称为“磁臂粘着”(Armstickiness)。在高密度磁盘上容易出现此情况。N步SCAN算法是将磁盘请求队列分成若干个长度为N的子队列,磁盘调度将按FCFS算法依次处理这些子队列。而每处理一个队列时又是按SCAN算法,对一个队列处理完后,再处理其他队列。当正在处理某子队列时,如果又出现新的磁盘I/O请求,便将新请求进程放入其他队列,这样就可避免出现粘着现象。当N值取得很大时,会使N步扫描法的性能接近于SCAN算法的性能;当N=1时,N步SCAN算法便蜕化为FCFS算法。2)FSCAN算法:FSCAN算法实质上是N步SCAN算法的简化,即FSCAN只将磁盘请求队列分成两个子队列。一个是由当前所有请求磁盘I/O的进程形成的队列,由磁盘调度按SCAN算法进行处理。在扫描期间,将新出现的所有请求磁盘I/O的进程,放入另一个等待处理的请求队列。这样,所有的新请求都将被推迟到下一次扫描时处理。,80,三、磁盘高速缓存,1、磁盘高速缓存的形式2、数据交付方式3、置换算法4、周期性地写回磁盘,81,1、磁盘高速缓存的形式,这里所说的磁盘高速缓存,是指利用内存中的存储空间,来暂存从磁盘中读出的一系列盘块中的信息。因此,这里的高速缓存是一组在逻辑上属于磁盘,而物理上是驻留在内存中的盘块。高速缓存在内存中可分成两种形式。第一种是在内存中开辟一个单独的存储空间来作为磁盘高速缓存,其大小是固定的,不会受应用程序多少的影响;第二种是把所有未利用的内存空间变为一个缓冲池,供请求分页系统和磁盘I/O时(作为磁盘高速缓存)共享。此时高速缓存的大小,显然不再是固定的。当磁盘I/O的频繁程度较高时,该缓冲池可能包含更多的内存空间;而在应用程序运行得较多时,该缓冲池可能只剩下较少的内存空间。,82,2、数据交付方式,系统可以采取两种方式,将数据交付给请求进程:1)数据交付。这是直接将高速缓存中的数据,传送到请求者进程的内存工作区中。2)指针交付。只将指向高速缓存中某区域的指针,交付给请求者进程。后一种方式由于所传送的数据量少,因而节省了数据从磁盘高速缓存存储空间到进程的内存工作区的时,83,3、置换算法,由于请求调页中的联想存储器与高速缓存(磁盘I/O中)的工作情况不同,因而使得在置换算法中所应考虑的问题也有所差异。因此,现在不少系统在设计其高速缓存的置换算法时,除了考虑到最近最久未使用这一原则外,还考虑了以下几点:1)访问频率2)可预见性3)数据的一致性,84,4、周期性地写回磁盘,在UNIX系统中专门增设了一个修改(update)程序,使之在后台运行,该程序周期性地调用一个系统调用SYNC。该调用的主要功能是强制性地将所有在高速缓存中已修改的盘块数据写回磁盘。一般是把两次调用SYNC的时间间隔定为30s。这样,因系统故障所造成的工作损失不会超过30s的劳动量。而在MS-DOS中所采用的方法是:只要高速缓存中的某盘块数据被修改,便立即将它写回磁盘,并将这种高速缓存称为“写穿透、高速缓存”(write-through cache)。MS-DOS所采用的写回方式,几乎不会造成数据的丢失,但须频繁地启动磁盘。,85,四、提高磁盘I/O速度的其他方法*,1、提前读(Read-Ahead)2、延迟写3、优化物理块的分布4、虚拟盘5、优化数据的分布1)优化物理块的分布2)优化索引节点的分布,86,五、廉价磁盘冗余阵列,1、并行交叉存取2、RAID的分级3、RAID的优点,87,1、并行交叉存取,88,2、RAID的分级,1)RAID 0级2)RAID 1级3)RAID 3级4)RAID 5级5)RAID 6级和RAID 7级,89,3、RAID的优点,1)可靠性高2)磁盘I/O速度高3)性能/价格比高,90,本章小结,习题:5.1、5.9、5.18、5.26,

    注意事项

    本文(计算机操作系统输入输出设备管理.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开