操作系统精髓与设计原理-第11章 IO管理和磁盘调度

合集下载

操作系统精髓与设计原理-第11章-IO管理和磁盘调度知识交流

操作系统精髓与设计原理-第11章-IO管理和磁盘调度知识交流

第十一章 I/O管理和磁盘调度复习题11.1列出并简单定义执行I/O的三种技术。

·可编程I/O:处理器代表进程给I/O模块发送给一个I/O命令,该进程进入忙等待,等待操作的完成,然后才可以继续执行。

·中断驱动I/O:处理器代表进程向I/O模块发送一个I/O命令,然后继续执行后续指令,当I/O模块完成工作后,处理器被该模块中断。

如果该进程不需要等待I/O完成,则后续指令可以仍是该进程中的指令,否则,该进程在这个中断上被挂起,处理器执行其他工作。

·直接存储器访问(DMA):一个DMA模块控制主存和I/O模块之间的数据交换。

为传送一块数据,处理器给DMA模块发送请求,只有当整个数据块传送完成后,处理器才被中断。

11.2逻辑I/O和设备I/O有什么区别?·逻辑I/O:逻辑I/O模块把设备当作一个逻辑资源来处理,它并不关心实际控制设备的细节。

逻辑I/O模块代表用户进程管理的一般I/O功能,允许它们根据设备标识符以及诸如打开、关闭、读、写之类的简单命令与设备打交道。

·设备I/O:请求的操作和数据(缓冲的数据、记录等)被转换成适当的I/O指令序列、通道命令和控制器命令。

可以使用缓冲技术,以提高使用率。

11.3面向块的设备和面向流的设备有什么区别?请举例说明。

面向块的设备将信息保存在块中,块的大小通常是固定的,传输过程中一次传送一块。

通常可以通过块号访问数据。

磁盘和磁带都是面向块的设备。

面向流的设备以字节流的方式输入输出数据,其末使用块结构。

终端、打印机通信端口、鼠标和其他指示设备以及大多数非辅存的其他设备,都属于面向流的设备。

11.4为什么希望用双缓冲区而不是单缓冲区来提高I/O的性能?双缓冲允许两个操作并行处理,而不是依次处理。

典型的,在一个进程往一个缓冲区中传送数据(从这个缓冲区中取数据)的同时,操作系统正在清空(或者填充)另一个缓冲区。

11.5在磁盘读或写时有哪些延迟因素?寻道时间,旋转延迟,传送时间11.6简单定义图11.7中描述的磁盘调度策略。

操作系统课程设计--磁盘调度先来先服务算法

操作系统课程设计--磁盘调度先来先服务算法

《操作系统原理》课程设计报告书题目:磁盘调度先来先服务算法学号:学生姓名:专业:计算机科学与技术指导教师:2014 年 5 月 29目录1 功能描述 (2)1.1 功能实现思想 (2)1.2 功能详述 (2)2 系统设计 (2)2.1 系统总体设计 (2)2.1.1 数据结构描述 (2)2.1.2 函数功能分析 (2)2.1.2 程序函数调用关系 (3)2.2 系统详细设计 (3)2.2.1 设计任务 (3)2.2.2 设计要求 (3)2.2.3 算法思想 (3)2.2.4 FCFS 算法流程图 (4)3 系统实现 (4)4 系统测试与分析 (5)4.1 系统运行结果 (5)4.2 系统运行结果分析 (5)5 总结 (6)参考文献 (6)附:源程序代码 (7)教师评分表 (10)1 功能描述根据进程请求访问磁盘的先后次序进行调度,从而计算出磁头移动的总距离和平均寻道长度。

1.1 功能实现思想这是一种比较简单的磁盘调度算法。

它根据进程请求访问磁盘的先后次序进行调度。

此算法的优点是公平、简单,且每个进程的请求都能依次得到处理,不会出现某一进程的请求长期得不到满足的情况。

此算法由于未对寻道进行优化,在对磁盘的访问请求比较多的情况下,此算法将降低设备服务的吞吐量,致使平均寻道时间可能较长,但各进程得到服务的响应时间的变化幅度较小。

1.2 功能详述根据进程请求访问磁盘的先后次序进行调度,首先根据提示输入总的磁道数、提出磁盘I/O申请的进程数、开始磁道号和磁道序列。

通过程序调用函数输出磁盘请求序列和磁盘扫描序列,从而计算出磁头移动的总距离和平均寻道长度。

2 系统设计2.1 系统总体设计2.1.1 数据结构描述void FCFS(int cidao[],int m)输入磁道号,按先来先服务的策略输出磁盘请求序列和磁盘扫描序列,求移动的总距离和平均寻道长度,输出移动的总磁道数和平均寻道长度。

2.1.2 函数功能分析由于一开始要对键盘输入的磁道数和要使用的算法进行一次有效性的判断,我使用了int decide(char str[]),如果输入的信息不是0~9之间的数都将被判定为不合法,合法后才能进行下一步。

操作系统课程设计磁盘调度报告

操作系统课程设计磁盘调度报告

题目:磁盘调度一.设计目的本课程设计是学习完《计算机操作系统》课程后,进行的一次全面的综合训练,通过课程设计,我们更好地掌握操作系统的原理及实现方法,加深对操作系统基础理论和重要算法的理解,加强了动手能力。

二.课程设计内容和要求编程序实现下述磁盘调度算法,并求出每种算法的平均寻道长度,要求设计主界面以灵活选择某算法,且以下算法都要实现:1、先来先服务算法(FCFS)2、最短寻道时间优先算法(SSTF)3、扫描算法(SCAN)4、循环扫描算法(CSCAN)三.算法及数据结构3.1算法的总体思想设备的动态分配算法与进程调度相似,也是基于一定的分配策略的。

常用的分配策略有先请求先分配、优先级高者先分配等策略。

在多道程序系统中,低效率通常是由于磁盘类旋转设备使用不当造成的。

操作系统中,对磁盘的访问要求来自多方面,常常需要排队。

这时,对众多的访问要求按一定的次序响应,会直接影响磁盘的工作效率,进而影响系统的性能。

访问磁盘的时间因子由3部分构成,它们是查找(查找磁道)时间、等待(旋转等待扇区)时间和数据传输时间,其中查找时间是决定因素。

因此,磁盘调度算法先考虑优化查找策略,需要时再优化旋转等待策略。

平均寻道长度(L)为所有磁道所需移动距离之和除以总的所需访问的磁道数(N),即:L=(M1+M2+……+Mi+……+MN)/N其中Mi为所需访问的磁道号所需移动的磁道数。

启动磁盘执行输入输出操作时,要把移动臂移动到指定的柱面,再等待指定扇区的旋转到磁头位置下,然后让指定的磁头进行读写,完成信息传送。

因此,执行一次输入输出所花的时间有:寻找时间——磁头在移动臂带动下移动到指定柱面所花的时间。

延迟时间——指定扇区旋转到磁头下所需的时间。

传送时间——由磁头进程读写完成信息传送的时间。

其中传送信息所花的时间,是在硬件设计就固定的。

而寻找时间和延迟时间是与信息在磁盘上的位置有关。

为了减少移动臂进行移动花费的时间,每个文件的信息不是按盘面上的磁道顺序存放满一个盘面后,再放到下一个盘面上。

IO管理和磁盘调度解析

IO管理和磁盘调度解析

I/O 设备的差别
控制的复杂度 传送单位

数据可以按照字节流或者字符流的形式传送(如终端 I/O),也可以按照大块传送(如磁盘I/O) 数据编码方案,包括字符代码和奇偶约定的差异 错误的本质、报告的方式、后果以及响应随设备的不 同而不同
数据表示

错误条件

I/O功能的组织
常见的三种I/O控制技术: 程序控制 I/O
缓存cache和缓冲buffer的异同
相同之处:都是为了弥补速度差异,都位于相对较快的设 备上,容量相对较小 不同之处: Cache要考虑局部性,重复使用 Buffer有写“化零为整”和预读的作用(write sequencing and read prefetching) Cache中的内容在低速设备中一定还有一份,从而要考虑 同步,相对的Buffer要考虑flush
负荷不均匀问题

缓存cache和缓冲buffer的异同
缓存(cache)是把读取过的数据 保存起来,重新读取 时若命中(找到需要的数据)就不要去读硬盘了,若没 有命中就读硬盘。其中的数据会根据读取频率进行组织 ,把最频繁读取的内容放在最容易找到的位置,把不再 读的内容不断往后排,直至从中删除。 缓冲(buffer)当存储速度快的设备与存储速度慢 的设 备进行通信时,存储慢的设备先把数据存放到buffer, 达到一定程度后,存储快的设备再读取buffer的数据, 在此期间存储快的设备CPU可以干其他 的事情。
中断驱动 I/O



直接存储器存取 (DMA)


DMA 模块控制主存和 I/O模块之间的数据交 换 为传送一块数据,处理器给DMA模块发请求, 只有当整个数据块传送结束后,处理器才被 中断

操作系统精髓与设计原理

操作系统精髓与设计原理

操作系统精髓与设计原理在我们日常使用电脑、手机等电子设备时,操作系统是那个默默工作但又至关重要的幕后英雄。

它管理着设备的硬件资源,为我们运行的各种应用程序提供了一个稳定、高效的环境。

那么,操作系统的精髓究竟是什么?它的设计原理又包含哪些关键要素呢?要理解操作系统的精髓,首先得明白它的核心任务——资源管理。

操作系统就像是一个大管家,负责合理地分配和调度计算机的各种资源,包括处理器、内存、存储设备、输入输出设备等等。

想象一下,如果没有操作系统来协调这些资源,各个程序就会像一群没有指挥的士兵,争抢有限的资源,导致整个系统陷入混乱。

以处理器资源为例,操作系统通过进程调度算法,决定哪个程序在什么时候获得处理器的使用权。

这样可以确保每个程序都能得到公平的机会运行,同时避免某个程序长时间独占处理器而导致其他程序无法响应。

常见的进程调度算法有先来先服务、短作业优先、时间片轮转等。

这些算法根据不同的需求和场景,权衡了公平性、响应时间和系统效率等因素。

内存管理也是操作系统的重要职责之一。

它要确保程序能够安全、高效地使用内存。

操作系统通过虚拟内存技术,让程序以为自己拥有了大片连续的内存空间,实际上是在物理内存和磁盘之间进行灵活的页面交换。

这样,即使物理内存有限,也能运行大型的程序。

同时,操作系统还负责内存的分配和回收,避免内存泄漏和碎片问题。

除了资源管理,操作系统还提供了一个抽象的接口,让用户和应用程序能够更方便地与硬件进行交互。

比如,我们不需要了解磁盘的具体读写机制,只需要通过操作系统提供的文件系统来进行文件的创建、读取和删除操作。

这种抽象化大大降低了使用计算机的难度,提高了开发效率。

在操作系统的设计原理中,并发和并行是两个关键概念。

并发是指多个程序在同一时间段内交替执行,而并行则是指多个程序在同一时刻同时执行。

操作系统通过进程和线程机制来实现并发和并行。

进程是程序的一次执行过程,而线程是进程中的执行单元。

通过合理地创建和管理进程和线程,操作系统能够充分利用多核处理器的优势,提高系统的性能。

I/O管理与磁盘调度

I/O管理与磁盘调度
机械部分:设备本身(物理装置) 电子部分:称作设备控制器(device controller)或适配
器(adapter), 在小型和微型机中常采用印刷电路卡插 入计算机(接口)中
OS差不多总是跟控制器而不是设备本身打交道, 即控制器完成设备与主机间的连接和通讯
Hale Waihona Puke 设备组成(续)控制器卡上通常有一个可插接的连接器,通过电 缆与设备内部相连
DMA模块与I/O模块的数据交换脱离系统总线 DMA模块接口多样
I/O总线
DMA模块与I/O模块的数据交换脱离系统总线 DMA模块接口单一,便于扩展
DMA的配置方式(续)
11.3 操作系统设计问题
主要内容:
I/O机制的设计目标
效率——最重要(I/O瓶颈),最关注的是磁盘I/O 通用性——统一处理方式,困难
逻辑I/O(续)
缓冲:通过缓冲区来协调设备的读写速度和用户进程 的读写速度
块设备的存储分配:磁盘空闲块管理 分配和释放独占设备:对独占设备的使用请求进行检
查 错误报告:报告设备驱动程序无法处理的出错信息
设备I/O
逻辑设备与物理设备间的过渡协调机构
用户命令到设备操作序列的转换 I/O缓冲:提高I/O效率
I/O操作完成前CPU处于忙等待状态(不停检测是否完 成)
中断驱动方式(interrupt-driven I/O) 操作系统将I/O命令(带参数)写入控制器寄存器中 CPU可以转去执行其他运算 I/O操作完成时控制器产生一个中断
DMA(Direct Memory Access,直接内存访问) 由DMA模块控制内存和I/O设备之间的数据交换 CPU仅仅在整个数据块的传送都完成时才被中断
逻辑I/O(设备无关的I/O软件)

《操作系统精髓与设计原理·第五版》习题答案

《操作系统精髓与设计原理·第五版》习题答案

第1章计算机系统概述1.1、图1.3中的理想机器还有两条I/O指令:0011 = 从I/O中载入AC0111 = 把AC保存到I/O中在这种情况下,12位地址标识一个特殊的外部设备。

请给出以下程序的执行过程(按照图1.4的格式):1.从设备5中载入AC。

2.加上存储器单元940的内容。

3.把AC保存到设备6中。

假设从设备5中取到的下一个值为3940单元中的值为2。

答案:存储器(16进制内容):300:3005;301:5940;302:7006步骤1:3005->IR;步骤2:3->AC步骤3:5940->IR;步骤4:3+2=5->AC步骤5:7006->IR:步骤6:AC->设备61.2、本章中用6步来描述图1.4中的程序执行情况,请使用MAR和MBR扩充这个描述。

答案:1. a. PC中包含第一条指令的地址300,该指令的内容被送入MAR中。

b. 地址为300的指令的内容(值为十六进制数1940)被送入MBR,并且PC增1。

这两个步骤是并行完成的。

c. MBR中的值被送入指令寄存器IR中。

2. a. 指令寄存器IR中的地址部分(940)被送入MAR中。

b. 地址940中的值被送入MBR中。

c. MBR中的值被送入AC中。

3. a. PC中的值(301)被送入MAR中。

b. 地址为301的指令的内容(值为十六进制数5941)被送入MBR,并且PC增1。

c. MBR中的值被送入指令寄存器IR中。

4. a. 指令寄存器IR中的地址部分(941)被送入MAR中。

b. 地址941中的值被送入MBR中。

c. AC中以前的内容和地址为941的存储单元中的内容相加,结果保存到AC中。

5. a. PC中的值(302)被送入MAR中。

b. 地址为302的指令的内容(值为十六进制数2941)被送入MBR,并且PC增1。

c. MBR中的值被送入指令寄存器IR中。

6. a. 指令寄存器IR中的地址部分(941)被送入MAR中。

操作系统-精髓与设计原理 WILLIAM STALLINGS 课后答案

操作系统-精髓与设计原理 WILLIAM STALLINGS 课后答案

www.khd课a后答w案.网com
-2-
www.khd课后a答w案.网com
TABLE OF CONTENTS Chapter 1 Computer System Overview...............................................................4 Chapter 2 Operating System Overview...............................................................7 Chapter 3 Process Description and Control........................................................8 Chapter 5 Concurrency: Mutual Exclusion and Synchronization .................10 Chapter 6 Concurrency: Deadlock and Starvation ..........................................17 Chapter 7 Memory Management .......................................................................20 Chapter 8 Virtual Memory ..................................................................................22 Chapter 9 Uniprocessor Scheduling...................................................................28 Chapter 11 I/O Management and Disk Scheduling ........................................32 Chapter 12 File Management ..............................................................................34
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第十一章 I/O管理和磁盘调度复习题11.1列出并简单定义执行I/O的三种技术。

·可编程I/O:处理器代表进程给I/O模块发送给一个I/O命令,该进程进入忙等待,等待操作的完成,然后才可以继续执行。

·中断驱动I/O:处理器代表进程向I/O模块发送一个I/O命令,然后继续执行后续指令,当I/O模块完成工作后,处理器被该模块中断。

如果该进程不需要等待I/O完成,则后续指令可以仍是该进程中的指令,否则,该进程在这个中断上被挂起,处理器执行其他工作。

·直接存储器访问(DMA):一个DMA模块控制主存和I/O模块之间的数据交换。

为传送一块数据,处理器给DMA模块发送请求,只有当整个数据块传送完成后,处理器才被中断。

11.2逻辑I/O和设备I/O有什么区别?·逻辑I/O:逻辑I/O模块把设备当作一个逻辑资源来处理,它并不关心实际控制设备的细节。

逻辑I/O模块代表用户进程管理的一般I/O功能,允许它们根据设备标识符以及诸如打开、关闭、读、写之类的简单命令与设备打交道。

·设备I/O:请求的操作和数据(缓冲的数据、记录等)被转换成适当的I/O指令序列、通道命令和控制器命令。

可以使用缓冲技术,以提高使用率。

11.3面向块的设备和面向流的设备有什么区别?请举例说明。

面向块的设备将信息保存在块中,块的大小通常是固定的,传输过程中一次传送一块。

通常可以通过块号访问数据。

磁盘和磁带都是面向块的设备。

面向流的设备以字节流的方式输入输出数据,其末使用块结构。

终端、打印机通信端口、鼠标和其他指示设备以及大多数非辅存的其他设备,都属于面向流的设备。

11.4为什么希望用双缓冲区而不是单缓冲区来提高I/O的性能?双缓冲允许两个操作并行处理,而不是依次处理。

典型的,在一个进程往一个缓冲区中传送数据(从这个缓冲区中取数据)的同时,操作系统正在清空(或者填充)另一个缓冲区。

11.5在磁盘读或写时有哪些延迟因素?寻道时间,旋转延迟,传送时间11.6简单定义图11.7中描述的磁盘调度策略。

FIFO:按照先来先服务的顺序处理队列中的项目。

SSTF:选择使磁头臂从当前位置开始移动最少的磁盘I/O请求。

SCAN:磁头臂仅仅沿一个方向移动,并在途中满足所有未完成的请求,直到它到达这个方向上最后一个磁道,或者在这个方向上没有其他请求为止。

接着反转服务方向,沿相反方向扫描,同样按顺序完成所有请求。

C-SCAN:类似于SCAN,11.7简单定义图7层RAID。

0:非冗余1:被镜像;每个磁盘都有一个包含相同数据的镜像磁盘。

2:通过汉明码实现冗余;对每个数据磁盘中的相应都计算一个错误校正码,并且这个码位保存在多个奇偶校验磁盘中相应的文件。

3:交错位奇偶校验;类似于第二层,不同之处在于RAID3为所有数据磁盘中同一位置的位的集合计算一个简单的奇偶校验位,而不是错误校正码。

4:交错块分布奇偶校验;对每个数据磁盘中相应的条带计算一个逐位奇偶。

5:交错块分布奇偶校验;类似于第四层,但把奇偶校验条带分布在所有磁盘中。

6:交错块双重分布奇偶校验;两种不同的奇偶校验计算保存在不同磁盘的不同块中。

11.8典型的磁盘扇区大小是多少?512比特习题11.1考虑一个程序访问一个I/O设备,并比较无缓冲的I/O和使用缓冲区的I/O。

说明使用缓冲区最多可以减少2倍的运行时间。

如果计算的时间正好等于它的I/O时间(它是最佳环境),操作者和外围设备同时运行。

如果单独运行,只要花费他们的一半时间,设C是整个程序的计算时间,T为所要求总的I/O时间,因而寄存器最好的运行时间是max(C,T),不需要寄存器的运行时间是C+T,显然((C+T)/2)≤max(C,T)≤(C+T).11.2把习题11.1的结论推广到访问n个设备的程序中。

最佳比是(n+1)﹕n11.3使用与表11.2类似的方式,分析下列磁道请求:27,129,110,186,147,41,10,64,120。

假设磁头最初定位在磁道100处,并且沿着磁道号减11.4机地均匀分布在磁盘上。

现在要计算一次寻道平均跨越的磁道数。

a.首先,计算当磁头当前位于磁道t时,寻道长度为j的可能性。

提示:这是一个关于确定所有组合数目的问题,所有磁道位置作为寻道目标的可能性是相等的。

b.接下来计算寻道长度为K的可能性。

提示:这包括所有移动了K个磁道的可能性之和。

c.使用下面计算期望值得公式,计算一次寻道平均跨越的磁道数目:N-1E[X]=∑i∑Pr[x=i]i=0d.说明档N比较大时,一次寻道平均跨越的磁道数接近N/3.(a)设P[j/t]表示位于磁道t,寻道长度为j的概率,知随机访问一个任何一个磁道的可能性为相等为1/N,因此我们有P[j/t]=1/N,t<=j-1或者t>=N-j;P[j/t]=2/N,j-1<t<N-j.前一种情况下,当前磁道接近于磁盘的两端。

因此只有一个相距j长度的磁道,故为2/N。

(b)令P[k]=∑P[k/t]*P[t]=1/N∑P[k/t],由(a)可知,取值1/N的有2k个磁道,取值为2/N有(N-k)个,所以有P[k]=(2k/N+2(N-k)/N)/N=2(N-k)/N*N(c)E[k]=∑k*P[k]=∑2k(N-k)/N*N=(N*N-1)/3N(d)当N比较大时,从上文可以看出一次寻道平均跨越磁道数接近N/311.5下面的公式适用于高速缓冲存储器和磁盘高速缓存:Ts=Tc+M×Td请把这个公式推广到N级存储器结构,而不是仅仅2级。

定义:Ai=从i级存储器找到信息的时间;Hi=消息在第i级存储器并且没有在更高级存储器的概率;Bi=从第(i+1)级向第i级传送一块数据的时间。

假设缓存在1级存储上,主存在2级存储上,如此下去,形成一个N 级存储结构,因此有Ts=∑AiHi若消息在M1层,可以立即被读,如果在M2中,不在M1中,那么这块数据从M2传到M1中再读。

因此 A2=B1+A1进而有 A3=B2+A2=B1+B2+A1即有 Ai=A1+∑Bj所以 Ts=T1∑Hi+∑∑BjHi因为∑Hi=1最后可得 Ts=T1+∑∑BjHi11.6对基于频率的替换算法(见图11.12),定义F new,F middle和Fold分别为包含新区,中间区和的高速缓存片段,显然F new+F middle+Fold=1.如果有a.Fold=1—F newb. Fold=1/(高速缓存大小)请分别描述该策略。

a.图11.11的中间区是空的,因此这种策略退化为图11.11a的策略。

b.老区由一块组成,并且我们有LRU替换策略。

11.7对于一个有9个磁道的磁带,磁带速度为120英寸每秒,磁带密度为1600线位/英寸,请问它的传送率为多少?密度可表示为1600线位每英寸,因此传送速率为1600×1200=192000线位每秒。

11.8假设有一个2400英寸的磁带盘,记录间的间隙为0.6英寸,这个间隙是磁带在读操作之间的停止;在间隙期间磁带速度成线性增加或减小,磁带的其他与习题11.7相同。

磁带上的数据按物理记录组织,每个物理记录包含固定数目的由用户定义的单元,称为逻辑记录。

a.在磁带上读取分装在10个物理记录中的120个逻辑记录需要多少时间?b.同样。

如果是分装在30个物理记录中,则需要多少时间?c.对于上述每种分块方案,整个磁带分别可以保存多少个逻辑记录?d.对于上述每种分块方案,有效的总传速率分别是多少?e.磁带的容量是多少?假设每个记录由30块组成。

b.我们先定义从一个物理块加间隙到了另一块的读取时间物理块的大小=(30个逻辑记录每物理记录)×(120比特每逻辑记录)=3600字节物理块的长度=3600字节/(1600比特/英寸)=2.35英寸间隙的长度=0.6英寸传输一个块加间隙的传输时间=2.25/120+0.6/60=0.02875秒磁带上块的数目=(2400×12)/(2.25+0.6)=10105物理块因此,读取时间为 10105×0.02875=291秒c.如果分装在30个物理记录中,磁带包含10105个物理记录和30×10105=303150个逻辑记录。

d.分装在30个物理记录中的有效传输数率:R=(303150×120)/291=125010字节/秒e.容量=303150×120=36378000字节11.9如果磁盘中扇区大小固定为每扇区为512字节,并且每磁道96个磁区,每面110个磁道,一共有8个可用的面,对于习题11.8(b),计算存储这些逻辑记录需要多少磁盘空间(扇区、磁道和面)。

忽略文件头记录和磁道索引,并假设记录不能跨越两个扇区。

每个扇区能容纳4个记录,所需扇区数=303150/4=75788所需磁道数=75788/96=790所需面数=790/110=811.10考虑习题11.9所描述的磁盘系统,假设该磁盘的旋转速度为360r/m。

一个处理器使用中断驱动I/O从磁盘中读取一个扇区,每个字节一个中断。

如果处理每个中断需要2.5us,处理器花费在处理I/O上的时间占多少百分比(忽略寻道时间)?每扇区512字节,每字节一个中断,所以每扇区512个中断。

中断总时间=2.5×512=1280us。

每个扇区读取时间=60s/m×360r/m×96扇区/磁道=1736us处理器花费在处理I/O上的时间百分比=100×1280/1736=74%11.11如果使用DMA策略并假设每个扇区一个中断,重做习题11.10。

使用DMA策略,中断总时间=2.5us处理器花费在处理I/O上的时间百分比=100×2.5/1736=0.14%11.12一个32位计算机有两个选择通道和一个多路通道,每个选择通道支持两个磁盘和两个磁带部件。

多路通道有两个行式打印机、两个卡片阅读机,并连接着10个VDT终端。

假设有以下的传送率:磁盘驱动器 800KB/s磁带驱动器 200KB/s行式打印机 6.6KB/s卡片阅读机 1.2KB/sVDT 1KB/s系统中的最大合计传送率为多少?每次只有一个驱动设备能在选择通道上得到服务,因此,最大速率=800+800+2×6.6+2×1.2+10×1=1625.6KB/s11.13当条带大小比I/O大小小时,磁盘条带化显然可以提高数据传送率。

同样,相对于单个的大磁盘,由于RAID 0可以并行处理多个I/O请求,显然它可以提高性能。

但是,相对于后一种情况,磁盘条带化还有必要存在吗?也就是说,相对于没有条带化的磁盘阵列,磁盘条带化可以提高I/O请求速度的性能吗?这取决于I/O请求类型。

相关文档
最新文档