操作系统习题解析

合集下载

操作系统-第4章习题解析

操作系统-第4章习题解析

操作系统-第4章习题解析第4章习题解析1.为什么要配置层次式存储器?答:这是因为: a.设置多个存储器可以使存储器两端的硬件能并⾏⼯作。

b.采⽤多级存储系统,特别是Cache技术,这是⼀种减轻存储器带宽对系统性能影响的最佳结构⽅案。

c.在微处理机内部设置各种缓冲存储器,以减轻对存储器存取的压⼒。

增加CPU中寄存器的数量,也可⼤⼤缓解对存储器的压⼒。

2.可采⽤哪⼏种⽅式将程序装⼊内存?它们分别适⽤于何种场合?答:将程序装⼊内存可采⽤的⽅式有:绝对装⼊⽅式、重定位装⼊⽅式、动态运⾏时装⼊⽅式;绝对装⼊⽅式适⽤于单道程序环境中,重定位装⼊⽅式和动态运⾏时装⼊⽅式适⽤于多道程序环境中。

3.何为静态链接?静态链接时需要解决两个什么问题?答:静态链接是指在程序运⾏之前,先将各⾃⽬标模块及它们所需的库函数,链接成⼀个完整的装⼊模块,以后不再拆开的链接⽅式。

将⼏个⽬标链接装配成⼀个装⼊模块时,需解决以下两个问题: 将相对地址进⾏修改。

即将除第⼀个模块外的相对地址修改成装⼊模块中的相应的相对地址。

变换外部调⽤符号。

即将每个模块中所⽤的外部调⽤符号,都变换为相对地址。

4.何谓装⼊时动态链接?装⼊时动态链接⽅式有何优点?答:装⼊时动态链接是指将⽤户源程序编译后所得到的⼀组⽬标模块,在装⼊内存时,采⽤边装⼊边链接的⼀种链接⽅式,即在装⼊⼀个⽬标模块时,若发⽣⼀个外部模块调⽤事件,将引起装⼊程序去找相应的外部⽬标模块,把它装⼊内存中,并修改⽬标模块中的相对地址。

装⼊时动态链接⽅式有以下优点: 1)便于修改和更新 2)便于实现对⽬标模块的共享5.何谓运⾏时动态链接?运⾏时动态链接⽅式有何优点?答:运⾏时动态链接是将对某些模块的链接推迟到程序执⾏时才进⾏链接,也就是,在执⾏过程中,当发现⼀个被调⽤模块尚未装⼊内存时,⽴即由0S去找到该模块并将之装⼊内存,把它链接到调⽤者模块上。

优点:凡是在执⾏过程中未被⽤过的⽬标模块,都不会被调⼊内存和被链接到装⼊模块上,这样不仅能加快程序的装⼊过程,⽽且可节省⼤量的内存空间。

操作系统第4章练习题

操作系统第4章练习题

操作系统第4章练习题操作系统常见题解析及模拟题内容第4章存储器管理4.1典型例题解析【例1】某系统采用动态分区分配方式管理内存,内存空间为640k,高端40k用来存放操作系统。

在内存分配时,系统优先使用空闲区低端的空间。

对下列的请求序列:作业1申请130k、作业2申请60k、作业3申请100k、作业2释放60k、作业4申请200k、作业3释放100k、作业1释放130k、作业5申请140k、作业6申请60k、作业7申请50k、作业6释放60k,请分别画图表示出使用首次适应算法和最佳适应算法进行内存分配和回收后内存的实际使用情况。

动作首次适应算法最佳适应算法空闲分区已分配分区己分配分区空闲分区(始址,大(作业,始址,大小)(作业,始址,大小)(始址,大小)小)130,470190,410l,o,1301,o,1302,130,601,o,1302,130,603,190,100l,0,1303,190,100l,0,1303,190,1004,290,200l,0,1304,290,2004,290,2004,290,2005,0,1404,290,2005,0,1406,490,604,290,2005,o,1406,490,607,550,504,290,2005,0,1407,550,50130,470190,410l,0,1302,130,60作业1申请130kl,0,130作业2申请60k1,0,130作业3申请100k2,130,603,190,100作业2释放60kl,0,1303,190,100290,310130,60290,310130,60490,1lo130,160490,1100,290490,110140,150490,110200,90490,110290,310130,60290,310130,60490.110490,110130,160490,1100,290490,110140,150550,50140,1501,o,130作业4申请200k3,190,1004,290,200作业3释放100k作业l释放130k作业5申请140kl,0,1304,290,2004,290,2004,290,2005,0,1404,290,2005,o,1406,140,604,290,2005,0,1406,140,607,200,504,290,2005,0,1407,200,50作业6申请60k作业7申请50k250,40490,110140,60250,40490,110140,150作业6释放60k490,60140,1501操作系统常见题解析及模拟题内容请问:采用首次适应环境算法和最佳适应环境算法展开上述内存的分配和废旧后,内存的实际采用情况分别例如图(a)和(b)右图。

操作系统练习题_及答案解析

操作系统练习题_及答案解析

操作系统练习题第一章引言(一单项选择题1 操作系统是计算机系统的一种( 。

A.应用软件B. 系统软件c. 通用软件D.工具软件2.操作系统目的是提供一个供其他程序执行的良好环境,因此它必须使计算机( A.使用方便B. 高效工作C.合理使用资源D.使用方便并高效工作3.允许多个用户以交互方式使用计算机的操作系统是( 。

A.分时操作系统B. 批处理单道系统C.实时操作系统D.批处理多道系统4.下列系统中( 是实时系统。

A.计算机激光照排系统B. 办公自动化系统C.化学反应堆控制系统D.计算机辅助设计系统5.操作系统是一种系统软件,它( 。

A.控制程序的执行B. 管理计算机系统的资源C.方便用户使用计算机D.管理计算机系统的资源和控制程序的执行6.计算机系统把进行( 和控制程序执行的功能集中组成一种软件,称为操作系统A.CPU 管理B.作业管理C.资源管理D.设备管理7.批处理操作系统提高了计算机系统的工作效率,但( 。

A.不能自动选择作业执行B. 无法协调资源分配c.不能缩短作业执行时间D 在作业执行时用户不能直接干预8.分时操作系统适用于( 。

A.控制生产流水线B.调试运行程序c.大量的数据处理D.多个计算机资源共享9.在混合型操作系统中,“前台”作业往往是指( 。

A.由批量单道系统控制的作业B.由批量多道系统控制的作业c.由分时系统控制的作业D.由实时系统控制的作业10.在批处理兼分时的系统中,对( 应该及时响应,使用户满意。

A.批量作业B.前台作业c.后台作业D.网络通信11.实时操作系统对可靠性和安全性要求极高,它( 。

A.十分注重系统资源的利用率B.不强调响应速度c.不强求系统资源的利用率D.不必向用户反馈信息12.分布式操作系统与网络操作系统本质上的不同之处在于( 。

A.实现各台计算机之间的通信B.共享网络个的资源c.满足较大规模的应用D.系统中若干台计算机相互协作完成同一任务13.SPOOL技术用于( 。

(完整版)操作系统第五版费祥林_课后习题答案解析参考

(完整版)操作系统第五版费祥林_课后习题答案解析参考

第一章操作系统概论1、有一台计算机,具有IMB 内存,操作系统占用200KB ,每个用户进程各占200KB 。

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

由题意可知,除去操作系统,内存还能容纳4 个用户进程,由于每个用户进程等待I/O的时间为80 % , 故:CPU利用率=l-(80%)4 = 0.59若再增加1MB 内存,系统中可同时运行9 个用户进程,此时:cPu 利用率=l-(1-80%)9 = 0.87故增加IMB 内存使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)两道程序运行期间,CPU存在空闲等待,时间为100 至150ms 之间(见图中有色部分)(2)程序A 无等待现象,但程序B 有等待。

程序B 有等待时间段为180rns 至200ms 间(见图中有色部分)3 设有三道程序,按A 、B 、C优先次序运行,其内部计算和UO操作时间由图给出。

试画出按多道运行的时间关系图(忽略调度执行时间)。

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

操作系统习题解析

操作系统习题解析
试从交互性、及时性以及可靠性三个方面,比较分时系统与实时系统。P11
已知一个求值公式(A2+3B)/(B+5A),若A,B已赋值,试画 出该公式求值过程的前趋图,并用信号量解决公式的求解过程。 开始 S1:x1=A*A S2:x2=3*B S3:x3=5*A S1 S4:x4=x1+x2 S5:x5=B+x3 S4 S6:x6=x4/x5 结束 S5 S2 S3
A:1
B:2
C:4 D:2
7.下面8个系统中,必须是实时操作系统的有( ) A计算机辅助设计系统;B 航空定票系统;C 过程控制系统;D 机器翻译系统;E 办公自动化 系统;F 计算机激光照排系统;G情报检索系统;H导弹的制导系统
ABCGH
二、 简答题 在操作系统中实现虚拟的关键技术是什么?并加以说明。
操作系统中所谓的”虚拟“,是指通过某种技术把一个物理实体变为若干个逻辑上 的对应物,相应的用于实现虚拟的技术称为虚拟技术。在操作系统中利用了多种虚拟技 术分别用来实现虚拟处理机、虚拟内存、虚拟外设和虚拟信道等。虚拟的实现主要是通 过分时技术,例如,多道程序系统中,通过分时技术来实现虚拟处理机;将一台物理处 理机虚拟为多台逻辑上的处理机,是靠多道程序分时地使用同一台物理处理机来实现的。 微观上,该处理机在每一时刻只运行一道程序,它们分时地运行;然而在宏观上,系统 中确有几道程序在同时运行,从而给用户的感觉是系统中同时同时有多台处理机在为其 中的每一道程序服务,显然用户所感觉到的处理机并不实际存在。
A:4 B:5
5.采用(A)结构时,将OS分成用于实现OS最基本功能的内核和提供各种服务的服 务器两个部分。通常,下列模块中必须包含在操作系统内核中的是(B)模块。 A:(1)整体式;(2)模块化;(3)层次式;(4)微内核。 B:(1)内存分配;(2)中断处理;(3)文件处理;(4)命令处理。 A:4 B:2

操作系统习题与解答(含答案)

操作系统习题与解答(含答案)

操作系统习题与解答(含答案)第⼀章操作系统引论⼀、选择题1.在计算机系统中配置操作系统的主要⽬的是(),操作系统的主要功能是管理计算机系统中的(),其中包括()管理和()管理,以及设备管理和⽂件管理。

这⾥的()管理主要是对进程进⾏管理。

(1)A.增强计算机系统的功能;B.为了使⽤系统的资源;C.提⾼系统的运⾏速度;D.提⾼系统使⽤效率,合理地组织系统的⼯作流程,以提⾼系统吞吐量。

(2)A.程序和数据;B.进程;C.资源;D.作业;E.任务。

(3)(4)A.存储器;B.虚拟存储器;C.运算器;D.处理机;E.控制器。

2.操作系统有多种类型:(1)允许多个⽤户以交互⽅式使⽤计算机的操作系统,称为();(2)允许多⽤户将若⼲个作业提交给计算机系统集中处理的操作系统称为();(3)在()的控制下,计算机系统能及时处理由过程控制反馈的数据,并做出响应。

A.批处理操作系统;B.分时操作系统;C.实时操作系统;D.微机操作系统;E.多处理机操作系统。

3.在下列性质中,哪⼀个不是分时系统的特征。

()A.交互性B.多路性C.成批性D.独占性4.实时操作系统追求的⽬标是()。

A.⾼吞吐率B.充分利⽤内存C.快速响应D.减少系统开销5. 现代操作系统的两个基本特征是()和资源共享A.多道程序设计B.中断处理C.程序的并发执⾏D.实现分时与实时处理6.引⼊多道程序的⽬的在于()。

A.有利于代码共享,减少主、辅存信息交换量。

B.提⾼实时响应速度。

C.充分利⽤CPU,减少CPU等待时间D.充分利⽤存储器7.操作系统是⼀组().A.⽂件管理程序B.中断处理程序C.资源管理程序D.设备管理程序8.()不是操作系统关⼼的主要问题.A.管理计算机裸机B.设计、提供⽤户程序与计算机硬件系统的界⾯C.管理计算机系统资源D.⾼级程序设计语⾔的编译器9.⽤户在⼀次计算机过程中,或者⼀次事物处理中,要求计算机完成所做的⼯作的集合,这是指().A.进程B.程序C.作业D.系统调⽤10.订购机票系统处理各⾃各个终端的服务请求,处理后通过终端回答⽤户,所以它是⼀个()。

操作系统习题解答

操作系统习题解答
隐式操作的优点:编程方便 缺点:增加系统的开销
2. (9分)假设有一个文件系统,它里面的文件被删除 后,连接到该文件的链接依然存在,但此时文件的磁 盘空间再度被利用。如果一个新的文件被创建在同一 个存储区域或具有相同的绝对路径,这会产生什么问 题?如何才能避免这样的问题?
非法访问数据 在删除文件时,也同时删除所有链接。可以通过: 1)维护一个引用列表,删除文件时,删除所有引用 2)维护一个引用计数,只有当计数器减少为0时,才 真正删除文件
为了实现独立性,在驱动程序之上设置层设备独立 软件,关键是在系统中必须设置一张逻辑设备表LUT 来进行映射。。。
(3)设备驱动器应具有哪些功能? 1)接受由I/O进程发来的I/O命令和参数 2)检查用户I/O请求的合法性 3)查询I/O设备的状态,如果就绪,传递参数;否 则,将请求进程挂到设备请求队列上等待 4)发出I/O命令 5)响应由设备控制器的中断请求
20/18 = 1, 500/18 = 27, 750/18 = 41, 900/18 = 50
寻道:2->2->1->27->41->50 = 50
(2) 若采用显式链接方式,FAT存储在起始块号为1的若 干连续盘块内,每个FAT表项占用2个字节。现在需要在 600号块上为该文件尾部追加50B的数据,请计算寻道距离 。(6分)
1.44MB/1KB = 1440, 1440*2B/1KB -> FAT存在1,2,3 块,0磁道; 600/18 = 33
寻道:2->2->0->33->2 = 66
5. (12分)存放在某个磁盘上的文件系统,采用混合索引分配方式 ,其FCB中共有13个地址项,第0~9个地址项为直接地址,第10个地 址项为一次间接地址,第11个地址项为二次间接地址,第12个地址 项为三次间接地址。如果每个盘块的大小为512B,若盘块号需要用 3个字节来描述,而每个盘块最多存放170个盘块地址:

操作系统-第3章习题解析

操作系统-第3章习题解析

操作系统-第3章习题解析第三章习题解析1.⾼级调度不低级调度的主要任务是什么?为什么要引⼊中级调度?答:⾼级调度的主要任务是根据某种算法,把外存上处于后备队列中的那些作业调⼊内存。

低级调度是保存处理机的现场信息,按某种算法先取进程,再把处理器分配给进程。

引⼊中级调度的主要⽬的是为了提⾼内存利⽤率和系统吞吐量。

使那些暂时不能运⾏的进程不再占⽤内存资源,将它们调⾄外存等待,把进程状态改为就绪驻外存状态或挂起状态。

2.处理机调度算法的共同⽬标是什么?批处理系统的调度⽬标⼜是什么?答:共同⽬标:资源利⽤率,公平性,平衡性,策略强制执⾏。

批处理系统的调度⽬标:平均周转时间短,系统吞吐量⾼,处理机利⽤率⾼。

3.何谓作业、作业步和作业流?答:作业包含通常的程序和数据,还配有作业说明书。

系统根据该说明书对程序的运⾏进⾏控制。

批处理系统中是以作业为基本单位从外存调⼊内存。

作业步是指每个作业运⾏期间都必须经过若⼲个相对独⽴相互关联的顺序加⼯的步骤。

作业流是指若⼲个作业进⼊系统后依次存放在外存上形成的输⼊作业流;在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。

4.在什么情况下需要使⽤作业控制块JCB?其中包含了哪些内容?答:每当作业进⼊系统时,系统便为每个作业建⽴⼀个作业控制块JCB,根据作业类型将它插⼊到相应的后备队列中。

JCB包含的内容通常有:1)作业标识 2)⽤户名称 3)⽤户账户 4)作业类型(CPU繁忙型、I/0芳名型、批量型、终端型) 5)作业状态 6)调度信息(优先级、作业已运⾏) 7)资源要求 8)进⼊系统时间 9)、开始处理时间 10)作业完成时间 11)作业退出时间 12)资源使⽤情况等5.在作业调度中应如何确定接纳多少个作业和接纳哪些作业?答:作业调度每次接纳进⼊内存的作业数,取决于多道程序度。

应将哪些作业从外存调⼊内存,取决于采⽤的调度算法。

最简单的是先来服务调度算法,较常⽤的是短作业优先调度算法和基于作业优先级的调度算法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A:4 B:2
6.在3.X版本以前的MS-DOS是(A)操作系统,Windows95是(B)操作系统,WindowsXP是(C) 操作系统,它们都是由(D)开发的。
A,B,C:(1)单用户单任务;(2)单用户多任务;(3)多用户单任务;(4)多用户多任务。 D:(1)IBM公司;(2)Microsoft公司;(3)Microsoft和IBM联合;(4)Bell实验室;
}
void conductor(void) { while(TRUE){ 上、下乘客;关车门; V(s2); 售票; P(s1); 开车门;上、下乘客;} }
coend
struct semaphore s1,s2=1,0;
cobegin
void driver(void)
{
while(TRUE){
P(s2);
习题选讲与解析
一、选择题 1.在计算机系统中配置操作系统的主要目的是(A)。操作系统的主要功能是管理
计算机系统中的(B),其中包括(C)、(D),以及文件和设备。这里的(C)管 理主要是对进程进行管理。 A:(1)增强计算机系统的功能;(2)提高系统资源的利用率;(3)提高系统的运
行速度;(4)合理组织系统的工作流程,以提高吞吐量。 B:(1)程序和数据;(2)进程;(3)资源;(4)作业;(5)软件;(6)硬件。 C,D:(1)存储器;(2)虚拟存储器;(3)运算器;(4)处理机;(5)控制器。
答:不会。若所有的资源都被占用,而占用者又都不满 足必须的全部资源,此时就有一个或几个进程无限期地 等待更多的资源,系统就会出现死锁。本题中若4 台设 备资源都被占用,则其中一定有一个进程获得2台设备资 源(满足其最大的需求量),这个进程必然会在有限的时 间内完成其工作,并释放其所占用的2台资源, 这样也 就能满足其它二进程对设备资源的要求,继续完成它们 各自的工作。
struct semaphore s,sp,so=1,0,0; cobegin void father (void)
{ while(TRUE){
have an apple; P(s); put an apple; V(sp); } }
void mother (void) { while(TRUE){ have an orange; P(s); put an orange;
启动车辆;
正常行车;
到站停车;
V(s1);}
}
void conductor(void)
{
while(TRUE){
P(s1);
开车门;
上、下乘客;
关车门;
V(s2);
售票;}
}
coend
司机-售票员问题另解:
S1是否可以开车门=1 S2是否可以发动车辆=0
1.在某系统中,三个进程共享四台设备资源,这些资源 一次只能一台地为进程服务和释放,每个进程最多需要 二台设备资源,试问在系统中是否会产生死锁?
已知一个求值公式(A2+3B)/(B+5A),若A,B已赋值,试画 出该公式求值过程的前趋图,并用信号量解决公式的求解过程。
开始
S1:x1=A*A S2:x2=3*B S3:x3=5*A
S4:x4=x1+x2
S5:x5=B+x3
S6:x6=x4/x5
S1
S2
S4
结束
S6
S3 S5
struct semaphore a,b,c,d,e,=0,0,0,0,0;

操作系统中所谓的”虚拟“,是指通过某种技术把一个物理实体变为若干个逻辑上
的对应物,相应的用于实现虚拟的技术称为虚拟技术。在操作系统中利用了多种虚拟技
术分别用来实现虚拟处理机、虚拟内存、虚拟外设和虚拟信道等。虚拟的实现主要是通
过分时技术,例如,多道程序系统中,通过分时技术来实现虚拟处理机;将一台物理处
理机虚拟为多台逻辑上的处理机,是靠多道程序分时地使用同一台物理处理机来实现的。
微观上,该处理机在每一时刻只运行一道程序,它们分时地运行;然而在宏观上,系统
中确有几道程序在同时运行,从而给用户的感觉是系统中同时同时有多台处理机在为其
中的每一道程序服务,显然用户所感觉到的处理机并不实际存在。
试从交互性、及时性以及可靠性三个方面,比较分时系统与实时系统。P11
A:1 B:2 C:4 D:2
7.下面8个系统中,必须是实时操作系统的有( ) A计算机辅助设计系统;B 航空定票系统;C 过程控制系统;D 机器翻译系统;E 办公自动化 系统;F 计算机激光照排系统;G情报检索系统;H导弹的制导系统
ABCGH
二、 简答题 在操作系统中实现虚拟的关键技术是什么?并加以说明。
A:2 B:3 C:4 D:1
2.操作系统有多种类型:允许多个用户以交互方式使用计算机的操作系统称为(A); 允许多个用户将若干个作业提交给计算机系统集中处理的操作系统称为(B);在 (C)的控制下,计算机系统能及时处理由过程控制反馈的数据,并做出响应;在IBM -PC机上的操作系统称为(D)。 A,B,C,D:(1)批处理操作系统;(2)分时操作系统;(3)实时操作系统;(4)
母 S2:parbegin P(empty); count:=count+1; V(orange); do sth else parend
女 S4:parbegin P(apple); count:=count-1; If(count=0) V(empty); do sth else parend
struct semphore plate,platempty,orange,apple=1,1,0,0;
coend
Plate 1 爸私 applempty 盘中无苹果 1 女私applefull盘中有苹果0 妈私orangempty无桔子1 儿私orangefull有桔子0


{
{
p(plate);
P(applempty); p(applefull);
放苹果;
P(plate);
V(applefull); 取苹果;
V(plate); }
V(applempty); }
母 { p(plate); P(orangempt
y); 放桔子; V(orangefull); V(plate); }
儿 { p(orangefull); P(plate); 取桔子; V(plate); V(orangempty); }
mutex 盘子 a表示爸爸是否在盘中放入苹果 b 女儿是否可吃苹果 c表示妈妈是否在盘中放桔子 d为儿子是否可吃桔子
V(orange); V(plate); V(plate);
V(plate);
end
end
end
mother(void) begin P(apple); P(plate); 吃苹果; V(platempty); V(plate); end coend
设公共汽车上,司机和售票员的活动分别是:
司机:
售票员:
V(so); }
}
void son (void) { while(TRUE){ P(so); get an orange; V(s); eat an orange;} }
void daught (void) { while(TRUE){ P(sp); get an apple; V(s); eat an apple;} }
微机操作系统;(5)多处理机操作系统。
A:2 B:1 C:3 D:4
3.在设计分时操作系统时,首先要考虑的是(A);在设计批处理操作系统时,先 要考虑的是(B);在设计实时操作系统时,首先要考虑的是(C)。 A,B,C:(1)灵活性和可适应性;(2)交互性和响应时间;(3)周转时间和 系统吞吐量;(4)实时性和可靠性。
son P(orgfull); P(mutex); get an apple; V(avail); V(mutex);
Begin P(apple); P(pan) V(apple); V(pan); P(orange); P(pan); V(orange); V(pan);
P(pan); P(apple); V(apple); V(apple); V(pan); P(pan); P(orange); V(orange); V(pan);
启动车辆
上下乘客
正常行车
关车门
到站停车
售票
开车门
上下乘客
在汽车不断到站,停车,行驶过程中,这两个活动的同步关系。
S1是否可以开车门 S2是否可以发动车辆
struct semaphore s1,s2=0,0; cobegin void driver(void)
{ while(TRUE){ p(s2); 启动车辆; 正常行车; 到站停车; V(s1);}
某寺庙,有小和尚和老和尚若干,有一个水缸,由小和尚
提水入缸供老和尚饮用。水缸可以容纳10桶水,水取自同一口
井中,由于水井口窄,每次只能容纳一个水桶取水。水桶总数
为3个。每次入水、取水仅为一桶,且不可同时进行。试给出
有关取水、入水的算法描述。
应首先考虑清楚本题需要几个进程。从井中取水后向缸中倒 水此为连续动作,可算同一进程,从缸中取水为另一进程。在考 虑信号量,有关互斥的资源有水井(一次仅一个水桶进出),水 缸(一次如水取水时均为一桶),分别为之设置信号量 mutex1,mutex2控制互斥;另有同步问题存在:三个水桶无论 从井中取水还是入出水缸都是一次一个,应为之设信号量count, 抢不到水桶的进程只好等待;还有水缸满时,不可入水,设信号 量empty,控制入水量,水缸空时不可出水,设信号量full,控制出 水量。
四人动作未分开,apple和orange变量的含义不明确
empty=1; apple=0;orange=0;
相关文档
最新文档