厦门大学操作系统5-6章习题讲解

合集下载

操作系统第六章答案

操作系统第六章答案

第六章文件管理1、何谓数据项、记录和文件?P203 P204答:数据项:数据项是最低级的数据组织形式,是数据组中可以命名的最小逻辑数据单位,若干个基本数据项组成的。

记录:记录是一组相关数据项的集合,用于描述一个对象在某方面的属性。

文件:文件是指由创建者所定义的、具有文件名的一组相关元素的集合,可分为有结构文件和无结构文件两种。

在有结构的文件中,文件由若干个相关记录组成;而无结构文件则被看成是一个字符流。

文件在文件系统中是一个最大的数据单位,它描述了一个对象集。

2、文件系统的模型可分为三层,试说明其每一层所包含的基本内容。

P206图答:1、对象及其属性:文件、目录、硬盘(磁带)存储空间;2、对对象操纵和管理的软件集合:文件管理系统的核心部分;3、文件系统的接口:命令接口、程序接口;3、试说明用户可以对文件施加的主要操作有哪些。

P207答:1、最基本的文件操作:创建文件、删除文件、读文件、写文件、截断文件、设置文件的读/写位置;2、文件的“打开”和“关闭”操作;3、其它文件操作;4、何谓逻辑文件?何谓物理文件?P208答:逻辑文件:这是从用户观点出发所观察到的文件组织形式,是用户可以直接处理的数据及其结构,它独立于文件的物理特性,又称为文件组织。

物理结构:又称为文件的存储结构,是指文件在外存上的存储组织形式。

这不仅与存储介质的存储性能有关,而且与所采用的外存分配方式有关。

5、如何提高对变长记录顺序文件的检索速度?P210答:对于变长记录的顺序文件,在顺序读或写时的情况相似,但应分别为它们设置读或写指针,在每次读或写完一个记录后,须将读或写指针加上Li。

Li 是刚读或刚写完的记录的长度。

6、试说明对索引文件和索引顺序文件的检索方法。

P211 P212答:在对索引文件进行检索时,首先是根据用户(程序)提供的关键字,并利用折半查找法去检索索引表,从中找到相应的事项;再利用该表项中给出的指向记录的指针值,去访问所需的记录。

操作系统第五章课后习题讲解

操作系统第五章课后习题讲解

图5.10
图5.11
第五章课后习题讲解
LOGO
这个状态是安全的。 解:这个状态是安全的。 因为C={3 C={3, }而Allocation={2, 因为C={3,7,2,3 }而Allocation={2,5,1, 2}则Available={1, 1}。 2}则Available={1,2,1,1}。 NEED 进程 P0 P1 P2 P3 P4 R0 1 2 3 3 0 R1 3 3 1 1 2 R2 1 1 2 0 1 R3 1 1 3 3 1
每个进程均只允许申请1 答:4个。每个进程均只允许申请1台,每个进程 Allocation均为 均为1 因为max max为 Available为 Allocation均为1,因为max为2,则Available为1。 此时,总共的Allocation Allocation为 所以,最多允许4 此时,总共的Allocation为4,所以,最多允许4 个进程参与竞争。 个进程参与竞争。
第五章课后习题讲解
LOGO
5.11 考虑图5.9所示的资源分配图,哪个进 程会发生死锁?
图5.9
P3、P4会发生死锁 因为P3 R3、P4、R4形成 会发生死锁。 P3、 答:P3、P4会发生死锁。因为P3、R3、P4、R4形成 环路。 环路。
第五章课后习题讲解
LOGO
5.13 假定一个系统具有四个系统类型,C={3,7, 2,3},最大资源需求数表如图5.10所示。资源分 配器根据图5.11中的表来分配资源,这个状态安 全吗?为什么?
1 3 1 1 3 4 1 2 1 2 1 1 2 3 1 1 3 6 1 3 3 1 2 3 3 7 2 3 3 1 0 3 3 6 2 3 0 2 1 1 1 3 1 2

厦门大学操作系统5-6章习题讲解资料

厦门大学操作系统5-6章习题讲解资料
– 一个或多个过程 – 一个初始化序列 – 局部数据
P177复习题5.13
• 与读者-写者问题相关联的条件:
– 任意多的读进程可以同时读一个文件 – 一次只有一个写进程可以往文件中写 – 如果一个写进程正在往文件中写时,则禁止任 何读进程读文件
P179习题5.2
• 一个并发程序,它的两个进程p与q,A、B、 C、D、E是任意的原子语句。设主程序执 行两个进程的parbegin。 void p(){A;B;C;} void q(){D;E;} 给出这两个进程所有可能的交替执行(根 据原子语句给出执行轨迹)
P182习题5.3
b、在a的假设下,允许任意多的进程并发执 行,tally值的范围?
对一般有N个进程的情况,tally值的最终范围 是[2,N*50],因为对其他所有进程来说,从最初开始运 行到在第五步完成.但最后都被进程B破坏掉它们的 最终结果.
P182习题5.13
• 考虑图5.10中定义的无限缓冲 区生产者/消费者问题的解决方 案,设生产者与消费者都以大 致相同的速度运行,运行情况 如下: 生产者: append;semSignal;produce;...; append;semSignal;produce;...; 消费者: consume;...;take;semWait;con sume;...;take;semWait;...; • 生产者通常管理给缓冲区添加 一个新元素,并在消费者消费 了前面的元素后发出信号。生 产者通常添加到一个空缓冲区 中,而消费者通常取走缓冲区 中的惟一元素。消费者从不在 信号量上阻塞,但必须进行大 量的信号量调用,产生相当多 的开销。 构造新程序,使之更有效。 提示:允许n的值为-1,这表示不 仅缓冲区为空,而且消费者也 检测到这个事实并将被阻塞, 直到生产者产生新的数据。这 个方案不要图5.10中的局部变 量m 。

操作系统课后答案详细讲解

操作系统课后答案详细讲解

操作系统课后答案详细讲解第一章操作系统引论思量与练习题1.什么是操作系统?它的主要功能是什么?2.什么是多道程序设计技术?多道程序设计技术的主要特点是什么?3.批处理系统是怎样的一种操作系统?它的特点是什么?4.什么是分时系统?什么是实时系统?试从交互性,准时性,自立性,多路性,牢靠性等几个方面比较分时系统和实施系统。

5.实时系统分为哪俩种类型?6.操作系统主要特征是什么?7.操作系统也用户的接口有几种?它们各自用在什么场合?8.“操作系统是控制硬件的软件”这一说法确切吗?为什么?9.设存中有三道程序,A,B,C,它们按A~B~C的先后挨次执行,它们举行“计算”和“I/o操作”的时光如表1-2所示,假设三道程序使用相同的I/O设备。

(1)试画出单道运行时三道程序的时光关系图,并计算完成三道程序要花多少时光。

(2)试画出多道运行时三道程序的时光关系图,并计算完成三道程序要花多少时光。

10.将下列左右两列词衔接起来形成意义最恰当的5对。

DOS 网络操作系统OS/2 自由软件UNIX 多任务Linux 单任务Windows NT 为开发操作系统而设计C语言11.挑选一个现代操作系统,查找和阅读相关的技术资料,写一篇关于操作系统如何举行存管理、存储管理、设备管理和文件管理的文章。

答案1.答:操作系统是控制和管理计算机的软、硬件资源,合理地组织计算机的工作流程,以便利用户使用的程序集合。

2.答:把多个自立的程序同时放入存,使她们分享系统中的资源。

1)多道,即计算机存中同时放多道互相自立的程序。

2)宏观上并行,是指共识进入系统的多道程序都处于运行过程。

3)微观上串行,是指在单道处理机环境下,存中的多道程序轮番地占有CPU,交替执行。

3.答:批处理操作系统是一种基本的操作系统类型。

在该系统中用户的作业被成批地输入到计算机中,然后在操作系统的控制下,用户的作业自动的执行。

特点是:资源利用率高。

系统吞吐量大。

平均周转时光长。

【最新精选】操作系统第5章作业答案

【最新精选】操作系统第5章作业答案

赵盈盈 2011210593 第五章作业1. 存储管理的功能及目的是什么?答:存储管理功能:内存分配与管理。

(1)记住每个存储区域的状态。

(2)实施分配。

分配方式有两种:静态分配与动态分配(3)回收。

内存共享。

共享的信息包括:代码共享(纯代码),数据共享存储保护。

存储保护内容有:保护系统程序区不受用户有意无意的侵犯;不允许用户程序写不属于自己地址空间的数据。

(1)以防止地址越界;(2)以防止操作越权“扩充”内存容量。

具体实现是在硬件支持下,软件硬件相互协作,将内存与外存结合起来统一使用。

地址映射。

也称作重定位。

将逻辑地址转换成物理地址。

有两种方法:静态地址映射,动态地址映射。

存储管理目的:充分利用内存,为多道程序并发执行提供存储基础;尽可能方便用户使用;解决程序空间比实际内存空间大的问题;程序在执行时可以动态伸缩;内存存取速度快;存储保护与安全;共享与通信;了解有关资源的使用状况;实现的性能和代价;2. 什么是逻辑地址?什么是物理地址?为什么要进行二者的转换工作?答:逻辑地址:就是cpu逻辑段管理内存而形成的地址。

物理地址:就是程序或数据在内存中的实际地址,即内存单元的地址,也就是被装入内存的内存地址寄存器的地址。

转换原因:当程序装入内存时,操作系统要为之分配一个合适的内存空间,由于程序逻辑地址与所分配到的内存物理地址编号不一致,而cpu执行指令时是按物理地址进行的,所以要进行地址转换。

3. 什么是动态地址重定位?试用图画出动态地址重定位的过程。

答:动态地址重定位就是指动态地址映射。

是地址映射的一种方式。

它是在程序执行过程中要访内存空间4. 在分区分配方案中,回收一个分区时有几种不同的邻接情况,在各种情况下应如何处理? 答:有四种:上邻,下邻,上下相邻,上下不相邻。

(1)回收分区的上邻分区是空闲的,需要将两个相邻的空闲区合并成一个更大的空闲区,然后修改空闲区表。

(2)回收分区的下邻分区是空闲的,需要将两个相邻的空闲区合并成一个更大的空闲区,然后修改空闲区表。

操作系统第六章习题及答案

操作系统第六章习题及答案

1、 假定盘块的大小为1KB ,硬盘的大小为500MB,采用显式链接分配方式时,其FAT 表需占用多少存储空间?如果文件A 占用硬盘的第11、12、16、14四个盘块,试画出文件A 中各盘块间的链接情况及FAT 的情况。

(假定FAT 表项的长度通常取半个字节的整数倍)。

提示:FAT 表项数目由磁盘的物理盘块数决定,而表项的长度有磁盘系统的最大盘块号决定。

根据题意,该硬盘共有500K 个盘块,故FAT 中共有500K 个表项,若盘块从1开始编号,为了能保存最大的盘块号500K ,该FAT 表项最少需要19位,将它扩展为半个字节的整数倍后,可知每个FAT 表项需要20位,即2.5个字节。

因此,FAT 需占用的存储空间为2.5*500KB=1250KB.文件A 中各盘块间的链接情况及FAT 的情况2、 请分别解释在连续分配方式、隐式链接分配方式、显式链接分配方式和索引分配方式中如何将文件的字节偏移量3500转换为物理块号和块内位移量。

(设盘块大小为1KB,盘块号需4个字节。

)提示:先将字节偏移量转换成逻辑块号和块内位移量。

(1) 连续分配方式:字节偏移量3500转换成逻辑块号和块内位移量为3500/1024=3 (428)可从相应文件的FCB 中得到分配给该文件的起始物理盘块号,假设为a0,字节偏移量3500相应的物理块号为a0+3,块内位移量为428。

(2) 隐式链接分配方式:由于每个盘块中需要留出4个字节来存放分配给文件的下一个盘块的块号,因此字节偏移量3500的逻辑块号为3500/1020=3 (440)从相应文件的FCB 中可获得分配给该文件的首个(即第0个)盘块的块号,如b0,然后可通过读第b0块获得分配给文件的第1个盘块的块号,如b1;在从b1块中得到第2块的块号,如b2;从b2块中得到第3块的块号,如b3。

因此可得到字节偏移量3500对应的物理块号b3,而块内偏移量为440。

(3) 显式链接分配方式:字节偏移量3500转换成逻辑块号和块内位移量为3500/1024=3 (428)可从相应文件的FCB 中得到分配给该文件的首个物理盘块的块号,如c0,然后从FAT 表的第c0项中得到分配给文件的第一个盘块的块号,如c1;再在FAT 表的第c1项中得到分配给文件的第2个盘块的块号c2;在FAT 表的第c2项中得到分配给文件的第3个盘块的块号c3。

操作系统第五章课后习题

操作系统第五章课后习题

1.常规存储器管理方式具有哪两大特征?它对系统性能有何影响?特点:一次性和驻留性。

影响:一次性及驻留性特征使得许多在程序中不用或暂时不用的程序(数据)占据了大量的内存空间,而一些需要运行的作业又无法装入运行,显然,这是在浪费宝贵的内存资源。

2.什么是程序运行时的时间局限性和空间局限性?时间局限性:如果程序中的某条指令被执行,则不久之后该指令可能再次执行;如果某数据被访问过,则不久以后该数据可能再次被访问。

产生时间局限性的典型原因是在程序中存在着大量的循环操作。

空间局限性:一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也将被访问,即程序在一段时间内所访问的地址可能集中在一定的范围之内,其典型情况便是程序的顺序执行。

3.虚拟存储器有哪些特征?其中最本质的特征是什么?多次性、对换性、虚拟性。

最基本特征是虚拟性。

4.实现虚拟存储器需要哪些硬件支持?分页请求系统:请求分页的页表机制、缺页中断机构、地址变换机构。

请求分段系统:请求分段的段表机制、缺段中断机构、地址变换机构。

5.实现虚拟存储器需要哪几个关键技术?(1)在分页请求系统中是在分页的基础上,增加了请求调页功能和页面置换功能所形成的页式虚拟存储系统。

允许只装入少数页面的程序(及数据),便启动运行。

(2)在请求分段系统中是在分段系统的基础上,增加了请求调段及分段置换功能后形成的段式虚拟存储系统。

允许只装入少数段(而非所有段)的用户程序和数据,即可启动运行。

6.在请求分页系统中,页表应包括哪些数据项?每项的作用是什么?(1)状态位(存在位)P:它用于指示该页是否已调入内存,供程序访问时参考。

(2)访问字段A:用于记录本页在一段时间内被访问的次数,或记录本页最近已有多长时间未被访问,提供给置换算法(程序)在选择换出页面时参考。

(3)修改位M:标识该页再调入内存后是否被修改过。

(4)外存地址:用于指出该页在外存上的地址,通常是物理块号,供调入该页时参考。

操作系统教程第5章文件管理(参考答案)

操作系统教程第5章文件管理(参考答案)

操作系统教程第5章文件管理(参考答案)第5章文件管理1.单项选择题答案:AADAC CCACD2.答:文件是以文件名字标识的在计算机上存储的信息集合。

文件包括两部分:文件体和文件说明。

文件体是文件本身的信息;文件说明是文件存储和管理的信息,如文件名、文件内部标识、文件存储地址、访问权限、访问时间等。

3. 答:按文件性质和用途分:系统文件、库文件、用户文件;按文件的逻辑存储结构分:有结构文件、无结构文件;按文件保护方式分:只读文件、可读可写文件、可执行文件;按使用情况分:临时文件、永久文件、档案文件;按用户观点分:普通文件、目录文件、特殊文件;按存取的物理结构分:顺序文件、链接文件、索引文件。

4. 答:创建文件、打开文件、关闭文件、撤销文件、复制文件、移动文件、文件更名、文件列表等。

5. 答:文件系统是操作系统中统一管理信息资源的一种软件,管理文件的存储、检索、更新,提供对信息安全可靠的共享和保护手段,并且方便用户使用。

从系统角度来看,文件系统是对文件存储器的存储空间进行组织、分配和回收,负责文件的存储、检索、共享和保护。

从用户角度来看,文件系统主要是实现“按名取存”,用户只要知道所需文件的名字,就可存取文件中的信息,而无需知道这些文件究竟存放在什么地方。

6.答:分为无结构的流式文件和有结构的记录式文件。

无结构的流式文件:文件是由用户创建的,对文件内信息不再划分单位,它是以一串字符流构成的文件。

有结构的记录式文件:是用户把文件内的信息按逻辑上独立的含义划分信息单位,每个单位称为一个逻辑记录(简称记录)。

记录式文件是由若干个记录组成,每个记录有一个键,可按键进行查找。

7.答:优点:既能顺序存取,又能随机存取,满足了文件动态增长、插入删除的要求,能够充分利用外存空间。

缺点:较多的寻道次数和寻道时间,索引表本身带来了系统开销。

8.答:逻辑文件:文件结构是用户所观察到的文件组织形式,逻辑文件是用户可直接处理的数据内容,它独立于物理特性,又称为组织文件。

(最新整理)操作系统第五章作业参考答案

(最新整理)操作系统第五章作业参考答案

(完整)操作系统第五章作业参考答案编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)操作系统第五章作业参考答案)的内容能够给您的工作和学习带来便利。

同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。

本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为(完整)操作系统第五章作业参考答案的全部内容。

第五章作业参考答案1. 旋转型设备上信息的优化分布能减少为若干个I/O服务的总时间.设磁鼓上分为20个区,每区存放一个记录,磁鼓旋转一周需20毫秒,读出每个记录平均需用1毫秒,读出后经2毫秒处理,再继续处理下一个记录。

在不知当前磁鼓位置的情况下:(1)顺序存放记录1、……,记录20时,试计算读出并处理20个记录的总时间;(2)给出优先分布20个记录的一种方案,使得所花的总处理时间减少,且计算出这个方案所花的总时间。

答:定位第1个记录需10ms。

读出第1个记录,处理花2ms,这时已到了第4个记录,再转过18个记录(花18ms)才能找到记录2,所以,读出并处理20个记录的总时间:10+3+(1+2+18)×19=13+21×19=412ms如果给出优先分布20个记录的方案为:1,8,15,2,9,16,3,10,17,4,11,18,5,12,19,6,13,20,7,14.当读出第1个记录,花2ms处理后,恰好就可以处理记录2,省去了寻找下一个记录的时间,读出并处理20个记录的总时间:10+3+3×19=13+247=260ms2。

现有如下请求队列:8,18,27,129,110,186,78,147,41,10,64,12;试用查找时间最短优先算法计算处理所有请求移动的总柱面数。

假设磁头当前位置下在磁道100.答:处理次序为:100—110-129-147—186-78-64-41—27-18-12—10—8.移动的总柱面数:264.4。

(完整版)操作系统教程第5版课后答案解析

(完整版)操作系统教程第5版课后答案解析

操作系统教程第5版课后答案费祥林、骆斌编著第一章操作系统概论习题一一、思考题1.简述现代计算机系统的组成及层次结构。

答:现代计算机系统由硬件和软件两个部分组成。

是硬件和软件相互交织形成的集合体,构成一个解决计算问题的工具。

硬件层提供基本可计算的资源,包括处理器、寄存器、内存、外存及I/O设备。

软件层由包括系统软件、支撑软件和应用软件。

其中系统软件是最靠近硬件的。

2、计算机系统的资源可分成哪几类?试举例说明。

答:包括两大类,硬件资源和信息资源。

硬件资源分为处理器、I/O设备、存储器等;信息资源分为程序和数据等。

3•什么是操作系统?操作系统在计算机系统中的主要作用是什么?答:操作系统是一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。

操作系统在计算机系统中主要起4个方面的作用。

(1)服务用户观点一—操作系统提供用户接口和公共服务程序(2)进程交互观点一—操作系统是进程执行的控制者和协调者(3)系统实现观点一—操作系统作为扩展机或虚拟机(4)资源管理观点一—操作系统作为资源的管理者和控制者4.操作系统如何实现计算与操作过程的自动化?答:大致可以把操作系统分为以下几类:批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统。

其中批处理操作系统能按照用户预先规定好的步骤控制作业的执行,实现计算机操作的自动化。

又可分为批处理单道系统和批处理多道系统。

单道系统每次只有一个作业装入计算机系统的主存储器运行,多个作业可自动、顺序地被装入运行。

批处理多道系统则允许多个作业同时装入主存储器,中央处理器轮流地执行各个作业,各个作业可以同时使用各自所需的外围设备,这样可以充分利用计算机系统的资源,缩短作业时间,提高系统的吞吐率5 •操作系统要为用户提供哪些基本的和共性的服务?答:(1)创建程序和执行程序;(2)数据I/O和信息存取;(3)通信服务;(4)差错检测和处理。

操作系统 第五章作业参考答案

操作系统 第五章作业参考答案

第五章作业参考答案1.旋转型设备上信息的优化分布能减少为若干个I/O服务的总时间。

设磁鼓上分为20个区,每区存放一个记录,磁鼓旋转一周需20毫秒,读出每个记录平均需用1毫秒,读出后经2毫秒处理,再继续处理下一个记录。

在不知当前磁鼓位置的情况下:(1)顺序存放记录1、……,记录20时,试计算读出并处理20个记录的总时间;(2)给出优先分布20个记录的一种方案,使得所花的总处理时间减少,且计算出这个方案所花的总时间。

答:定位第1个记录需10ms。

读出第1个记录,处理花2ms,这时已到了第4个记录,再转过18个记录(花18ms)才能找到记录2,所以,读出并处理20个记录的总时间:10+3+(1+2+18)×19=13+21×19=412ms如果给出优先分布20个记录的方案为:1,8,15,2,9,16,3,10,17,4,11,18,5,12,19,6,13,20,7,14。

当读出第1个记录,花2ms 处理后,恰好就可以处理记录2,省去了寻找下一个记录的时间,读出并处理20个记录的总时间:10+3+3×19=13+247=260ms2.现有如下请求队列:8,18,27,129,110,186,78,147,41,10,64,12;试用查找时间最短优先算法计算处理所有请求移动的总柱面数。

假设磁头当前位置下在磁道100。

答:处理次序为:100-110-129-147-186-78-64-41-27-18-12-10-8。

移动的总柱面数:264。

4.某文件为连接文件,由5个逻辑记录组成,每个逻辑记录的大小与磁盘块大小相等,均为512字节,并依次存放在50、121、75、80、63号磁盘块上。

现要读出文件的1569字节,问访问哪一个磁盘块?答:80号磁盘块7.假定磁盘有200个柱面,编号0~199,当前存取臂的位置在143号柱面上,并刚刚完成了125号柱面的服务请求,如果请求队列的先后顺序是:86,147,91,177,94,150,102,175,130;试问:为完成上述请求,下列算法存取臂移动的总量是多少?并算出存取臂移动的顺序。

计算机操作系统 课后习题 第五章

计算机操作系统 课后习题 第五章

第五章3. 什么是字节多路通道?什么是数组选择通道和数组多路通道?a.字节多路通道含有许多非分配型子通道分别连接在低、中速I/O设备上,子通道按时间片轮转方式共享主通道,按字节方式进行数据传送。

具体而言,当第一个子通道控制其I/O设备完成一个字节的交换后,便立即腾出字节多路通道(主通道),让给第二个子通道使用;当第二个子通道也交换完一个字节后,又依次把主通道让给第三个子通道使用,以此类推。

转轮一周后,重又返回由第一个子通道去使用主通道。

b.数组选择通道只含有一个分配型子通道,一段时间内只能执行一道通道程序、控制一台设备按数组方式进行数据传送。

通道被某台设备占用后,便一直处于独占状态,直至设备数据传输完毕释放该通道,故而通道利用率较低,主要用于连接多台高速设备。

c.数组多路通道是将数组选择通道传输速率高和字节多路通道能使各子通道分时并行操作的优点相结合而形成的一种新通道。

其含有多个非分配型子通道分别连接在高、中速I/O设备上,子通道按时间片轮转方式共享主通道,按数组方式进行数据传送,因而既具有很高的数据传输速率,又能获得令人满意的通道利用率。

4.如何解决因通道不足而产生的瓶颈问题?解决因通道不足而产生的瓶颈问题的最有效方法是增加设备到主机间的通路而不是增加通道。

换言之,就是把一个设备连接到多个控制器上,而一个控制器又连接到多个通道上。

这种多通路方式不仅可以解决该瓶颈问题,而且能够提高系统的可靠性,也即不会因为个别通道或控制器的故障而使设备与存储器之间无法建立通路进行数据传输。

6.试说明I/O控制发展的主要推动因素是什么?推动I/O控制发展的主要动力在于尽量减少主机对I/O控制的干预,把主机从繁杂的I/O控制事务中解脱出来,以便使主机有更多的时间和精力去完成其数据处理任务。

7.有哪几种I/O控制方式?有四种I/O控制方式,即程序I/O控制方式、中断驱动I/O控制方式、直接存储器访问DMA 控制方式及I/O通道控制方式。

操作系统第五版第6章习题中文解答

操作系统第五版第6章习题中文解答

可用+占有 完成 70 true 110 125 150 true true true
• b.第四个进程到达,最大需求是60,初始需求是35
进程
1
最大
70
占有
45
需要
25
可用
15
2
3 4
60
60 60
40
15 35
20
45 25
6.13 a.三个进程共享四个资源单元
进程 p1 最大 2 分配 1 需要 1 可用 1
从矩阵可以看出四个进程还需要的资源数目为2165当有一个可用资源时p2可以执行完成并释放占用资源可用资源数目为2允许p1执行完成可用资源数目为3此时p3需要6个资源p4需要5个资源既最小情况还需要2个额外资源p4执行完成释放资源后p3再执行完成
操作系统第六章习题解答
6.1 互斥:在每一时刻,只能有一辆车占用十字路 口的一个象限; 占有且等待:没有车倒退;每辆车一直在等待, 直到它前面的十字路口的象限可以使用; 非抢占:没有车辆能够强迫另一辆车给自己让 路; 循环等待:每辆车一直等待另外的车辆占用的 十字路口的象限。
6.17
• 如果至少有一个左撇子或右撇子,则当所 有哲学家都准备拿起第一根筷子时,必定 会有两个哲学家竞争一根筷子而其中一个 得不到处于等待,这样必定有一个哲学家 可以获得两根筷子,而不至于发生死锁。 • 同样也不会发生饥饿
6.2 1.Q获得B,然后获得A,然后释放B和A;当P恢复执 行的时候,它可以获得全部资源。 2.Q获得B,然后获得A;P执行并阻塞在对A的请求 上;Q释放B和A,当P恢复执行时,它可以获得全 部资源。 3.Q获得B,P获得并释放A,然后Q获得A并释放B和 A,当P恢复执行时,它可以获得B。 4.P获得A,Q获得B,P释放A,Q获得A并释放B,P 获得B并且释放B。 5.P获得并释放A,P获得B;Q执行并阻塞在对B的请 求上;P释放B,当Q恢复执行时,它可以获得全部 资源。 6.P获得A并且释放A,P获得B并且释放B,当Q恢复 执行时,他可以获得全部资源。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

P182习题5.13
• • • • • • • • • • • • • • • • • • • • • procedure consumer; begin repeat
semWaitB(s); take; n := n - 1; if n = -1 then begin semSignalB(s); semWaitB(delay); semWaitB(s) end; consume; semSignalB(s) forever
const int n=50; int tally; void total(){ int count; for(count=1;count<= n;count++){ tally++; } } void main(){ tally=0; parbegin(total(),total ()); write(tally); }
b 第4个进程到达,最多要 60个存储单元,最初要35 个单元。
会死锁,剩下存储单元数: 150-(45+40+15+35)=15
a
b
p214习题6.13
a 3个进程共享4个资源单元,一次只能保留或释放一 个单元,每个进程最大需要2个单元。说明不会发生死 锁。
• 由于每个进程最多需要2个资源,最坏情况下,每个进程需要获 得一个,系统还剩1个,这一个资源,无论分给谁都能完成。完 成进程释放资源后,使剩余进程也完成,故系统不会死锁。
不会死锁,剩下存储单元数: 150-(45+40+15+25)=25 满足进程1,2,可任选一个, 执行完后可满足其它
安全顺序是1-2-3-4 • • 银行家算法: 测试进程对资源的最大需求,若系 统当前的剩余资源满足它的最大需 求,则满足进程的当前的申请,否 则,推迟分配。这样能保证至少有 一个进程获得资源的最大需求而运 行,结束后释放资源供其它进程用。
p212习题6.5
• 把6.4节中的死锁检测算法应用于下面的数 据,给出结果。 Available=(2 1 0 0) • Request Allocation 2001 0010 1010 2001 2100 0120
p212习题6.5
• 1. W = (2 1 0 0) • 2. Mark P3; W = (2 1 0 0) + (0 1 2 0) = (2 2 2 0) • 3. Mark P2; W = (2 2 2 0) + (2 0 0 1) = (4 2 2 1) • 4. Mark P1; no deadlock detected • 算法步骤见P195
I 输入缓冲区 P 输出缓冲区 0
p212习题6.6
• 说明可能死锁 当I的速度远大于P的速度,有可能使磁 盘上都是输入数据而此时P进程要处理输入 数据,即要将处理数据放入输出数据区。 于是P进程等待磁盘空间输出,I进程等待磁 盘空间输入,二者死锁。
p213习题6.7
• 给出在习题6.6中预防死锁的附加资源约束,仍 然通话输入和输出缓冲区之间的边界可以根据进 程的要求变化。
– 一个或多个过程 – 一个初始化序列 – 局部数据
P177复习题5.13
• 与读者-写者问题相关联的条件:
– 任意多的读进程可以同时读一个文件 – 一次只有一个写进程可以往文件中写 – 如果一个写进程正在往文件中写时,则禁止任 何读进程读文件
P179习题5.2
• 一个并发程序,它的两个进程p与q,A、B、 C、D、E是任意的原子语句。设主程序执 行两个进程的parbegin。 void p(){A;B;C;} void q(){D;E;} 给出这两个进程所有可能的交替执行(根 据原子语句给出执行轨迹)
P182习题5.13
P182习题5.13
• program producerconsumer; • var n: integer; • s: (*binary*) semaphore (:= 1); • delay: (*binary*) semaphore (:= 0); • procedure producer; • begin • repeat • produce; • semWaitB(s); • append; • n := n + 1; • if n=0 then semSignalB(delay); • semSignalB(s) • forever • end;
P179习题5.3
• a. 乍一看,tally的范围好像是落在[50,100] 这个区 间里,因为当没有互斥时可以从0直接增加到50.这 一基本论点是当并发的运行这两进程时,我们不可 能得到一个比连续执行单一某进程所得tally值还 低的一个最终tally值.但是考虑下面由这两进程按 交替顺序执行载入,增加,存储的情况下同时变更 这个共享变量的取值:
P182习题5.14
P182习题5.14
• 信号量s控制对临界区的访问,在临界区只 包含append 或take 操作。 • AC会导致死锁。 • BD不变,但效率变低(临界区变长)。
p211复习题 6.2
• 可能发生死锁所必需的三个条件: ① 互斥
– 一次只有一个进程可以使用一个资源
② 占有且等待
p214习题6.13
• 方法二:
• • • • 每个进程有Ni个资源未分配,有Ai个资源已分配 则∑Ci= ∑Ai+ ∑Ni < M+N 假设死锁: ∑Ai=M,则∑Ni<N,至少有一个Nk为0,矛盾
p214习题6.14
p214习题6.13
b N个进程共享M个资源单元,一次只能保留或释放 一个单元,每个进程最大需求单元数不超过M,并且 所有最大需求的总和小于M+N。说明不会发生死锁。 方法一:
• 假定每个进程最多申请X个资源,最坏情况下,每个进程都得 到X-1个资源都在申请最后一个资源,这时系统剩余资源数量 为M-N(X-1),只要系统还有一个剩余资源,就可以使其中的 一个进程获得所需要的全部资源,该进程运行结束以后释放资 源,就可以使其他进程得到全部资源的 满足,因此,当MN(X-1)》1时系统不会发生死锁,解这个不等式X《(M+N1),系统不会发生死锁,因此,当所有进程的需求总和小于 M+N时,系统是不会发生死锁的。
P182习题5.3
b、在a的假设下,允许任意多的进程并发执 行,tally值的范围?
对一般有N个进程的情况,tally值的最终范围 是[2,N*50],因为对其他所有进程来说,从最初开始运 行到在第五步完成.但最后都被进程B破坏掉它们的 最终结果.
P182习题5.13
• 考虑图5.10中定义的无限缓冲 区生产者/消费者问题的解决方 案,设生产者与消费者都以大 致相同的速度运行,运行情况 如下: 生产者: append;semSignal;produce;...; append;semSignal;produce;...; 消费者: consume;...;take;semWait;con sume;...;take;semWait;...; • 生产者通常管理给缓冲区添加 一个新元素,并在消费者消费 了前面的元素后发出信号。生 产者通常添加到一个空缓冲区 中,而消费者通常取走缓冲区 中的惟一元素。消费者从不在 信号量上阻塞,但必须进行大 量的信号量调用,产生相当多 的开销。 构造新程序,使之更有效。 提示:允许n的值为-1,这表示不 仅缓冲区为空,而且消费者也 检测到这个事实并将被阻塞, 直到生产者产生新的数据。这 个方案不要图5.10中的局部变 量m 。
end; begin (*main program*) n := 0; parbegin producer; consumer parend
P182习题5.14
• 考虑图5.13,若发生下面的交换,程序的意 义是否会改变? • a. semWait(e);semWait(s) • b. semSignal(s);semSignal(n) • c. semWait(n);semWait(s) • d. semSignal(s);semSignal(e)
P182习题5.3
• 1.进程A载入tally值,并将tally的值加到1,在此时失去处理器(它已经增加寄 存器的值到1,但是还没有存储这个值). • 2.进程B载入tally值(仍然是0),然后运行完成49次增加操作,在它已经将49 这个值存储给共享变量tally后,失去处理器控制权. • 3.进程A重新获得处理器控制权去完成它的第一次存储操作(用1去代替先 前的49这个tally值),此时被迫立即放弃处理器. • 4.进程B重新开始,将1(当前的tally值)载入到它自己的寄存器中,但此时被 迫放弃处理器(注意这是B的最后一次载入). • 5.进程A被重新安排开始,但这次没有被中断,直到运行完成它剩余的49次 载入,增加和存储操作,结果是此时tally值已经是50. • 6.进程B在它终止前完成仅有的最后一次增加和存储操作.它的寄存器值 增至2,同时存储这个值做为这个共享变量的最终结果. 一些人认为会出现低于2这个值的结果,这种情况是不会出现.所以 tally值 的正确范围是[2,100].
为输出缓冲区保留一个最小数目(称为reso)块, 但是当磁盘空间足够大时 允许输出块的数目超过这一个界限。 资源限制现在变成 I + O ≤max I≤ max – reso 其中 0 < reso < max 如果程序 P 正在等候递送输出给磁盘, 程序 O 最后处理所有的早先输出 而且产生至少reso页, 然后让 P 继续执行。 因此 P 不会因为 O 而延迟。 如果磁盘充满I/O,I能被延迟; 但是迟早, 所有的早先的 输入可以被P处理完,而且对应的输出将会被 O 处理, 因而可以让I继续执行。
– 一个进程在等待其它资源分配时,继续占有 已分配的资源
③ 非抢占
相关文档
最新文档