操作系统孙晓那第六章设备管理_第1页
操作系统孙晓那第六章设备管理_第2页
操作系统孙晓那第六章设备管理_第3页
操作系统孙晓那第六章设备管理_第4页
操作系统孙晓那第六章设备管理_第5页
已阅读5页,还剩79页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、操作系统教师:孙晓娜邮箱:第六章 设备管理6.1 设备管理概述 设备管理的主要功能 设备分配 设备映射 设备驱动 i/o缓冲区管理设备分配 多道程序系统中的设备不允许用户直接使用,而是由操作系统统一调度和控制 设备分配功能是设备管理的基本任务 设备分配程序按照一定的策略,为申请设备的用户进程分配设备,记录设备的使用情况设备映射 为了提高应用软件对运行平台的适应能力,方便实现应用软件i/o重定向,大多数现代操作系统均支持应用软件对设备的无关性,即通常所说的设备无关性或设备独立性 设备无关性:应用软件所引用的,用于实际i/o操作的设备与物理i/o系统中实际安装的设备没有固定的联系。设备映射 逻辑设

2、备和物理设备 逻辑设备是指,应用软件所引用的用于实际i/o操作的设备 物理设备则指,物理i/o系统中实际安装的设备 从应用软件的角度,逻辑设备上一类物理设备的抽象,从操作系统设备管理程序的角度看,物理设备则是某种逻辑设备的实例设备映射 如果某系统支持设备无关性,那么该系统中应用软件所引用的逻辑设备与实际安装的物理设备没有固定的联系 事实上,在应用软件运行期间,操作系统的设备管理程序必须将该应用软件对逻辑设备的引用转换成对相关物理设备的引用 设备管理的这种功能成为逻辑设备到物理设备的映射功能,简称为设备映射功能设备驱动 又称为设备处理,指对物理设备进行控制,以实现真正的i/o操作 设备驱动的主要

3、任务是:接收上层软件发来的抽象服务请求,例如读/写命令,再把它转换为具体要求,通过一系列的i/o指令,控制设备完成请求的操作,同时,设备驱动程序还将设备发来的有关信号传送给上层软件,例如,设备是否已损坏等。 设备驱动程序与硬件密切相关,应为每一类设备配置一种驱动程序 设备驱动程序一般由设备开发厂商根据操作系统的要求组织编写,操作系统仅对与设备驱动的接口提出要求,一般不负责具体设备驱动程序的编写 有时候,某些硬件无法再某种操作系统中使用,原因很可能就是没有专门或通用的设备驱动程序,或者设备驱动程序设计有问题,使得设备无法正常工作。i/o缓冲区的管理功能 为了缓和处理机和外部设备间速度不匹配的矛盾

4、,提高处理机和外部设备间的并行性,现代操作系统大都在设备管理部分引入缓冲技术 通常,缓冲区是指内存中的若干区域,用于缓存进程与外部设备间的数据传输,又称为i/o缓冲区 i/o缓冲区管理的任务是:组织i/o缓冲区,并为使用者提供获得和释放i/o缓冲区的手段通用设备管理的分层模型 将设备管理功能模块分为设备硬件无关以及设备硬件相关两个层次 设备硬件无关层主要实现:i/o缓冲区管理以及设备映射功能,该层与设备用法有关,与设备硬件无关 一般地,根据设备的用法,该层也可视为虚拟存储系统,文件系统或通信系统通用设备管理分层模型 设备硬件相关层将设备硬件无关层与设备硬件隔离开来 从设备硬件无关层的角度看,设

5、备硬件相关层为其提供了一个相对简洁的i/o功能接口,该接口屏蔽了设备硬件复杂的操作细节 从设备硬件相关的内部看,该层主要实现设备驱动的功能,毫无疑问,该层与设备硬件密切相关。支持中断的设备管理模型设备硬件用户进程iocs资源等待队列i/o等待队列设备驱动程序启动过程|继续过程设备中断内核中断管理模块用户进程设备无关层设备相关层硬件6.2 计算机i/o子系统的组成 总线型i/o系统的结果i/o设备i/o设备i/o设备i/o设备处理机内存通道型i/o系统i/o通道i/o通道i/o通道处理机内存i/o设备i/o设备i/o设备i/o设备i/o设备具有控制器的i/o系统结构 传统的设备=机械部分+电子部

6、分 电子部分在系统的控制下驱动机械部分运转,完成i/o操作 由于设备中电子部分比机械部分的速度快得多,为了减低硬件成本,将电子部分从设备中分离出来作为一个独立的部件,这就是控制器 分离之后的设备仅由机械部分构成,一个控制器可与多个设备相连,交替地或分时地控制与其相关联的设备,例如,磁盘控制器可以控制多个磁盘驱动器i/o通道i/o通道处理机内存i/o设备i/o设备i/o设备i/o设备i/o设备控制器控制器控制器控制器i/o设备设备的控制-设备的寻址与操作 从处理机的角度看,各种外部设备可以看作是由一组设备寄存器组成的 常见的设备寄存器有:操作方式寄存器,命令寄存器,数据寄存器,状态寄存器 为了使

7、cpu能够寻址这些设备寄存器,硬件平台引入了i/o端口地址的概念i/o端口地址的编址方式有两种(1)将设备寄存器与内存物理单元统一编址(2)独立于内存物理地址为设备寄存器编址无论一个设备是否由多个控制器控制,或者一个控制器控制了多少个设备,每一个设备都能通过这些寄存器的地址唯一确定。设备的控制-即插即用 随着外部各种类型增加,设备间极可能可能发生冲突,即设备使用的中断号,dma,内存地址端口地址可能因相同或重叠而导致设备无法正常工作 手工调整这些设备的相关参数要求用户具有较多的计算机硬件知识,并对系统配置的硬件有较全面的了解 顾名思义是指,插上了就可以使用,不需要用户进行其他设置 “即插即用”

8、技术取消了跳线和软件配置程序,当用户插入一个“即插即用”适配卡或设备时,“即插即用”功能就可以自动进行检测;配置相应的接口参数,并安装相应的驱动程序 对已安装硬件的自动和动态识别 包括系统初始安装时,两次系统启动之间以及运行时发生的硬件事件(如笔记本的对接分离以及设备的插入/拨出)的响应 配合操作系统分配/再分配硬件资源 加载相应的驱动程序 当系统中加入新设备时,如果操作系统中没有集成相应设备的驱动程序,则会要求用户指定驱动程序的位置并完成驱动程序的安装设备驱动的程序 设备驱动程序一般由设备制造商提供,不包含在操作系统中 但是,为了方便用户,操作系统软件包中通常会集成提供标准的,通用的或者流行

9、的,常用设备厂商的设备驱动程序供用户选择 从系统分层的观点来讲,设备驱动程序可以说操作系统的一部分,也可以被认为硬件设备的一部分。i/ok控制方式-程序i/o方式在早期的计算机系统中,由于没有中断装置,处理机对于i/o设备的控制采取程序i/o方式也称忙等方式或循环测试方式对于读操作,这种方式的基本工作过程为:1.处理机向设备(或设备控制器)发出一条i/o指令启动设备,输入数据,同时将状态寄存器中的“忙”标志置12.处理机不断地循环测试忙标志,直到忙标志变为03.处理机通过i/o读指令将数据从数据寄存器中取出,送入内存中指定单元4.若数据已读完,则结束本过程,否则转(1),继续读下一个数据在程序

10、i/o方式中,由于处理机的速度非常快,而设备的速度相对较慢,使得处理机的绝大部分时间都处于等待设备完成数据i/o的循环测试中,造成对cpu 的极大浪费。i/o控制方式-中断i/o方式对于读操作,中断方式的基本工作过程为:1.处理机向设备(或设备控制器)发出一条i/o指令,启动设备,输入数据2.处理机完成其他工作,设备准备数据3.当设备准备好数据并将数据存入数据寄存器,向处理机发中断信号,告知数据已准备好4.处理机响应中断请求,从数据寄存器中将数据取出,送入内存的指定单元5.若数据已读完,结束,否则,转(1)继续中断方法控制i/o的优点在于,设备与处理机并行,提高了处理机的利用率,性能优于程序控

11、制i/o方式i/o控制方式-dma方式 中断i/o比程序i/o方式高效,但以字/字节为传输单位,每完成一个字/字节的传输,设备均要向cpu请求一次中断 对于使用设备而言,这种方式的效率还是显得有些低下,因为,频繁的,大量的中断所积累的开销很大 为了进一步减少处理机对i/o事务的干预,出现了dma(direct memory access)直接存储器访问方式dma方式的特点 数据传输的基本单位是数据块 数据直接从设备送入内存,或者直接从内存送入设备 仅在传送一个或多个数据块的开始和结束时,才需要处理机的干预 与中断方式相比,dma方式大大减少了数据i/o对处理机的占用,进一步提高了处理机的利用率

12、,提高了处理机和i/o设备的并行操作能力i/o控制方式-i/o通道方式 通道相当于一个功能单纯的处理机,专门用于处理i/o操作,通道有自己的运控部件和指令系统,但没有专门的内存,而是通过“周期窃用”方式与主机共享内存 通道通过执行通道程序来完成i/o操作 通道程序是通道指令的有序序列,它由系统中的输入/输出进程根据用户进程的i/o要求来确定,可以说事先编制好的程序段,页可以动态产生,通道程序以及需要与设备交换的数据均放置在内存中 一条通道指令可以传送一组数据,一个通道程序可以传送多组数据,多组数据全部传送完毕后(即一个通道程序执行完毕),才向处理机发出一次中断 通道不仅可以传送数据,更重要的是

13、它还完成对设备的控制,中通道的协助下,主机只需要发出一个启动通道,执行通道程序的指令即可,主机仅与通道直接通信,不必考虑设备的具体控制以及如何完成数据传送等问题,从而大大减轻量主机的负担。6.3 设备分类 设备类型 根据外部设备的用途不同,可以将其分为输入/输出型设备与存储型设备 根据外设传输的基本数据单位不同,可以将设备分为块型设备与字符型设备 按照资源管理的方式不同,可以将设备分为独占型设备和共享型设备输入/输出型vs存储型设备 输入/输出型设备:键盘、鼠标、显示器、读卡机、扫描仪、打印机、绘图仪、数码相机等 存储型设备:磁带机、磁盘机等,可用作输入,也可以用在输出,主要用于长期保存信息,

14、但需要管理其上的存储空间 可以在存储设备上可以建立文件系统,有组织,有结构地长期存储信息块型设备vs字符型设备 块型设备通常就是存储型设备,这类设备由于若干长度相同的块构成 一块的长度通常是2n 个字节,如256b,512b等,对这类设备来说,块是存储分配的基本单位,也是i/o传输的基本单位 字符型设备通常就是输入/输出型设备,这类设备i/o传输的基本单位是字节独占型vs共享型设备 独占型设备包括所有的字符型设备及磁带机 任意时间段内最多只能被一个进程占用 使用时,进程首先向系统申请,可能进入阻塞状态,当设备可用时,唤醒一个等待进程,使用完毕以后,进程必须释放设备 共享型设备包括除磁带机以为的

15、所有块型设备 i/o传输单元:块 宏观上,一个共享型设备可以被多个进程同时占用 微观上,多个进程交替使用同一设备 进程使用这类设备时,无须申请或释放设备,也不存在某个进程占用设备的问题6.4 设备分配 分配:设备,控制器和通道 需要记录与他们相关的信息包括:资源标识,物理连接情况,占用进程,等待进程等 具体实现时,可以将其分为设备控制块,控制器控制块和通道控制块 这些控制块中包含的信息之不同的系统中会有所不同设备控制块ucb 设备标识 设备状态 相连的控制器 重试次数(i/o出错时的重试次数) 占用设备的进程 设备等待队列(指向等待设备的等待队列) 通路等待队列(使用设备时需要申请相应的通道)

16、控制器控制块cucb 控制器标识 控制器状态 相连的通道 相连的设备 占用控制器的进程通道控制块ccb 通道标识 通道状态 相连的控制器 占用通道的进程设备无关性 为了实现设备的无关性,操作系统要求进程申请设备时,应当指明所需设备的类别(或者逻辑设备名),不能指定某一设备的具体编号 系统根据进程的请求以及资源分配情况在相应类别的设备中选择一个空闲的物理设备,并将其分配给申请者优点 提高设备的利用率,从根本上讲,申请者只关心使用设备的结果,不在乎到底使用哪一设备,假设申请者指定具体设备,被指定的设备可能正在被使用,因而申请无法满足,而此时,其他同类设备可能空闲,这将造成资源的浪费和进程的不必要等

17、待 程序与设备无关,假设申请者指定具体设备,而被指定的设备已损坏或未联机,则要么程序无法正常的工作,要么修改程序系统设备表sdt 根据上述实现要求,系统通常将相同类型设备的ucb记录在一张表中,称作ucb表 将逻辑设备名,设备数,设备等待队列以及ucb表的起始地址登记证另一个表中,该表通常称作系统设备表sdt设备分配算法 先来先服务 根据进程对某设备提出请求的先后次序,将这些进程排成一个设备请求队列,设备分配程序总是把设备分配给队首的进程 优先级高者优先服务 根据进程优先级的高低,将优先级高的进程排在设备等待队列的前面,对于优先级相同的进程,则按先来先服务的原则进行排队,设备分配程序总是把设备

18、分配给排在队首的进程独占型设备的分配 进程使用独占设备的过程:申请、使用、释放 进程申请设备 系统分配设备 进程发送使用命令 系统将转到设备驱动模块完成一次i/o传输 进程释放设备 系统回收设备 进程回收设备当进程的一次设备申请成功,直到发出释放命令期间,一直独占设备共享型设备的分配 进程使用共享型设备不需要申请,当然也就不存在占用或释放设备的问题 但是,i/o期间只能有一个进程使用设备,因此,进程使用共享型设备之前,有一个隐含的申请命令,使用完毕以后,有一个隐含的释放命令,以实现一次基本i/o传输期间的排他性,保证操作的正常进行 使用共享型设备的过程中,进程完全有可能进入阻塞等待状态。6.5

19、 i/o缓冲技术缓冲技术的引入 缓解处理机与设备间速度比匹配的矛盾 实现设备 与处理机一定程度的并行操作 减少设备的中断频率,放宽对中断响应时间的限制提前读 指用户进程从i/o缓冲区中取走前一个数据以后,立即发出对下一个数据的输入请求 操作系统将在适当的时候响应该请求,以便把用户进程需要的下一个数据从用户进程指定的输入设备读入到i/o缓冲区中 显然,用户进程加工前一个数据的工作与操作系统输入下一个数据的工作可以同时进行延后写 是指,当用户进程请求输出数据时,操作系统将很快把用户进程请求输出的数据从用户进程的工作区中取走并将其暂时存放在i/o缓冲区中 直到用户进程指定的输出设备空闲时,操作系统才

20、把暂时存放在i/o缓冲区中的用户进程的输出数据写入用户进程指定的输出设备上 显然用户进程生成下一个输出数据的工作与操作系统输出前一个输出数据的工作可以同时进行硬件缓冲和软件缓冲 硬件缓冲区配置在设备中,具有专门的用途,对处理机透明,不需要处理机的直接管理,不影响系统性能 软件实现的缓冲区是内存空间的一部分,其目的是为了弥补硬件缓冲区的不足。因为并非所有外设都拥有,或者足够拥有硬件缓冲区 操作系统中介绍的缓冲区都是指软件缓冲区缓冲区的组织形式 单缓冲, 双缓冲, 循环缓冲 缓冲池单缓冲 简单,仅在内存为进程对某个设备的i/o访问分配一个缓冲区,如同外部设备操作系统缓冲区用户进程 假定,一块数据从

21、外部设备输入到内存所花费的时间为t,中内存中移动所花费的时间为m,被用户进程加工处理花费的时间为c,那么 中没有使用i/o缓冲区的情况下,平均每块数据的处理时间近似为t+c 中使用i/o缓冲区的情况下,平均每块数据的处理时间近似为max(t,c)+m 相对于没有i/o缓冲区的情况,单i/o缓冲区能提高用户进程的运行效率 如果用户进程中对有关数据进行加工处理时不释放i/o缓冲区,那么用户进程的性能并不能得到改善 如果t远远大于c,即外部设备的i/o速度比用户进程的计算速度慢得多,那么单i/o缓冲区不会显著改善用户进程的性能双缓冲 增加一个缓冲区,两个缓冲区可以交替使用 当数据从缓冲区复制到用户进

22、程空间时,输入设备不必等待,可立即开始向另一个缓冲区输入数据,因此,增加了一个缓冲区以后,前述的平均工作时间近似为:max(t,c) 另外,若用户进程阵发性i/o的数据超过一个缓冲区而不满两个缓冲区,双缓冲使进程不会再i/o数据期间被阻塞循环缓冲 当用户进程处理数据的速度较快,外部设备处理数据的速度较慢,或者用户进程阵发性输入/输出的数据较多时,必须考虑增加缓冲区的数量以及改善系统性能,这就是多缓冲区方式 多个i/o缓冲区常常被组织成一个环形队列,故称为循环缓冲 实质上,双缓冲可以看作是循环缓冲的 一个特例缓冲池 上述三种缓冲区的组织形式仅适用于某种特定的i/o进程和计算进程,属于专用缓冲 当

23、系统中的设备很多时,将会有许多这样的循环缓冲区,消耗大量的内存空间,而且其利用率也不高 为了提高缓冲区的利用率,采用采用公共缓冲池技术,其实的缓冲区可为多个设备和进程服务 两种缓冲池:分别用于块型设备和字符型设备 用于块型设备的缓冲池:缓冲区较大,其长度通常与外部设备物理块的长度相同 用于字符型设备的缓冲池:缓冲区较小,其长度通常为8个字节,16个字节等 若单个缓冲区的容量太大会造成资源浪费,而太小的缓冲区则会增加系统管理开销 缓冲池中的缓冲区通常组织成链表结构 需要缓冲区时,从链表中申请一个或多个缓冲区,使用完毕时,释放的缓冲区将被链接到链表中 缓冲区和缓冲池都属于操作系统空间,用户进程不能

24、直接对缓冲区的数据进行操作 只能通过系统调用间接地使用 或让操作系统将缓冲区中的数据复制到用户进程空间或者相反6.6 虚拟设备虚拟设备的引入 独占型设备的速度一般比较慢,进程需要长时间等待i/o传输完成,影响进程的推进速度 进程中占用设备起家不一定一直使用此设备,而其他申请该设备的进程只能阻塞等待,降低了设备的利用率,影响其他进程的推进速度 引入虚拟设备技术,能解决独占设备利用率不高的问题虚拟设备技术的实现 虚拟设备技术类似于缓冲区技术,可以认为是为设备提供了更多更大的,甚至在实际工作中是无限长度的缓冲区,进一步提高系统效率 虚拟设备技术的实现:中独占型设备与进程之间加入一个共享型设备作为过渡

25、,如图进程内存间断传输连续传输某一区域共享性设备独占型设备 共享型设备的某一区域是由若干设备块构成,对进程而言相当于真是的设备 由于共享型设备较独占型的速度较快,所以进程i/o所需的时间较短,提高了进程的推进速度 又由于共享型设备的存储容量很大,可提供多个这样的区域,因而虚拟设备的数量多,一段可为每个需要使用设备的进程提供一个,这些进程不用排队等待,他们的推进速度也就不受任何影响 这样,多个进程可以同时使用同一独占型设备,而每个进程对应一个虚拟设备,提高了设备利用率输入型虚拟设备的实现 对于输入型虚拟设备,数据的流向: 假定用于输入的独占型设备时读卡机,用于实现虚拟设备的共享型设备时磁盘,则对

26、于进程所发出的资料申请命令,使用命令及释放命令,操作系统需要完成的工作如下:输入型虚拟设备的实现1. 申请 分配一台虚拟设备(磁盘区域)分配一台实设备(一台读卡机),对信息由实设备连续地传输到虚拟设备(磁盘区域)释放实设备(读卡机)2. 使用 将数据从虚拟设备(磁盘区域)传输到进程空间3. 释放 回收虚拟设备(磁盘区域)输出型虚拟设备的实现 对于输出型虚拟设备来说,数据的流向:内存共享型设备独占型设备 假定用于输出的独占型设备上打印机,用于实现虚拟设备的共享型设备上磁盘,则对于进程所发出的资源申请命令,使用命令及释放命令,操作系统需要完成的工作如下: 申请 分配一台虚拟设备(磁盘)区域 使用

27、将数据由进程空间传送到虚拟设备(磁盘区域) 释放 申请一台实设备(打印机)将数据虚拟设备(磁盘区域)输出到实设备(打印机),回收实设备(打印机)spooling 系统 spooling:simultaneous periphered operation on-line,直译是“联机情况下同时进行的外围设备操作”。通常称其为“假脱机操作” spooling系统是虚拟设备最典型的代表,包括假脱机输入和输出系统 核心思想:在快速辅助存储设备中建立i/o缓冲区,用于缓存从慢速输入设备流入内存的时间或缓存从内存流向过慢输出设备的时间6.7 磁盘设备的管理磁盘的性能和安全性 磁盘上计算机系统最重要的外部存

28、储设备之一 影响磁盘性能和数据安全性的重要因素: 磁盘性能参数:转速,寻道时间,磁盘缓存 磁盘控制器:ide,scsi磁盘控制器 raid等磁盘容错技术 磁盘管理算法:磁盘调度算法,磁盘高速缓存,高性能的文件系统磁盘设备的物理特性 磁盘由若干张圆形的盘片组成,每张盘片上都涂有磁层,用于记录数据 各盘片的圆心固定在一个旋转轴上, 该轴沿固定方向等速地转动,并带动磁盘组不停地旋转 硬盘每张盘片分为上、下两个盘面,每个盘面存在若干磁道,同一盘上的所有磁道是绕旋转轴的一组同心圆,所存磁道由外向内依次由0开始编号,成为磁道号 磁盘组中各盘面上序号相同的磁道构成一个柱面,由外向内一次编号,若磁盘组有1个柱

29、面,则编号为0,1,2,n-1,称为柱面号 若磁盘组共有s个盘片,则共有2s个盘面,但通常最上面和最下面的两个盘面作为伺服面,用以进行控制磁头定位等操作,并不存放数据,因而实际可用盘面数为m=2(s-1),由下至上,编号依次为0,1,2,m-1,称为盘面号 整个盘面被划分为若干大小相同的扇面,它把一个磁道等分成若干个区域,一个区域称为一个扇区,数据保存在各个扇区中, 每个扇区内保存的数据量相同,为2的幂次 扇区数磁盘进行i/o 传输的基本单位,也是磁盘空间分配的基本单位,若扇区的数量为n,则每条磁道的扇区被一次编号:0,1,2,n-1,称为扇区号 磁盘的基本存储单元(扇区)的寻址方式为三维地址

30、:柱面号,盘面号,扇区号 为了方便管理及屏蔽存储设备的物理细节,操作系统向上层软件提供统一的接口,常使用一维地址,即只有逻辑磁盘块号(逻辑扇区号),将磁盘组中的扇区从0开始编号 显然,这里就存在着一维地址与三维地址相互转换的问题 为了提高效率,对于移动磁头式磁盘机来说,磁头引臂的机械运动(寻道)速度过慢,其次才是盘片转动的速度,因此,编排逻辑块号时,扇区号先编号,其次是盘面号,最后才是柱面号磁盘的磁头工作方式 磁盘:固定头磁盘和移动头磁盘 固定头磁盘的每一条磁道上都有一个读/写磁头,所有的磁头都被安装在一刚性磁臂中,通过磁头访问磁道,可以并行读/写。磁道的i/o速度很快 固定头磁盘的优点是访问

31、速度快,其缺点是成本较高,容易受磁头数量限制 移动头磁盘为每一个盘面配置一个磁头,所存盘面的磁头被装入磁臂中,磁盘i/o时,必须移动磁头(寻道) 因此,移动头磁盘只能进行读/写,i/o速度相对较慢,但由于具有结构简单,成本较低,容量不变磁头数量限制等优点,因而被广泛使用影响磁盘i/o性能的技术 从磁盘读数据的过程:寻道时间(当前位置指定位置)+旋转延迟(定位扇区)+数据传输时间=访问时间寻道时间 把磁头从当前位置移动到指定磁道所需的时间,是影响磁盘数据传输率的重要参数,与磁头移动的磁道数量成正比 衡量磁盘的寻道性能时,通常使用平均寻道时间旋转延迟 与磁道转速直接相关,是指旋转磁盘,将指定扇区移

32、动到磁头下面所需要的时间传输时间 与硬盘的转速和所读/写的数据长度有关,当一次读/写的数据长度相当于半条磁道上的字节数时,传输时间与平均旋转延迟时间相同 综上所述,传统上影响磁道i/o性能的主要技术指标是平均寻道时间和转速,转速则影响平均旋转延迟和数据传输时间 对于实际的系统而言,较大缓存也对硬盘的i/o性能有较大的影响,但不是决定性的调整磁盘i/o性能 磁盘的寻道时间和转速时固定不变的 为了提高磁盘的i/o性能,只能从磁盘调度的方式和访问数据的组织形式上入手,即缩短寻道时间和旋转延迟先来先服务算法fcfs 这是最公平最简单的算法,但是效率非常低,只适合于负载很轻的系统最短寻道时间优先算法ss

33、tf 优先为距离磁头当前所在位置最近的磁道服务扫描算法scan 也成为电梯算法,类似电梯的工作原理 假定开始时磁头处于最外磁道,并向内磁道方向移动,在磁头移动过程中,如果经过的磁道有访问请求,则为其服务,然后,判断当前磁道以内的磁道是否还有访问请求,如果有,则磁头继续向内磁带方向移动,否则,判断当前磁道以外的磁道是否有访问 这样的算法比较公平,效率比较高,但是会出现磁臂粘着,磁盘被相应的进程垄断,所有其他磁道上的请求将比较长 时间内得不到服务n步扫描算法n-scan n步扫描算法将磁盘请求队列分成若干个长度为n的子队列,磁盘调度程序按照fcfs算法依次出来这些子队列,而处理每一个子队列时,按照scan算法 当n值取很大时,n步扫描算法的性能与scan算法的性能相当;当n取值为1时,n步扫描算法退化为fcfs算法 实际应用中,n步扫描算法被简化为:只为一次特定的扫描开始前已经等待的服务请求服务,以防止发生扫描算法中存在的不公平现象,尽管这种不公平的现象对磁头有利 在一次扫描期间内新到达的访问请求将只能放在下一次

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论