南京邮电大学 操作系统 课后习题答案

合集下载

南邮课件-操作系统-ch3-answer

南邮课件-操作系统-ch3-answer

05-ch3参考答案3.有两个优先级相同的进程P1和P2,各自执行的操作如下,信号量S1和S2初值均为0。

试问P1、P2并发执行后,x、y、z的值各为多少?P1:P2:begin beginy:=1; x:=1;y:=y+3; x:=x+5;V(S1); P(S1);z:=y+1; x:=x+y;P(S2); V(S2);y:=z+y z:=z+x;end. end.答:现对进程语句进行编号,以方便描述。

P1:P2:begin beginy:=1; ①x:=1; ⑤y:=y+3; ②x:=x+5; ⑥V(S1); P(S1);z:=y+1; ③x:=x+y; ⑦P(S2); V(S2);y:=z+y ④z:=z+x; ⑧end. end.①、②、⑤和⑥是不相交语句,可以任何次序交错执行,而结果是唯一的。

接着无论系统如何调度进程并发执行,当执行到语句⑦时,可以得到x=10,y=4。

按Bernstein条件,语句③的执行结果不受语句⑦的影响,故语句③执行后得到z=5。

最后,语句④和⑧并发执行,这时得到了两种结果为:语句④先执行:x=10,y=9,z=15。

语句⑧先执行:x=10,y=19,z=15。

此外,还有第三种情况,语句③被推迟,直至语句⑧后再执行,于是依次执行以下三个语句:z:=z+x;z:=y+1;y:=z+y;这时z的值只可能是y+1=5,故y=z+y=5+4=9,而x=10。

第三种情况为:x=10,y=9,z=5。

5.在一个盒子里,混装了数量相等的黑白围棋子。

现在用自动分拣系统把黑子、白子分开,设分拣系统有二个进程P1和P2,其中P1拣白子;P2拣黑子。

规定每个进程每次拣一子;当一个进程在拣时,不允许另一个进程去拣;当一个进程拣了一子时,必须让另一个进程去拣。

试写出两进程P1和P2能并发正确执行的程序。

答1:实质上是两个进程的同步问题,设信号量S1和S2分别表示可拣白子和黑子,不失一般性,若令先拣白子。

《操作系统实用教程》课后题参考答案

《操作系统实用教程》课后题参考答案

课后习题参考答案第一章操作系统概述一、填空题1.软硬件资源、系统软件、用户2.处理机、存储器、输入/输出设备和文件资源;处理机管理、存储器管理、设备管理和文件系统3.分时(或多用户、多任务)单用户(或单用户、单任务)4.分时OS 时间片轮转批处理OS 吞吐率实时OS 实时性和可靠性5.命令接口系统调用6.系统调用二、选择题三、简答题1.操作系统是管理系统资源、控制程序执行,改善人机界面,提供各种服务,合理组织计算机工作流程和为用户使用计算机提供良好运行环境的一种系统软件。

操作系统是用户与计算机硬件之间的接口。

操作系统为用户提供了虚拟计算机。

操作系统是计算机系统的资源管理者,处理器管理,存储器管理,设备管理,文件管理,用户接口。

2.硬件的改进导致操作系统发展的例子很多,内存管理支撑硬件由分页或分段设施代替了界寄存器以后,操作系统中便增加了分页或分段存储管理功能。

图形终端代替逐行显示终端后,操作系统中增加了窗口管理功能,允许用户通过多个窗口在同一时间提出多个操作请求。

引进了中断和通道等设施后,操作系统中引入了多道程序设计功能。

计算机体系结构的不断发展有力地推动着操作系统的发展,例如,计算机由单处理机改进为多处理机系统,操作系统也由单处理机操作系统发展到多处理机操作系统和并行操作系统;随着计算机网络的出现和发展,出现了分布式操作系统和网络操作系统。

随着信息家电的发展,又出现了嵌入式操作系统。

3.在一段时间内,内存中能够接纳多道程序的系统称为多道程序系统。

单道程序环境下处理器的利用率很低,当程序进行输入/输出操作时,处理器空闲,同时外部设备的利用率也很低,引入多道程序系统以后,整个计算机的利用率得到了提高。

4.允许多个联机用户同时使用一台计算机系统进行计算的操作系统称为分时操作系统,分时操作系统具有以下特性:同时性,独立性,及时性和交互性。

实时操作系统是指当外界事件或数据产生时,能够接收并以足够快的速度予以处理,其处理的结果又能在规定的时间之内来控制生产过程或对处理系统做出快速响应,并控制所有实时任务协调一致运行的操作系统。

操作系统习题(附参考答案)

操作系统习题(附参考答案)

操作系统习题(附参考答案)一、单选题(共100题,每题1分,共100分)1、下列存储器中,速度最快的是()。

A、内存B、寄存器C、CacheD、磁盘正确答案:B2、时钟中断事件属于()中断事件。

A、程序B、自愿性C、外部D、输入/输出正确答案:C3、可变分区存储管理系统中,若采用最佳适应分配算法,“空闲区表”中的空闲区可按()顺序排列。

A、大小从大到小B、大小从小到大C、地址从大到小D、地址从小到大正确答案:B4、从静态的角度看,下列选项中哪一个是进程必须拥有而程序所没有的?()A、常量数据B、全局变量C、进程控制块D、代码正文正确答案:C5、()不是管程的组成部分。

A、对局部于管程内的数据结构设置初始值的语句B、对管程内数据结构进行操作的一组过程C、局部于管程的共享数据结构D、管程外过程调用管程内数据结构的说明正确答案:D6、下列关于父进程和子进程的叙述中,正确的是()。

A、子进程执行完了,父进程才能执行B、父进程创建了子进程,因此父进程执行完了,子进程才能执行C、撤销子进程时,应该同时撤销父进程D、撤销父进程时,应该同时撤销子进程正确答案:D7、某计算机系统中有8台打印机,有K个进程竞争使用,每个进程最多需要3台打印机。

该系统可能会发生死锁的K的最小值是()。

A、3B、4C、2D、5正确答案:B8、分页虚拟存储管理系统中,若采用FIFO页面置换算法,则当分配的物理页面数增加时,缺页中断的次数()。

A、减少B、可能增加也可能减少C、增加D、不变正确答案:B9、产生内存抖动的主要原因是()。

A、内存空间太小B、CPU运行速度太慢C、CPU调度算法不合理D、页面置换算法不合理正确答案:D10、()存储管理兼顾了段式在逻辑上清晰和页式在存储管理上方便的优点。

A、分页B、段页式C、可变分区D、分段正确答案:B11、发生死锁的必要条件有四个,要预防死锁的发生,可以破坏这四个必要条件,但破坏()条件是不太实际的。

操作系统教程课后习题答案

操作系统教程课后习题答案

操作系统1.什么是计算机系统?计算机系统是怎么构成的?了解PC的组成情况,说明:1)硬件组织的基本结构,画出硬件配置图;2)主要系统软件和应用软件(若有的话)他们的作用。

答:计算机系统就是按照人的要求接收和存储信息,自动进行数据处理和计算,并输出结果信息的系统。

计算机系统由硬件子系统和软件子系统组成。

计算机系统的构成包括:如图1.2计算机硬件系统的构成:如图1.42.从功能以及程序涉设计的角度说明计算机系统中软件系统是如何构成的?答:分为系统软件,支撑软件和应用软件三层。

3.什么是操作系统?请举例说明操作系统在计算机系统中的重要地位。

答:操作系统是计算机系统中的一个系统软件,是一些程序模块的集合。

它们能以尽量有效、合理的方式组织和管理计算机的软硬件资源,合理的组织计算机的工作流程,控制程序的执行并向用户提供各种服务功能,使得用户能够灵活、方便、有效的使用计算机,使整个计算机系统能安全高效地运行4.请举一个实际的例子来说明操作系统的功能。

答:你能用用操作系统管理很多资源5.为什么说“操作系统是控制硬件的软件”的说法不确切?答:操作系统不仅能够控制硬件,也可以控制各种软件资源。

6.操作系统的基本特征是什么?说明他们之间的关系。

答:1.并发性2.共享性3.随机性7.试从独立性,并发性和交互性和实时性四个方面来比较批处理系统,分时系统以及实时系统。

答:分时系统:并发性是指同时有多个用户共同使用一个计算机,宏观上看是多个人同时使用一个CPU,微观上是多个人在不同时刻轮流使用CPU.独占性,是指用户感觉不到计算机为他们服务,就好像整个系统为他所独占。

交互性:是指用户根据系统响应结果进一步提出新要求,用户直接干预每一步。

实时性:是指系统对用户提出的请求及时响应。

8.引入多道程序设计技术的起因和目的是什么?多道程序系统的特征是什么?答:多道程序设计的基本思想在内存中保持多个作业,主机可以交替的方式同时处理多个作业,一般来说任何一道作业的运行总是要交替的使用处理器和外设子案9.多道程序设计的度是指在任一给定时刻,单个CPU所能支持的进程数目最大值。

操作系统(第二版)课后习题答案

操作系统(第二版)课后习题答案
257<10+256
故需要一次间接寻址,就可读出该数据
如果要求读入从文件首到263168Byte处的数据(包括这个数据),读岀过程:首先根据直接寻
址读出前10块;读出一次间接索引指示的索引块1块;将索引下标从0〜247对应的数据块全部 读入。即可。共读盘块数10+1+248=259块
3.某文件系统采用索引文件结构,设文件索引表的每个表目占用3Byte,存放盘块的块号,盘块 的大小为512Byte。此文件系统采用直接、一次间接、二次间接、三次间接索引所能管理的最大
(1)|100-8|+|18-8|+|27-18|+|129-27|+|110-129|+|186-110|+|78-186|+|147-78|+|41-147|+ |10-47|+|64-10|+|12-64|=728
8:00
10:00
120mi n
1
2
8:50
50min
10:00
10:50
120mi n
3
9:00
10mi n
10:50
11:00
120mi n
12
4
9:50
20mi n
11:00
11:20
90mi n
平均周转时间T=,平均带权周转时间W=
②SJF短作业优先法)
作业
到达时间
运行时间
开始时间
完成时间
周转时间
页面长度为4KB,虚地址空间共有土)个页面
3.某计算机系统提供24位虚存空间,主存空间为218Byte,采用请求分页虚拟存储管理,页面尺
寸为1KB。假定应用程序产生虚拟地址(八进制),而此页面分得的块号为100(八进制),说明

(完整版)操作系统课后答案(1)

(完整版)操作系统课后答案(1)

CH1 应用题参考答案1有一台计算机,具有1MB内存,操作系统占用200KB,每个用户进程各占200KB。

如果用户进程等待I/O的时间为80%,若增加1MB内存,则CPU的利用率提高多少?答:设每个进程等待I/O的百分比为P,则n个进程同时等待I/O的概率是P n ,当n个进程同时等待I/O期间CPU是空闲的,故CPU的利用率为1-P n 。

由题意可知,除去操作系统,内存还能容纳4个用户进程,由于每个用户进程等待I/O的时间为80%,故:CPU利用率=1-(80%)4 =0.59若再增加1MB内存,系统中可同时运行9个用户进程,此时:CPU利用率=1-(80%)9 =0.87故增加1MB内存使CPU的利用率提高了47%:87%÷59%=147%147%-100%=47%2一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A 先开始做,程序B后开始运行。

程序A的运行轨迹为:计算50ms、打印100ms、再计算50ms、打印100ms,结束。

程序B的运行轨迹为:计算50ms、输入80ms、再计算100ms,结束。

试说明(1)两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?(2)程序A、B有无等待CPU的情况?若有,指出发生等待的时刻。

答:画出两道程序并发执行图如下:(1)(见图中有色部分)。

(2)程序A无等待现象,但程序B有等待。

程序B有等待时间段为180ms至200ms间(见图中有色部分)。

3设有三道程序,按A、B、C优先次序运行,其内部计算和I/O操作时间由图给出。

A B CC11=30ms C21=60ms C31=20ms∣∣∣I12=40ms I22=30ms I32=40ms∣∣∣C13=10ms C23=10ms C33=20ms 试画出按多道运行的时间关系图(忽略调度执行时间)。

完成三道程序共花多少时间?比单道运行节省了多少时间?若处理器调度程序每次进行程序转换化时1ms,试画出各程序状态转换的时间关系图。

操作系统课后答案

操作系统课后答案

1、计算机系统由哪些部分组成?答:计算机系统由硬件子系统和软件子系统组成。

2、什么是计算机的操作系统?答:操作系统是计算机的一种系统软件,由它统一管理计算机系统的资源和控制程序的执行。

操作系统既是一种资源管理程序,又是一种其他程序执行的控制程序,其目的是提供一个供其它程序执行的良好环境。

3、操作系统管理计算机系统的哪些资源?答:操作系统管理的计算机系统资源包括两大类:硬件资源和软件资源。

计算机系统的硬件资源主要包括CPU、主存储器、辅助存储器(磁带、磁盘等)以及各种输入输出设备(键盘、显示器、打印机等);软件资源包括各种程序和数据。

4、操作系统怎样为用户提供良好的运行环境?答:操作系统是一种系统程序,其目的是提供一个供其他程序执行的良好环境。

首先操作系统要使得计算机系统使用方便:操作系统为用户提供方便的使用接口,用户按需要输入命令或从提供的"菜单"中选择命令,操作系统按命令去控制程序的执行;用户也可以请求操作系统的功能模块为其服务,而不必了解硬件的特性。

其次操作系统要使得计算机系统能高效地工作:操作系统扩充硬件的功能,而硬件的功能发挥的更好;操作系统使拥护合理共享资源,防止各用户间的干扰;操作系统以文件形式管理软件资源,保证信息的安全和快速存取。

5、操作系统怎样提高系统的效率?答:为提高系统的效率:•操作系统扩充硬件的功能,使硬件的功能发挥得更好;•操作系统使用户合理共享资源,防止各用户间的相互干扰;•操作系统以文件形式管理软件资源,保证信息安全和快速存取。

6、批处理操作系统怎样实现计算机操作的自动化?答:用户把准备好的一批作业信息,包括程序、数据、作业控制说明书通过相应的输入设备传送到大容量的磁盘上等待处理。

操作系统中的作业调度程序按照某种原则从磁盘上选择若干作业装入主存储器,主存储器中的这些作业可以占用中央处理机运行。

当某个作业执行结束时,启动打印机,输出计算结果。

然后又可以从磁盘上选择作业装入主存储器,让其运行。

(完整版)操作系统课后题答案

(完整版)操作系统课后题答案

第一章1.设计现代OS的主要目标是什么?答:(1)有效性(2)方便性(3)可扩充性(4)开放性2.OS的作用可表现在哪几个方面?答:(1)OS作为用户与计算机硬件系统之间的接口(2)OS作为计算机系统资源的管理者(3)OS实现了对计算机资源的抽象3.为什么说OS实现了对计算机资源的抽象?答:OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。

OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。

4.试说明推动多道批处理系统形成和发展的主要动力是什么?答:主要动力来源于四个方面的社会需求与技术发展:(1)不断提高计算机资源的利用率;(2)方便用户;(3)器件的不断更新换代;(4)计算机体系结构的不断发展。

5.何谓脱机I/O和联机I/O?答:脱机I/O 是指事先将装有用户程序和数据的纸带或卡片装入纸带输入机或卡片机,在外围机的控制下,把纸带或卡片上的数据或程序输入到磁带上。

该方式下的输入输出由外围机控制完成,是在脱离主机的情况下进行的。

而联机I/O方式是指程序和数据的输入输出都是在主机的直接控制下进行的。

6.试说明推动分时系统形成和发展的主要动力是什么?答:推动分时系统形成和发展的主要动力是更好地满足用户的需要。

主要表现在:CPU 的分时使用缩短了作业的平均周转时间;人机交互能力使用户能直接控制自己的作业;主机的共享使多用户能同时使用同一台计算机,独立地处理自己的作业。

7.实现分时系统的关键问题是什么?应如何解决?答:关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,在用户能接受的时延内将结果返回给用户。

解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《操作系统教程》南邮正式版习题解答第三章进程管理与调度习题1、什么是多道程序设计?多道程序设计利用了系统与外围设备的并行工作能力,从而提高工作效率,具体表现在哪些方面?答:让多个计算问题同时装入一个计算机系统的主存储器并行执行,这种设计技术称“ 多道程序设计”,这种计算机系统称“多道程序设计系统” 或简称“多道系统”。

在多道程序设计的系统中,主存储器中同时存放了多个作业的程序。

为避免相互干扰,必须提供必要的手段使得在主存储器中的各道程序只能访问自己的区域。

提高工作效率,具体表现在:•提高了处理器的利用率;•充分利用外围设备资源:计算机系统配置多种外围设备,采用多道程序设计并行工作时,可以将使用不同设备的程序搭配在一起同时装入主存储器,使得系统中各外围设备经常处于忙碌状态,系统资源被充分利用;•发挥了处理器与外围设备以及外围设备之间的并行工作能力;从总体上说,采用多道程序设计技术后,可以有效地提高系统中资源的利用率,增加单位时间内的算题量,从而提高了吞吐率。

2、请描述进程的定义和属性。

答:进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配、调度和保护的独立单位。

进程的属性有:结构性•共享性•动态性•独立性•制约性•并发性3、请描述进程与程序的区别及关系。

答:程序是静止的,进程是动态的。

进程包括程序和程序处理的对象(数据集),进程能得到程序处理的结果。

进程和程序并非一一对应的,一个程序运行在不同的数据集上就构成了不同的进程。

通常把进程分为“系统进程”和“用户进程”两大类,把完成操作系统功能的进程称为系统进程,而完成用户功能的进程则称为用户进程。

4、进程有哪三种基本状态?三种进程状态如何变化?答:通常,根据进程执行过程中不同时刻的状态,可归纳为三种基本状态:·等待态:等待某个事件的完成;·就绪态:等待系统分配处理器以便运行;·运行态:占有处理器正在运行。

进程在执行中状态会不断地改变,每个进程在任何时刻总是处于上述三种基本状态的某一种基本状态,进程状态之间转换关系:运行态→等待态往往是由于等待外设,等待主存等资源分配或等待人工干预而引起的。

等待态→就绪态则是等待的条件已满足,只需分配到处理器后就能运行。

运行态→就绪态不是由于自身原因,而是由外界原因使运行状态的进程让出处理器,这时候就变成就绪态。

例如时间片用完,或有更高优先级的进程来抢占处理器等。

就绪态→运行态系统按某种策略选中就绪队列中的一个进程占用处理器,此时就变成了运行态。

5、进程控制块是什么,有何作用?通常进程控制块包含哪些信息?答:进程控制块(Process Control Block,简称PCB),是操作系统为进程分配的用于标志进程,记录各进程执行情况的。

进程控制块是进程存在的标志,它记录了进程从创建到消亡动态变化的状况,进程队列实际也是进程控制块的链接。

操作系统利用进程控制块对进程进行控制和管理。

·标志信息含唯一的进程名·说明信息有进程状态、等待原因、进程程序存放位置和进程数据存放位置·现场信息包括通用、控制和程序状态字寄存器的内容·管理信息存放程序优先数和队列指针进程控制块的作用有:•(1)记录进程的有关信息,以便操作系统的进程调度程序对进程进行调度。

这些信息包括标志信息、说明信息、现场信息和管理信息等;•(2)标志进程的存在,进程控制块是进程存在的唯一标志6、什么是可再入程序?答:(1)什么是可再入程序。

一个能被多个用户同时调用的程序称做" 可再入"的程序。

(2)可再入程序的性质。

•可再入程序必须是纯代码,在执行时自身不改变;•一个可再入程序要求调用者提供工作区,以保证程序以同样方式为各用户服务。

编译程序和操作系统程序通常都是"可再入"程序,能同时被不同用户调用而构成不同的进程。

7、阐述进程调度的常用算法:先来先服务、优先数法、轮转法。

答:•先来先服务调度算法该算法按进程进入就绪队列的先后次序选择可以占用处理器的进程。

•优先数调度算法对每个进程确定一个优先数,该算法总是让优先数最高的进程先使用处理器。

对具有相同优先数的进程,再采用先来先服务的次序分配处理器。

系统常以任务的紧迫性和系统效率等因素确定进程的优先数。

进程的优先数可以固定的,也可随进程执行过程动态变化。

一个高优先数的进程占用处理器后,系统处理该进程时有两种方法,一是"非抢占式",另一种是"可抢占式"。

前者是此进程占用处理器后一直运行到结束,除非本身主动让出处理器,后者则是严格保证任何时刻总是让优先数最高的进程在处理器上运行。

•时间片轮转调度法把规定进程一次使用处理器的最长时间称为"时间片"。

时间片轮转调度算法让就绪进程按就绪的先后次序排成队列,每次总选择该队列中第一个进程占用处理器,但规定只能使用一个时间片,如该进程尚未完成,则排入队尾,等待下一个供它使用的时间片。

各个进程就这样轮转运行。

时间片轮转算法经常用于分时操作系统中。

8、程序状态字包含哪些主要内容?答:(1)程序基本状态(2)中断码(3)中断屏蔽位9、比较进程调度与作业调度的不同点。

答:1)作业调度是宏观调度,它决定了哪一个作业能进入主存。

进程调度是微观调度,它决定各作业中的哪一个进程占有中央处理机。

(或)作业调度是高级调度,它位于操作系统的作业管理层次。

进程调度是低级调度,它位于操作系统分层结构的最内层。

(2)作业调度是选符合条件的收容态作业装入内存。

进程调度是从就绪态进程中选一个占用处理机。

10、C程序说明系统调用fork()的应用。

请在①②③④处填入有关父、子进程的正确语句:/* Example to demonstrate the function of System Call fork */main(){int i;①if(i)>0{printf(“②”) ;}else{printf(“③”) ;}printf(“④”) ;}执行本程序时,子进程在标准输出上打印以下结果:It is child process.Exit.父进程在标准输出上打印以下结果:It is Parent process.Exit.11、单道批处理环境下有5个作业,各作业进入系统的时间和估计运行时间如下表所示:(1) 如果应用先来先服务的作业调度算法,试将下面表格填写完整。

(2)如果应用最短作业优先的作业调度算法,试将下面表格填写完整。

答:1. (1)(2)12、有一个具有两道作业的批处理系统,作业调度采用短作业优先的非抢式调度算法,进程调度采用以优先数为基础的抢占式调度算法,在下表所示的作业序列中,作业优先数即为进程优先数,优先数越小优先级越高。

(1)列出所有作业进入内存时间及结束时间。

(2)计算平均周转时间。

答:每个作业运行将经过两个阶段:作业调度(SJF算法)和进程调度(优先数抢占式)。

另外,批处理最多容纳2道作业,更多的作业将在后备队列等待。

(1)10:00,作业A到达并投入运行。

(2)10:20,作业B到达且优先权高于作业A,故作业B投入运行而作业A在就绪队列等待。

(3)10:30,作业C到达,因内存中已有两道作业,故作业C进入作业后备队列等待。

(4)10:50,作业B运行结束,作业D到达,按SJF短作业优先算法,作业D被装入内存进入就绪队列。

而由于作业A的优先级高于作业D,故作业A投入运行。

(5)11:10,作业A运行结束,作业C被调入内存,且作业C的优先级高于作业D,故作业C投入运行。

(6)12:00,作业C运行结束,作业D投入运行。

(7)12:20,作业D运行结束。

各作业周转时间为:作业A 70,作业B 30,作业C 90,作业D 90。

平均作业周转时间为70分钟。

第四章并发进程的同步与互斥1、进程间同步和互斥的含义是什么?答:同步:并发进程之间存在的相互制约和相互依赖的关系。

互斥:若干进程共享一资源时,任何时刻只允许一个进程使用。

2、用文字描述银行家算法的基本思想?答:银行家算法的基本思想是:将系统中的所有资源比做银行家的资金,每进行一次资源的分配,银行家都要从当前的资源分配情况出发,计算这种分配方案的安全性,如果是安全的,则进行分配,否则选择其它可能的分配方案。

这样,每次分配都计算安全性,从而可以避免死锁的发生。

3、简述死锁的防止与死锁的避免的区别。

答:死锁的防止是系统预先确定一些资源分配策略,进程按规定申请资源,系统按预先规定的策略进行分配,从而防止死锁的发生。

而死锁的避免是当进程提出资源申请时系统测试资源分配,仅当能确保系统安全时才把资源分配给进程,使系统一直处于安全状态之中,从而避免死锁。

4、试说明资源的静态分配策略能防止死锁的原因。

答:资源静态分配策略要求每个进程在开始执行前申请所需的全部资源,仅在系统为之分配了所需的全部资源后,该进程才开始执行。

这样,进程在执行过程中不再申请资源,从而破坏了死锁的四个必要条件之一“占有并等待条件”,从而防止死锁的发生。

5、有三个进程P1,P2和P3并发工作。

进程P1需用资源S3和S1;进程P2需用资源S1和S2;进程P3需用资源S2和S3。

回答:(1)若对资源分配不加限制,会发生什么情况?为什么?(2)为保证进程正确工作,应采用怎样的资源分配策略?为什么?答:.(1)可能会发生死锁例如:进程P1,P2和P3分别获得资源S3,S1和S2后再继续申请资源时都要等待(2分),这是循环等待。

(或进程在等待新源时均不释放已占资源)(2)可有几种答案:A.采用静态分配由于执行前已获得所需的全部资源,故不会出现占有资源又等待别的资源的现象(或不会出现循环等待资源现象)。

或B.采用按序分配不会出现循环等待资源现象。

或C.采用银行家算法因为在分配时,保证了系统处于安全状态。

6、某车站售票厅,任何时刻最多可容纳20名购票者进入,当售票厅中少于20名购票者时,则厅外的购票者可立即进入,否则需在外面等待。

若把一个购票者看作一个进程,请回答下列问题:(1)用PV操作管理这些并发进程时,应怎样定义信号量,写出信号量的初值以及信号量各种取值的含义。

(2)根据所定义的信号量,把应执行的PV操作填入适当,以保证进程能够正确地并发执行。

COBEGIN PROCESS PI(I=1,2,……)begin;进入售票厅;购票;退出;end;COEND(3)若欲购票者最多为n个人,写出信号量可能的变化范围(最大值和最小值)。

答:.(1)定义一信号量S,初始值为20。

意义:S>0S的值表示可继续进入售票厅的人数S=0表示售票厅中已有20名顾客(购票者)S<0|S|的值为等待进入售票厅的人数(2)P(S)进入售票厅;购票;退出;V(S)(3)S的最大值为20S的最小值为20-n注:信号量的符号可不同(如写成t),但使用时应一致(即上述的s全应改成t)。

相关文档
最新文档