进程PA不断地向管道写数据,进程PB从管道中读数据并加工处理,如图5-1所示。如果采用P、V操作来实现进程PA和PB的管道通信,并且保证这两个进程并发执行的正确性,则至少需要(2)。
A.1个信号量,信号量的初值是0
B.2个信号量,信号量的初值是0、1
C.3个信号量,信号量的初值是0、0、1
D.4个信号量,信号量的初值是0、0、1、1
第1题:
重新定义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
第2题:
第3题:
1、系统中有3个进程A,B,C,相互协作完成对一组数据的分类汇总工作。进程A循环地从一个存着整数的文件中不断地读出数据,若该整数为偶数则放入1号缓冲区;若该整数为奇数则放入2号缓冲区。进程B不断的从1号缓冲区读出数据并累计求和;进程C不断的从2号缓冲区读出数据并累计求和。每个缓冲区最多都可以放5个整数。试用信号量的PV操作实现三个进程间的同步关系。 (1)请分析三个进程之间的互斥和同步关系 (2)说明信号量的设置、初值及含义。 (3)请用P、V操作写出它们能正确并发执行的程序。
第4题:
进程PA不断地向管道写数据,进程PB从管道中读数据并加工处理,如图3-4所示。如果采用PV操作来实现进程PA和进程PB间的管道通信,并且保证这两个进程并发执行的正确性,则至少需要______。
A.1个信号量,信号量的初值为0
B.2个信号量,信号量的初值分别为0,1
C.3个信号量,信号量的初值分别为0,0,1
D.4个信号量,信号量的初值分别为0,0,1,1
第5题:
综合题:有三个进程PA,PB和PC协作解决身份识别问题。PA从摄像头采集数据,存到缓冲区1,每次采集一个数据;PB对缓冲区1的数据进行处理,并将判别结果存到缓冲区2,每次处理一个数据;PC将缓冲区2的内容显示出来,每次显示一个结果。请用信号量保证该过程的正确执行。 (1)需要设置几个信号量?初始值为多少? (2)给出PA,PB,PC的算法描述。