免费智能真题库 > 历年试卷 > 软件设计师 > 2021年下半年 软件设计师 上午试卷 综合知识
  第26题      
  知识点:   信号量与P、V操作
  章/节:   计算机软件知识       

 
进程P1、 P2、P3、P4、P5和P6的前趋图如下所示。用PV操作控制这6个进程之间同步与互斥的程序如下,程序中的空①和空②处应分别为(24),空③和空④处应分别为(25),空⑤和空⑥处应公别为(26)。
 
 
  A.  V(S6)和P(S5)
 
  B.  V(S5)和P(S6)
 
  C.  P(S5)和V(S6)
 
  D.  P(S5)和V(S5)
 
 
 

 
  第25题    2009年下半年  
   30%
进程PI、P2、P3和P4的前趋图如下:
  第23题    2013年下半年  
   20%
假设系统采用PV操作实现进程同步与互斥,若有n个进程共享一台扫描仪,那么当信号量S的值为-3时,表示系统中有(23)个进程等待使用..
  第25题    2010年下半年  
   35%
进程P1、P2、P3、P4和P5的前趋图如下:
若用PV操作控制进程P1〜P5并发执行的过程,则需要设置6个信号量S1、S2、S3.S4..
   知识点讲解    
   · 信号量与P、V操作
 
       信号量与P、V操作
        信号量机制主要有整型信号量、记录性信号量、信号量集机制。
        1)整型信号量与P、V操作
        信号量是一个整型变量,根据控制对象的不同赋予不同的值。信号量可分为以下两类。
        (1)公用信号量。实现进程间的互斥,初值为1或资源的数目。
        (2)私用信号量。实现进程间的同步,初值为0或某个正整数。
        信号量S的物理意义为:S≥0,表示某资源的可用数;S<0,其绝对值表示阻塞队列中等待该资源的进程数。P、V操作是实现进程同步与互斥的常用方法。
        P操作定义:S:=S-1,若S≥0,则执行P操作的进程继续执行;否则,若S<0,则置该进程为阻塞状态,并将其插入阻塞队列。
        V操作定义:S:=S+1,若S>0,则执行V操作的进程继续执行;否则,若S≤0,则从阻塞状态唤醒一个进程,并将其插入就绪队列,执行V操作的进程继续执行。
        2)利用P、V操作实现进程的互斥
        令信号量的初值为1,当进程进入临界区时执行P操作,退出临界区时执行V操作。则进入临界区的代码段如下。
        
        3)利用P、V操作实现进程的同步
        进程的同步是由于进程间合作而引起的相互制约问题。要实现进程的同步,可用一个信号量与消息联系起来。当信号量的值为0时表示消息未产生,当信号量的值为非0时表示希望的消息已经存在。假定用信号量S表示某条消息,进程可以通过调用P操作测试消息是否达到,调用V操作通知消息已经准备好。
   题号导航      2021年下半年 软件设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第26题    在手机中做本题