【问题2】(4分)
设S为信号量,P、V操作的形式化定义如图5-2和图5-3所示,请完成该形式化定义,将应填入(n)处的内容写在答题纸的对应栏中(直接填写编号即可)。
图5-2 P操作的形式化定义
图5-3 V操作的形式化定义
第1题:
设S为信号量,P、V操作的形式化定义如下图(a)和(b)所示,请完成该形式化定义,将应填入(n)处的内容写在答题纸的对应栏中。
第2题:
●在某超市里有一个收银员,且同时最多允许有n个顾客购物,我们可以将顾客和收银员看成是两类不同的进程,且工作流程如图1所示。为了利用PV操作正确地协调这两类进程之间的工作,设置了三个信号量S1、S2和Sn,且初值分别为0、0和n。这样图中的a应填写 (17) ,图中的b1、b2应分别填写 (18) 图中的c1、c2应分别填写 (19) 。
图1工作流程图
(17) A.P(S1)
B.P(S2)
C.P(Sn)
D.P(Sn)、P(S1)
(18) A.P(Sn)、V(S2)
B.P(Sn)、V(S1)
C.P(S2)、V(S1)
D.V(S1)、P(S2)
(19) A.P(S1)、V(S2)
B.P(Sn)、V(S1)
C.P(S2)、V(S1)
D.V(S1)、P(S2)
第3题:
阅读下列说明和程序,回答问题l至问题3.将答案填入答题纸的对应栏内。
【说明】
在开发某嵌入式系统时,设计人员根据系统要求,分别编写了如下程序,其中:
【程序1】;实现两个变量的值的互换;
【程序2】:完成某功能的C语言程序;
【程序3】和【程序4】:是P、V操作的形式化定义,设S为信号量。在多道程序系
统中,进程是并发执行的。这些进程间存在着不同的相互制约关系,主要表现为同步和
互斥两个方面。信号量是解决进程间同步与互斥的有效方法。
【程序1】
【程序3】
P操作的形式化定义
P (S)
{
(1):
If(2) {
阻塞该进程;
将该进程插入信号量S的等待队列
}
}
【程序4】
V操作的形式化定义:
V(S)
{
(3)
if(4) {
从信号量s的等待队列中取出队首进程
将其插入就绪队列:
}
}
【问题1】(6分)
执行【程序1】后,没有能够实现两个变量值的交换,为什么?请修改上述函数
实现两个变量值的交换,要求函数无返回值,形式为:void swap(...)。请将答案填写在
答题纸中对应的栏目。
【问题2】(3分)
请问【程序2】运行结果是什么?
【问题3】(6分)
请简述什么是临界资源?什么是临界区?
请完成【程序3】和【程序4】的形式化定义,将应填入(n)处的内容写在答题纸
的对应栏中。
第4题:
(a)智能网概念模型中分布功能平面模型如下图所示,请根据此图将应填入(n)处的 字句写在答题纸的对应栏内。
第5题:
第6题:
第7题:
第8题:
第9题:
第10题:
第11题:
第12题:
第13题:
进程P1、P2、P3和P4的前趋图如下所示:
若用PV操作控制进程P1~P4并发执行的过程,则需要设置5个信号量S1、S2、S3、S4和S5,且信号量S4-S5的初值都等于0。下图中a、b和c处应分别填写①;d、e和f处应分别填写②。
A.V(S1)V(S2)、P(S1)V(S3)和V(S4)
B.P(S1)V(S2)、P(S1)P(S2)和V(S1)
C.V(S1)V(S2)、P(S1)P(S3)和V(S4)
D.P(S1)P(S2)、V(S1)P(S3)和V(S2)
第14题:
重新定义P操作: P(s): S=S-1; if s<0 then {将本进程插入相应等待队列的队首}; V操作的定义不变。 使用上述定义的信号量操作。现有n个进程竞争进入一个临界区,需要使用(24),并保证进程能够以正常的次序公平地进入临界区。
A.1个信号量,初值为1
B.2个信号量,初值分别为1,0
C.n-1个信号量,初值均为1
D.n/2个信号量,初值均为1
第15题:
试题五(共 15 分)
阅读以下说明,回答问题 1 至问题 3,将解答填入答题纸的对应栏内。
【说明】
某公司要开发一个招投标市场计算机管理软件项目,具体项目描述如表 5-1。表 5-2表示分解的项目工作先后顺序。
请根据以上描述回答下列问题。
【问题 1】 (5 分)
请根据表 5-1 的项目描述,在答题纸对应位置完成项目里程碑甘特图。
【问题 2】 (6 分)
请根据表 5-2,计算每项工作的最早开始时间和最迟开始时间,完成表 5-3,并将计算结果填到答题纸的对应位置。
【问题 3】 (4 分)
在描述网络计划图时,由于节点表示方式可以有多种形式,进而有多种形式的网络计划图,如单代号或双代号网络图等。
图 5-1 是网络计划图中节点的一种表示方法。依据图 5-1 的节点表示格式及工作代码为 141 的节点示例图(如图 5-2 所示),完成图 5-3 所示工作代码为 122的节点图,将答案填到答题纸的对应位置。
第16题:
若某航空公司的飞机订票系统有n个订票终端,系统为每个订票终端创建一个售票终端的进程。假设 Pi(i=1,2,…,n)表示售票终端的进程,Hj(j=1,2,…,m)表示公共数据区,分别存放各个航班的现存票数,Temp为工作单元。Pi进程的工作流程如图6-3所示,a、b和c处将执行P操作和V操作,则图6-3中a、b和c处应分别填入(11)。
A.P(S)、V(S)和V(S)
B.P(S)、P(S)和V(S)
C.V(S)、P(S)和P(S)
D.V(S)、V(S)和P(S)
第17题:
第18题:
第19题:
第20题:
第21题:
第22题:
第23题:
简述信号量的定义和作用。P,V操作原语是如何定义的?