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

    操作系统-设备管理.ppt

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

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

    操作系统-设备管理.ppt

    第五章,设备管理,第五章 设备管理,5.1 I/O系统,引述在计算机系统中,除了处理机和存储器外,还有用于实现信息输入、输出和存储的设备,以及相应的设备控制器,I/O通道或I/O处理机等。设备管理的对象主要是I/O设备,另外还有设备控制器和I/O通道。设备管理的基本任务完成用户提出的I/O请求,提高I/O速率以及提高I/O设备的利用率。I/O设备种类多,且特性和操作方式相差很大,使得设备管理成为OS中最繁杂且与硬件最紧密相关的部分。I/O性能经常成为系统性能的瓶颈。,5.1 I/O系统,5.1.1 I/O设备1、I/O设备的类型(1)按使用特性分类存储设备:如磁盘。输入/输出设备:输入:如键盘、鼠标、扫描仪、摄像头、传感器输出:如打印机显示器、音响输出。(2)按传输速率分类低速设备:速度每秒几字节至数百个字节如键盘、鼠标器、语音的输入输出等设备。中速设备:每秒数千个字节至数十万个字节如行式打印机、激光打印机等。高速设备:每秒数百个千字节至千兆字节如磁带机、磁盘机、光盘机等。,5.1 I/O系统,5.1.1 I/O设备1、I/O设备的类型(3)按信息交换的单位分类块设备:以数据块为单位存取信息,如磁盘。传输速率高几兆位每秒,可寻址字符设备:以字符为单位存取信息,如键盘、打印机等。传输速率低,几百至几千字节,不可寻址,常采用中断驱动方式进行输入输出。(4)按共享属性分类独占设备:一段时间内存只允许一个进程访问的设备。共享设备:一段时间内允许多个进程同时访问的设备。虚拟设备:通过虚拟技术将一台独占设备变幻成多台逻辑设备,供多个进程同时使用。,5.1 I/O系统,5.1.1 I/O设备2、I/O设备与控制器之间的接口通常,设备并不是直接与CPU进行通信,而是与设备控制器通信。因此,在设备与设备控制器之间应有一接口。数据信号线:传输数据信号控制信号线:发送控制信号,规定设备执行的操作状态信号线:指示设备当前状态信号,5.1 I/O系统,5.1.2 设备控制器1、基本概念设备控制器是CPU与I/O设备间的接口设备控制器接收从CPU发来的命令,并控制I/O设备工作,使处理机从繁杂的设备控制事务中解脱出来。设备控制器常做成印刷电路卡形式,称为接口卡,如显卡、声卡等。设备控制器可控制一个或多个同类I/O设备。,5.1 I/O系统,5.1.2 设备控制器2、基本功能(1)接收和识别命令(2)数据交换(3)标识和报告设备的状态(4)地址识别(5)数据缓冲(6)差错控制,5.1 I/O系统,5.1.2 设备控制器3、设备控制器的组成设备控制器处于CPU与设备之间,它既要与CPU通信,又要与设备通信,还应具有 按照CPU所发来的命令去控制设备工作的功能。由以下三部分组成:设备控制器与CPU的接口 设备控制器与设备的接口 I/O逻辑,5.1 I/O系统,5.1.2 设备控制器3、设备控制器的组成,设备控制器,设备1,设备i,CPU,5.1 I/O系统,5.1.3 I/O通道1、I/O通道的引入虽然在CPU与I/O设备之间增加了设备控制器,但当外设很多时,CPU的负担仍很重。为此,在CPU和设备控制器之间又增设了I/O通道。其目的是使一些原来由CPU处理的I/O任务转由通道来承担,从而进一步把CPU从繁杂的I/O任务中解脱出来。I/O通道是一种特殊的处理机,专门负责数据的输入输出操作。具有执行I/O指令的能力,I/O指令用来控制I/O操作。,5.1 I/O系统,5.1.3 I/O通道2、I/O通道的类型字节多路通道主通道以字节为单位传送数据,多个子通道与每个设备连接,子通道按时间片轮转方式共享主通道。抢占式。数组选择通道主通道按数组方式传送数据,只有一个子通道连接设备,子通道非抢占式使用通道传输数据。数组多路通道主通道按数组方式传送数据,多个子通道与设备连接,子通道按时间片轮转方式共享主通道。,5.1 I/O系统,5.1.3 I/O通道2、I/O通道的类型字节多路通道的工作原理,5.1 I/O系统,5.1.3 I/O通道3、“瓶颈”问题由于通道价格昂贵,致使机器中所设置的通道数量势必较少,这又往往使它成为I/O 的瓶颈,进而造成整个系统吞吐量的下降。,5.1 I/O系统,5.1.3 I/O通道3、“瓶颈”问题解决方案:增加设备到主机间的通路而不增加通道。,5.1 I/O系统,5.1.4 总线系统计算机系统中的各部件,如cpu、存储器及各种I/O设备之间的联系,都是通过总线实现的。,5.1 I/O系统,5.1.4 总线系统与主板连接的接口主要ISA、EISA、VESA、PCI、AGP等几种。ISA和EISA总线带宽窄、速度慢,VESA总线扩展能力差,这三种总线已经被市场淘汰。现在常见的是PCI和AGP接口。PCI总线接口,以1/2或1/3的系统总线频率工作,如果要在处理图像数据的同时处理其它数据,那么流经PCI总线的全部数据就必须分别地进行处理,这样势必存在数据滞留现象,在数据量大时,PCI总线就显得很紧张。AGP接口可以解决这个问题,它是一种专用的显示接口,具有独占总线的特点,只有图像数据才能通过AGP端口,数据传输率高。,5.1 I/O系统,5.1.4 总线系统,5.1 I/O系统,5.1.4 总线系统,5.1 I/O系统,5.1.4 总线系统,第五章 设备管理,5.2 I/O控制方式,随着计算机技术的发展,I/O控制方式也在不断地发展。I/O控制方式的发展经历了以下四个阶段:5.2.1 程序I/O方式5.2.2 中断驱动I/O控制方式5.2.3 直接存储器访问(DMA)I/O控制方式5.2.4 I/O通道控制方式,5.2 I/O控制方式,5.2.1 程序I/O方式又称忙等待方式。在该方式中,由于CPU的高速性和I/O设备的低速性,致使CPU的绝大部分时间都处于等待I/O设备完成数据I/O的循环测试中,造成对CPU的极大浪费。,5.2 I/O控制方式,5.2.2 中断驱动I/O控制方式在I/O设备输入每个数据过程中,无须CPU干预,可使CPU与I/O设备并行工作。仅当传输完一个数据时,才需CPU花极短时间处理中断。这样可使CPU和I/O设备都处于忙碌状态,从而提高了整个系统的资源利用率及吞吐量。这种方式适用于打印机、键盘等以字符为单位传送的字符设备。,5.2 I/O控制方式,5.2.3 直接存储器访问(DMA)I/O控制方式虽然中断驱动I/O比程序I/O方式更有效,但它是以字(节)为单位进行I/O的,若将这种方式用于块设备的I/O,显然将会是极其低效的。为进一步减少CPU对I/O的干预,引入了直接存储器访问(Direct Memory Access)方式。DMA控制方式适用于磁盘等块设备的I/O。,5.2 I/O控制方式,5.2.3 直接存储器访问(DMA)I/O控制方式特点 数据传输的基本单位是数据块;所传送的数据是从设备直接送入内存的,或者相反;仅在传送一个或多个数据块的开始和结束时,才需CPU干预,整块数据的传送是在控制器的控制下完成的。可见,DMA方式较之中断驱动方式,又是成百倍地减少了CPU对I/O的干预,进一步提高了CPU与I/O设备的并行操作程度。,5.2 I/O控制方式,5.2.3 直接存储器访问(DMA)I/O控制方式DMA控制器的组成主机与DMA控制器的接口;DMA控制器与块设备的接口;I/O控制逻辑;,5.2 I/O控制方式,5.2.3 直接存储器访问(DMA)I/O控制方式DMA从处理器那里取得控制权,通过系统总线在主存和设备之间传输数据DMA使用“周期挪用技术”挪用一个总线周期来传输数据,使得CPU的执行变得慢了。,5.2 I/O控制方式,5.2.4 I/O通道控制方式采用DMA方式可一次性读取一个数据块的内容,但当我们需要一次去读多个数据块且将它们分别传送到不同的内存区域时,则需要CPU进行多次中断来处理。I/O通道方式是DMA方式的发展,可一次完成多个数据块的读/写及有关的控制和管理,期间不需要CPU的干预,从而实现CPU、通道、I/O设备三者并行操作,提高系统资源利用率。例如,当CPU要完成一组相关的读(或写)操作及有关控制时,只需向I/O通道发送一条I/O指令,以给出其所要执行的通道程序的首址和要访问的I/O设备,通道接到该指令后,通过执行通道程序便可完成CPU指定的I/O任务。,第五章 设备管理,5.3 缓冲管理,5.3.1 缓冲的引入目的(1)缓和CPU与I/O设备间速度不匹配的矛盾。(2)减少对CPU的中断频率,放宽对CPU中断响应时间的限制。(3)提高CPU和I/O设备之间的并行性。缓冲技术 单缓冲 双缓冲 循环缓冲 缓冲池,5.3 缓冲管理,5.3.2 单缓冲和双缓冲1、单缓冲单缓冲是OS提供的最简单的一种缓冲形式。每当一个用户进程发出一I/O请求时,操作系统便在主存中为之分配一缓冲区。在块设备输入时,缓冲区用于暂存块设备输入的一块数据;在字符设备输入时,缓冲区用于暂存用户输入的一行数据。,5.3 缓冲管理,5.3.2 单缓冲和双缓冲1、单缓冲系统对每一块数据的处理时间表示为Max(C,T)+M。,5.3 缓冲管理,5.3.2 单缓冲和双缓冲2、双缓冲为了加快输入、输出速度和提高设备利用率,又引入了双缓冲工作方式,也称为缓冲对换(Buffer Swapping)方式。在设备输入时,先将数据输入第一缓冲区,装满后便转向第二缓冲区。此时操作系统可从第一缓冲区中移出数据送用户进程区,接着由CPU对数据进行计算。,5.3 缓冲管理,5.3.2 单缓冲和双缓冲2、双缓冲在双缓冲时,系统处理一块数据的时间可粗略地认为是Max(C,T)。,5.3 缓冲管理,5.3.2 单缓冲和双缓冲2、双缓冲当两台机器之间通信时,如果采用单缓冲技术,它们之间的任一时刻都只能实现单方向的数据传输。为了实现双向数据传输,必须在两台机器中都设置两个缓冲区。,5.3 缓冲管理,5.3.3 循环缓冲当输入、输出或生产者-消费者的速度相差甚远时,双缓冲的效果则不够理想,但可以增加缓冲区数量而使情况有所改善。因此,引入了多缓冲,并将多缓冲组织成循环缓冲形式。,5.3 缓冲管理,5.3.3 循环缓冲循环缓冲的组成多个缓冲区:每个缓冲区大小相同,分成三类:空缓冲区R、已装满数据的缓冲区G、现行工作缓冲区C多个指针Nextg指示计算进程下一个可用的缓冲区G;Nexti指示输入进程下次可用的空缓冲区R;Current指示计算进程正在使用的缓冲区单元。,5.3 缓冲管理,5.3.4 缓冲池(Buffer Pool)1、缓冲池的组成循环缓冲属专用缓冲。当系统较大时,为了提高缓冲区的利用率,目前广泛流行公用缓冲池,池中的缓冲区可供多个进程共享。由以下部分组成多个缓冲区队列四种工作缓冲区,5.3 缓冲管理,5.3.4 缓冲池(Buffer Pool)1、缓冲池的组成多个缓冲区队列空缓冲队列emq输入队列inq装满输入数据输出队列outq装满输出数据四种工作缓冲区用于收容输入数据的工作缓冲区;用于提取输入数据的工作缓冲区;用于收容输出数据的工作缓冲区;用于提取输出数据的工作缓冲区。,5.3 缓冲管理,5.3.4 缓冲池(Buffer Pool)2、工作方式缓冲区可以工作在收容输入、提取输入、收容输出、提取输出四种工作方式。,第五章 设备管理,5.4 I/O软件,5.4.1 I/O软件的设计目标I/O软件的总体目标是高效率和通用性高效率:确保I/O设备和CPU的并发性通用性:尽量提供简单抽象、清晰统一的接口。通常将I/O软件组织成层次结构低层:用于实现与硬件相关的操作,屏蔽硬件细节高层:向用户提供一个简洁、友好、规范的接口。,5.4 I/O软件,5.4.1 I/O软件的设计目标I/O软件的具体目标(1)设备无关性:屏蔽细节,与具体设备无关(2)统一命名:使用逻辑名称访问设备,逻辑名称在不同情况下可能对应不同具体的物理设备。(3)对错误的处理:尽量在接近硬件的低层,低层能解决的错误高层不需要知道。(4)缓冲技术:缓解CPU和设备的速度,不论以块还是字节为单位,都屏蔽,使高层与抽象设备交互。(5)设备的分配和释放:对共享设备、独占设备等需要妥善解决。(6)I/O控制方式:对不同传输速率设备采取不同I/O控制方式,低速采用中断驱动,高速采取DMA等。,5.4 I/O软件,5.4.1 I/O软件的设计目标I/O软件的层次结构通常分为四层层次5.4.5 用户层软件:用户可直接调用的对设备操作的函数。5.4.4 设备独立性软件:实现前述I/O软件具体的目标5.4.3 设备驱动程序:对设备发出操作指令,调用驱动程序5.4.2 中断处理程序:保存中断现场,进行处理,恢复现场,5.4 I/O软件,5.4.2 中断处理程序一般分成以下几个步骤(1)唤醒被阻塞的驱动程序(2)保护被中断进程的CPU环境(3)转入相应的设备处理程序(4)中断处理(5)恢复被中断进程的现场,5.4 I/O软件,5.4.3 设备驱动程序I/O进程与设备控制器之间的通信程序。接收上层软件发来的抽象I/O请求,如read/write,转换成为具体要求,发给设备控制器,启动设备去执行。将由设备控制器发来的信号传给上层软件。由于驱动程序与硬件密切相关,故应为每类设备设置一种驱动程序。有时也为类似几类设备设置一个驱动程序。,5.4 I/O软件,5.4.4 设备独立性软件为了提高OS的可适应性和可扩展性,OS都实现了设备独立性(Device Independence),也称为设备无关性。含义:应用程序独立于具体使用的物理设备。在应用程序中,使用逻辑设备名称来请求使用某类设备;而在系统实际执行时,还必须使用物理设备名称。因此,系统须具有将逻辑设备名称转换为某物理设备名称的功能,类似于存储器管理中介绍的逻辑地址和物理地址的概念。,5.4 I/O软件,5.4.4 设备独立性软件设备独立性带来的好处:设备分配时的灵活性;以逻辑名称请求某类设备,系统可将该类中任一台分配给进程,如果使用物理名称则只能分配某一台。易于实现I/O重定向I/O重定向:指更改I/O时的设备,而不需要改应用程序。如:调试程序时输出送屏幕,正式运行时可改成打印机。,5.4 I/O软件,5.4.5 用户层的I/O软件一般来说,大部分的I/O软件都在os内部,还有一部分在用户层,如程序相关的库函数等。用户层软件如果想调用os内部的I/O服务,必须通过系统调用来进行。高级语言一般提供了与各系统调用对应的库函数,如与read对应的scanf、fread等,与write对应的printf,fwrite等。形式上,系统调用与库函数类似。并且由于系统调用多数都采用c语言编写,所以用户程序除了调用库函数外还可以直接调用系统调用。,第五章 设备管理,5.5 设备分配,5.5.1 设备分配中的数据结构多道程序环境下,设备供所有进程共享,并由系统统一分配。进程向系统提出I/O请求,只要是可能和安全的,设备分配程序就按照一定的策略,把设备分配给进程。设备一般通过设备控制器或通道与CPU通信,所以还要给进程分配使用相应的控制器和通道。为了实现设备分配,必须设置相应的数据结构。设备控制表、控制器控制表、通道控制表、系统设备表,5.5 设备分配,5.5.1 设备分配中的数据结构设备控制表(DCT)每个设备一张,记录本设备情况,5.5 设备分配,5.5.1 设备分配中的数据结构控制器控制表(COCT)每个控制器一张,记录本控制情况,5.5 设备分配,5.5.1 设备分配中的数据结构通道控制表(CHCT)每个通道一张,5.5 设备分配,5.5.1 设备分配中的数据结构系统设备表(SDT)系统中所有设备的情况,每个设备一个表目。,5.5 设备分配,5.5.2 设备分配时应考虑的因素为使系统有条不紊工作,设备分配时应考虑(1)设备的固有属性独占设备:只有一个进程用完才能分给另一进程共享设备:多个进程共享,注意先后次序的调度虚拟设备:多个进程共享,注意先后次序的调度(2)设备分配算法 先来先服务优先级高者优先(3)设备分配的安全性安全分配方式不安全分配方式,5.5 设备分配,5.5.3 SPOOLing技术1、基本概念SPOOLing技术就是将一台独占设备改造成共享设备的技术。2、引入第一章曾介绍过,为了缓和CPU的高速性与I/O设备低速性间的矛盾而引入了脱机输入、脱机输出技术。该技术是利用专门的外围控制机,将低速I/O设备上的数据传送到高速磁盘上;或者相反。,5.5 设备分配,5.5.3 SPOOLing技术2、引入当系统中引入了多道程序技术后,完全可以利用其中的一道程序,来模拟脱机输入时的外围控制机功能,把低速I/O设备上的数据传送到高速磁盘上;再用另一道程序来模拟脱机输出时外围控制机的功能,把数据从磁盘传送到低速输出设备上。这样,便可在主机的直接控制下,实现脱机输入、输出功能。此时的外围操作与CPU对数据的处理同时进行,把这种在联机情况下实现的同时外围操作称为SPOOLing(Simultaneaus Periphernal Operating On-Line),或称为假脱机操作。,5.5 设备分配,5.5.3 SPOOLing技术3、SPOOLing系统的组成 输入井和输出井 输入缓冲区和输出缓冲区 输入进程Spi和输出进程SPo,5.5 设备分配,5.5.3 SPOOLing技术4、举例:共享打印机 SPOOLing技术可将一台打印机改造成可供多个用户使用。当用户进程请求打印输出时,SPOOLing系统同意为它打印输出,但并不真正立即把打印机分配给该用户进程,而只为它做两件事:由输出进程在输出井中为之申请一个空闲磁盘块区,并将要打印的数据送入其中;输出进程再为用户进程申请一张空白的用户请求打印表,并将用户的打印要求填入其中,再将该表挂到请求打印队列上。若打印机空闲,输出进程将从请求打印队列的对首取出一张请求打印表,根据表中的要求将要打印的数据从输出井传送到内存缓冲区,再由打印机打印。,5.5 设备分配,5.5.3 SPOOLing技术,5.5 设备分配,5.5.3 SPOOLing技术5、SPOOLing系统的特点 提高了I/O的速度将独占设备改造为共享设备实现了虚拟设备功能,第五章 设备管理,5.6 磁盘存储器管理,5.6.1 磁盘性能简述1、磁盘简介磁盘容量大,存取速度快,可以随即存取,用来存放程序和数据等文件。对文件的操作,都涉及对磁盘的访问,因此磁盘I/O速度的高低和磁盘系统的可靠性,都将直接影响系统性能。,5.6 磁盘存储器管理,5.6.1 磁盘性能简述2、数据的组织和格式磁盘设备可以包含一或多个物理盘片,每个磁盘片分一个或两个存储面(surface)。,5.6 磁盘存储器管理,5.6.1 磁盘性能简述2、数据的组织和格式磁盘设备可以包含一或多个物理盘片,每个磁盘片分一个或两个存储面(surface)。,5.6 磁盘存储器管理,5.6.1 磁盘性能简述2、数据的组织和格式磁盘设备可以包含一或多个物理盘片,每个磁盘片分一个或两个存储面(surface)。,5.6 磁盘存储器管理,5.6.1 磁盘性能简述2、数据的组织和格式每个磁盘面被组织成若个同心环,称为磁道(track),各磁道间留有间隙。每条磁道大小相同,内层磁道密度高。每条磁道被逻辑上划分成若干扇区(sectors),也称为盘块,一般512字节,软盘大约832个,硬盘可多达数百个,各扇区之间保留间隙。,5.6 磁盘存储器管理,5.6.1 磁盘性能简述2、数据的组织和格式例如,一个10GB容量的磁盘,有8个双面可存储盘片,供10个存储面,每面有16383个磁道,每个磁道63个扇区。,5.6 磁盘存储器管理,5.6.1 磁盘性能简述2、数据的组织和格式为了在磁盘上存储数据,必须先将磁盘格式化。每个扇区容量600个字节,其中512字节存放数据。,5.6 磁盘存储器管理,5.6.1 磁盘性能简述3、磁盘的类型可以从多个角度对磁盘分类,如硬盘和软盘,单片盘和多片盘,固定头磁盘和活动头磁盘。固定头磁盘每条磁道有一个磁头,所有磁头被装在一个刚性磁臂上,可以进行并行读/写,I/O速度快,主要用在大容量磁盘上。活动头磁盘每个盘面配一个磁头,为了能访问盘面上所有磁道,磁头必须能移动,只能以串行读/写,I/O速度慢,但结构简单,广泛应用与中小型磁盘设备中。,5.6 磁盘存储器管理,5.6.1 磁盘性能简述4、磁盘访问时间磁盘访问时间寻道时间+旋转延迟时间+数据传输时间寻道时间Ts将磁头定位于相应磁道上的时间。当代磁盘平均5-10ms。旋转延迟时间Tr相应扇区旋转到磁头处的时间。与磁盘转速有关,硬盘转速7200-10000r/m,软盘转速300-600r/m。传输时间Tt把数据从磁盘读出或写入数据所经历的时间,速度较快。对于一个典型磁盘,平均寻道时间为10ms,旋转延迟时间3ms,读一个扇区所花时间0.01875ms,可见寻道时间对磁盘性能影响较大。,5.6 磁盘存储器管理,5.6.2 磁盘调度磁盘是可供多个进程共享的设备,由于磁盘是串行I/O,当有多个进程要求访问磁盘时,应采用一种调度算法,以使各进程对磁盘的平均访问时间尽可能少。磁盘调度的目标:使磁盘的平均寻道时间最少。常用的调度算法有:先来先服务FCFS最短寻道时间优先SSTF扫描算法SCAN循环扫描算法CSCAN其他:N-Step-SCAN算法、FSCAN算法,5.6 磁盘存储器管理,5.6.2 磁盘调度例如:某磁盘共200个磁道,编号为0-199。某时刻磁头刚从96磁道移动到100磁道,目前正停在第100磁道上。之后该磁盘依次接收到的磁道请求分别为:55,58,39,18,90,160,150,38,184。请采用各种磁盘调度算法进行调度。,5.6 磁盘存储器管理,5.6.2 磁盘调度1、先来先服务FCFSFirst-Come,First Served最简单根据进程请求访问磁盘的先后次序进行调度。仅用于请求磁盘I/O的进程数目比较少的场合磁头访问次序:55,58,39,18,90,160,150,38,184磁头移动距离:45,3,19,21,72,70,10,112,146平均寻道长度:55.3,5.6 磁盘存储器管理,5.6.2 磁盘调度2、最短寻道时间优先SSTFShortest Seek Time First要求访问的磁道与当前磁头位置距离最近每次的寻道时间最短。磁头访问次序:90,58,55,39,38,18,150,160,184磁头移动距离:10,32,3,16,1,20,132,10,24平均寻道长度:27.5,5.6 磁盘存储器管理,5.6.2 磁盘调度3、扫描算法SCANSSTF算法虽然能获得较好的寻道性能,但却可能导致某个进程发生“饥饿”(Starvation)现象。因为只要不断有新进程的请求到达,且其所要访问的磁道与磁头当前所在磁道的距离较近,这种新进程的I/O请求必须优先满足。对SSTF算法略加修改,可防止老进程出现“饥饿”现象。按磁头移动方向,依次按距离移动,直到前方没有磁道需要访问时,转向。电梯调度算法。磁头访问次序:150,160,184,90,58,55,39,38,18磁头移动距离:50,10,24,94,32,3,16,1,20平均寻道长度:27.8,5.6 磁盘存储器管理,5.6.2 磁盘调度4、循环扫描算法CSCAN磁头单向移动,如只是自里向外。按磁头移动方向,依次按距离移动,最边的磁道,然后又回到起始磁道重新开始扫描。(此时磁头刚从96磁道移动到100磁道)磁头访问次序:150,160,184,18,38,39,55,58,90磁头移动距离:50,10,24,166,20,1,16,3,32平均寻道长度:35.8,5.6 磁盘存储器管理,5.6.2 磁盘调度练习题 设某移动头磁盘有200道,编号为0-199,磁头当正处在130道上,且正向0磁道方向移动,对于如下访盘请求序列(磁道号):70,120,80,160,60,150 请在下面写出在FCFS、SSTF(最短寻道时间优先)、SCAN调度算法下,磁头移动顺序及移动总量(以磁道数计)。,5.6 磁盘存储器管理,5.6.3 磁盘高速缓存(Disk Cache)目前磁盘的I/O速度远低于对内存的访问速度,通常要低46个数量级。为了解决磁盘I/O速度的瓶颈问题,在内存中开辟了缓冲区,暂存从磁盘读出的信息。高速缓存形式形式一:内存中开辟大小固定的空间形式二:内存所有未利用空间作为缓冲池,供请求分页和磁盘高速缓存共享。,5.6 磁盘存储器管理,5.6.3 磁盘高速缓存(Disk Cache)数据访问过程:当有进程请求访问某个盘块数据时,先查看磁盘高速缓存如果存在则直接拷贝使用,避免访问磁盘,提高速度。如果不在,则从磁盘拷贝使用,同时也送往磁盘高速缓存。置换算法如同请求调页一样,在将磁盘盘块数据读入高速缓存时,也会有高速缓存满需要置换出其他数据的问题,也需要使用置换算法置换。周期写回磁盘有些经常被访问的盘块数据,可能会一致保留在高速缓存中,长期不会写回磁盘,如果出现问题,则最新的数据就会丢失,所以要将数据周期写回磁盘。,5.6 磁盘存储器管理,5.6.4 提高磁盘I/O速度的其他方法1、提前读(Read-Ahead)在读当前块的同时,将下一个盘块也读入缓冲区2、延迟写 在缓冲区中的数据,本应立即写回磁盘,但考虑到该数据可能还会被本进程或其他进程使用(共享),所以将其挂在空闲缓冲区队列末尾,只有当其移动到队首且又有进程申请空间时才写回。3、优化物理块的分布 在为文件分配盘块时,尽量使其在相邻物理扇区上。4、虚拟盘利用内存去仿真磁盘,易失性,通常存放临时文件。,5.6 磁盘存储器管理,5.6.5 廉价磁盘冗余阵列RAID1、基本概念Redundant Array of Independent Disks辅存性能的提高远低于处理器和主存性能的提高,可以通过多个并行的磁盘构成的阵列来获得性能提高。1987年美国加州大学伯克利分校提出,广泛应用于大、中型计算机系统和计算机网络中。利用一台磁盘阵列控制器,来统一管理和控制一组(几台到几十台)磁盘驱动器,组成一个可靠、快速的大容量磁盘系统。,5.6 磁盘存储器管理,5.6.5 廉价磁盘冗余阵列RAID2、并行交叉存取该系统有多台磁盘驱动器,系统将每一盘块中的数据分为若干个子盘块,再把每一个子盘块数据分布存储到各个不同磁盘的相同位置上。访问采用并行方式同时与内存进行传输,实现高速。,5.6 磁盘存储器管理,5.6.5 廉价磁盘冗余阵列RAID3、RAID分级高速通过并行存取进行,可靠通过冗余来提高,即备份数据。最初RAID分为6级,现在为8级RAID 0级:并行交叉存取,不冗余。RAID 1级:并行,全部冗余。RAID 2级:并行,利用一台进行海明码校验 RAID 3级:并行,利用一台进行奇偶校验。RAID 4级:并行,利用一台奇偶校验,按盘不是按块访问。RAID 5级:每个盘有独立数据通路,独立I/O,没有校验磁盘,校验信息以螺旋方式散布在所有磁盘上,用于I/O频繁的事务处理中。RAID 6级:在5级基础上,设置专用可快速访问的异步校验盘,价格昂贵。RAID 7级:对6级的改进,价格昂贵。,5.6 磁盘存储器管理,5.6.5 廉价磁盘冗余阵列RAID3、RAID分级,5.6 磁盘存储器管理,5.6.5 廉价磁盘冗余阵列RAID4、RAID的优点(1)可靠性高都有容错技术(2)磁盘I/O速度高可并行交叉存取(3)性能/价格比高实现大容量高速存储器时,体积和价格都是同类大型磁盘系统的1/3,且可靠性高。,小结,I/O设备分类,设备控制器,I/O通道,总线I/O控制方式程序、中断驱动、DMA、I/O通道缓冲技术单缓冲、双缓冲、循环缓冲、缓冲池I/O软件层次结构用户层软件、设备独立性软件、设备驱动程序、中断处理程序设备分配中的数据结构。设备控制表DCT、控制器控制表COCT、通道控制表CHCT、系统设备表SDTSPOOLing技术,小结,磁盘原理磁盘访问时间寻道时间+旋转延迟时间+数据传输时间;磁盘调度几种常用磁盘调度算法FCFS,SSTF,SCAN,CSCAN磁盘高速缓存RAID基本概念,

    注意事项

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

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开