软件水平考试

假设铁路自动售票系统有 n 个售票终端,该系统为每个售票终端创建一个进程 Pi(i=1,2,…,n)管理车票销售过程。假设 Tj(j=1,2,…,m)单元存放某日某趟车的车票剩余票数,Temp 为 Pi进程的临时工作单元,x 为某用户的购票张数。Pi进程的工作流程如下图所示, 用 P 操作和Ⅴ操作实现进程间的同步与互斥。初始化时系统应将信号量 S 赋值为(请作答此空)。 图中(a)、(b)和(c)处应分别填入( )。A.n-1 B.0 C.1 D.2

题目
假设铁路自动售票系统有 n 个售票终端,该系统为每个售票终端创建一个进程 Pi(i=1,2,…,n)管理车票销售过程。假设 Tj(j=1,2,…,m)单元存放某日某趟车的车票剩余票数,Temp 为 Pi进程的临时工作单元,x 为某用户的购票张数。Pi进程的工作流程如下图所示, 用 P 操作和Ⅴ操作实现进程间的同步与互斥。初始化时系统应将信号量 S 赋值为(请作答此空)。 图中(a)、(b)和(c)处应分别填入( )。


A.n-1
B.0
C.1
D.2
如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

某火车票销售系统有n个售票点,该系统为每个售票点创建一个进程Pi(i=1,2,…,n)。假设Hi(j=1,2+,…,m)单元存放某日某车次的剩余票数,Temp为Pi进程的临时工作单元,x为某用户的订票张数。初始化时系统应将信号量S赋值为(23)。Pi进程的工作流程如下,若用P操作和V操作实现进程间的同步与互斥,则图中a、b和c应分别填入(24)。

A.0

B.1

C.2

D.3


正确答案:B

第2题:

假设系统中有n个进程共享3台扫描仪,并采用PV操怍实现进程同步与互斥。若系统信号量S的当前值为一l,进程Pl.P2又分别执行了1次P(S)操作,那么信号量S的值应为( )。

A.3

B.-3

C.1

D.-1


正确答案:B

第3题:

设一个飞机航班售票系统有n个售票处,每个售票处通过终端访问系统的公共数据区,假定公共数据区中的一些单元Aj(j=1,2,3,……)分别存放某月某日某次航班的余票数。设P1,P2,……Pn表示各个售票处的处理进程,R1,R2,……Rn表示各进程执行时所用的工作单元。当各售票处有旅客买票时,请用PV操作实现各处理进程间的工作。


参考答案:
Begin
S:semaphore;
S:=1;
Cobegin
Process Pi(i=1,2,…,n)
begin
按旅客订票要求找到Aj;
P(S);
Ri:=Aj;
if Ri>=1 then begin
Ri:=Ri-1;
Aj:=Ri;
V(S);
输出一张票
end
else begin
V(S);
输出“票已售完”
end
end;
Coend;
End;

第4题:

假设系统有6个进程共享一个互斥段,如果最多允许3个进程同时进入互斥段,则信号量S的初值为(请作答此空),信号量S的变化范围是( )。

A.0
B.1
C.3
D.6

答案:C
解析:
本题考查操作系统进程管理中信号量与同步互斥方面的基础知识。
本题中已知有6个进程共享一个互斥段,而且最多允许3个进程同时进入互斥段,这意味着系统有3个单位的资源,所以,信号量的初值应设为3。
当第一个申请该资源的进程对信号量S执行P操作,信号量S减l等于2,进程可继续执行;当第二个申请该资源的进程对信号量S执行P操作,信号量S再减1等于1,进程可继续执行;当第三个申请该资源的进程对信号量S执行P操作,信号量S再减1等于0,进程可继续执行;当第四个申请该资源的进程对信号量S执行P操作,信号量S再减1等于-1,进程申请的资源得不到满足处于等待状态;当第五个申请该资源的进程对信号量S执行P操作,信号量S减1等于-2;当第六个申请该资源的进程对信号量S执行P操作,信号量S再减1等于-3,进程申请的资源得不到满足处于等待状态。所以信号量S的变化范围是-3~3。

第5题:

若某航空公司的飞机订票系统有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)


正确答案:A
解析:这是一道考查利用P、V操作实现进程间的同步和互斥工作的综合理解题。由于“系统为每个订票终端创建一个售票终端的进程”,“Hj(j=1,2,…,m)表示公共数据区,分别存放各个航班的现存票数”,可见公共数据区厅/是一个临界资源,最多允许一个终端进程使用,因此需要设置一个互斥信号量S,初值为1。售票终端进程Pi先按照定票要求找到对应的公共数据区Hj,接着执行P(S)操作,用于检查是否有其他的售票终端进程正在使用公共数据区Hj。若有,即执行该操作前S值等于0,则本售票终端进程进入等待状态。若没有,即执行该操作前S值等于1,则将S值减1后将公共数据区Hj值复制给工作单元Temp。若Temp值大等于1,即表示该公共数据区Hj中相应航班有剩余票数,则将Temp值减1后复制给相应的公共数据区Hj,然后执行V(S)操作,表明该售票终端进程交出公共数据区Hj的使用权,并唤醒其他进入等待状态的售票终端进程。最后售票终端进程输出一张相应航班的飞机票。若Temp值小于1,即表示该公共数据区Hj中已没有相应航班的飞机票,则该售票终端进程执行V(S)操作,交出公共数据区Hj的使用权,并唤醒其他进入等待状态的售票终端进程。最后售票终端进程输出“票已售完”的提示信息。因此,(21)空缺处的正确答案为选项A。

第6题:

某航空公司机票销售系统有n个售票点,该系统为每个售票点创建一个进程Pi(i=1,2,…,n)管理机票销售。假设Tj(j=1,2,…,m)单元存放某日某航班的机票剩余票数,Temp为Pi进程的临时工作单元,x为某用户的订票张数。初始化时系统应将信号量S赋值为( )。Pi进程的工作流程如下图所示,若用P操作和V操作实现进程间的同步与互斥,则图中空(a),空(b)和空(c)处应分别填入( )。

A.0B.1C.2D.3A.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)


正确答案:B,A

第7题:

某酒店的客房预订系统有n个预订终端,系统为每个终端创建一个进程Pi(i=1,2,…, n)。假设Xj(j=1,2,…,m)存放各种规格住房的剩余房源,Temp为临时工作单元,终端创建一个进程Pi的工作流程如下图所示,图中①、②和③处将执行P操作或V操作。为了保证各进程间的同步与互斥,系统初始化时将信号量S赋值为(47),下图中①、②和③处应依次填入(48)。

A.0

B.1

C.2

D.3


正确答案:B
解析:本题考查的是PV操作方面的基本知识。试题(47)的正确答案是B,因为公共数据单元Xj是一个临界资源,最多允许1个终端进程使用,因此需要设置一个互斥信号量S,初值等于1。试题(48)的正确答案是A中,因为进入临界区时执行P操作,退出临界区时执行 V操作。

第8题:

假设系统采用PV操作实现进程同步与互斥,若有n个进程共享一台扫描仪,那么当信号量S的值为-3时,表示系统中有(23)个进程等待使用扫描仪。

A.0

B.n-3

C.3

D.n


正确答案:C
在PV操作中,信号量用于表示系统中现有资源的数量,当信号量值为负数时,代表这类资源系统已经分配完毕。此时,对负数取绝对值能得到当前等待进程数量。

第9题:

若某航空公司的飞机订票系统有n个订票终端,系统为每个订票终端创建一个售票终端的进程。假设Pi(i=1,2,…,n)表示售票终端的进程,Hj(i=1,2,…,m)表示公共数据区,分别存放各个航班的现存票数,Temp为工作单元。系统初始化时将信号量S赋值为(46)。Pi进程的工作流程如下,a、b和c处将执行P操作和V操作,则图中a、b和c应填入(47)。

A.0

B.1

C.2

D.3


正确答案:B
解析:本题考查的是PV操作方面的基本知识。试题(46)的正确答案是B,因为公共数据区为Hj是一个临界资源,最多允许一个终端进程使用,因此需要设置一个互斥信号量s,初值等于1。试题(47)的正确答案是A,因为进入临界区时执行P操作,退出临界区时执行V操作。

第10题:

假设某计算机系统中资源R的可用数为6,系统中有3个进程竞争R,且每个进程都需要i个R,该系统可能会发生死锁的最小i值是 (请作答此空) 。若信号量S的当前值为-2,则R的可用数和等待R的进程数分别为 ( ) 。

A.1
B.2
C.3
D.4

答案:C
解析:
如果i=1,即每个进程都需要1个R,3个进程同时运行需要3个R,还剩3个R,不会发生死锁。如果i=2,即每个进程都需要2个R,3个进程同时运行需要6个R,而R的可用数正好为6,不会发生死锁。如果i=3,即每个进程都需要2个R,当3个进程分别占有2个R时,都需要再申请一个R资源才能正常运行,但此时已经没有R资源了,进程之间便出现了相互等待的状况,发生死锁。
信号量的值小于0,表示没有可用的资源,其绝对值表示阻塞队列中等待该资源的进程数。

更多相关问题