问答题
有一阅览室,读者进入时必须先在一张表上进行登记。该表为每一个座位列出一个表目(包括座位号、姓名、阅览时间),读者离开时要撤销登记信息。阅览室有100个座位。
问答题
为描述读者的动作,应编写几个程序,应设置几个进程?程序和进程之间的对应关系如何?
【正确答案】
【答案解析】在本题中,每个读者都可视为一个进程,有多少读者就有多少进程。这些进程称为读者进程,设为P
i
(i=0,1,…)。读者进程P
i
执行的程序包括:登记、阅览和撤销。每个读者进程的活动都相同,所以其程序也相同。进程和程序的关系是各读者进程共用同一程序。
问答题
试用P,V操作描述这些进程间的同步关系。
【正确答案】
【答案解析】在读者进程所执行的程序中,对登记和撤销都需互斥执行,其信号量的初值为1,而对进入阅览室也需互斥执行,其信号量为100。现用P,V操作描述如下:
读进程P
i
(i=0,1,...)
P(S1)
P(S2)
登记
V(S2)
阅览
P(S2)
撤销
V(S2)
V(S1)
其中信号量S1的初值为100,信号量S2的初值为1。