某书店有一个收银员,该书店最多允许n个购书者进入。将收银员和购书者看做不同的进程,其工作流程如图6-3所示。利用PV操作实现该过程,设置信号量S1、S2和Sn,初值分别为0, 0, n。则图6-3中a1、a2、b1和b2应分别填入(22)。A.P(S1)、V(S2)、P(Sn)、V(S2)B.P(S2)、V(S)、V(Sn)、P(S2)C.V(S1)、P(S2)、P(S1)、V(S2)D.V(Sn)、P(Sn)、P(S2)、V(S1)

题目

某书店有一个收银员,该书店最多允许n个购书者进入。将收银员和购书者看做不同的进程,其工作流程如图6-3所示。利用PV操作实现该过程,设置信号量S1、S2和Sn,初值分别为0, 0, n。则图6-3中a1、a2、b1和b2应分别填入(22)。

A.P(S1)、V(S2)、P(Sn)、V(S2)

B.P(S2)、V(S)、V(Sn)、P(S2)

C.V(S1)、P(S2)、P(S1)、V(S2)

D.V(Sn)、P(Sn)、P(S2)、V(S1)


相似考题
更多“ 某书店有一个收银员,该书店最多允许n个购书者进入。将收银员和购书者看做不同的进程,其工作流程如图6-3所示。利用PV操作实现该过程,设置信号量S1、S2和Sn,初值分别为0, 0, n。则图6-3中a1、a2、b”相关问题
  • 第1题:

    某工厂仓库有一名保管员,该仓库可存放n箱零件。该工厂生产车间有m名工人,只要仓库空闲,工人将生产好的整箱零件放入仓库,并由保管员登记入库数量:该工厂销售部有k名销售员,只要仓库库存数能满足客户要求,便可提货,并由保管员登记出库数量。规定工人和销售员不能同时进入仓库,但是工人和工人,销售员和销售员可以同时进入仓库,其工作流程如下图所示。假设系统中P操作表示申请一个资源,当执行P操作叶对信号量减1,若信号量 S≥0,则执行P操作的进程继续执行,否则等待。系统中v操作表示释放一个资源,当执行V操作时对信号量加1,若信号量>0,则执行V操作的进程继续执行;若信号量≤ 0,则从阻塞状态唤醒一个进程,并将其插入就绪队列,然后执行V操作的进程继续。为了利用PV操作正确地协调工人和销售员进程之间的工作,设置了信号量S1、S2和S3,他们的初值分别为n、0和1。图中的a和b应填写(40);图中的c、d、g和h应分别填写(41):图中的c、d、g和h应分别填写(42)。

    A.P(S1)、V(S1)

    B.P(S1)、V(S2)

    C.P(S2)、V(S2)

    D.P(S2)、V(S1)


    正确答案:B
    解析:本题考查操作系统中进程之间的相互作用,主要是如何利用P、V操作实现进程间的同步和互斥。本题中,信号量S1表示仓库空闲位置个数,初值为n;S2表示仓库中零件箱数,初值为o;S3用于实现对保管员的互斥访问,初值为1。对于工人进程,首先应执行P(S1),看仓库中是否有空闲位置,若有,则将零件送入仓库,然后执行V(S2),表明仓库中已有一箱零件,通知销售员可以提货。然后执行P(S3),看保管员是否空闲,若空闲,登记入库数,然后V(S3),使保管员处于空闲状态,所以第40题正确答案为B;对于销售员进程,首先执行P(S2),看仓库中是否有货物,若有,可以提货,然后执行 V(S1),表明已经提走一箱零件,空闲出一个位置,工人进程可以放置货物;然后执行 P(S3),看保管员是否空闲,若空闲,登记出库数,然后V(S3),使保管员处于空闲状态,所以第41题正确答案为D:第42题正确答案为D。

  • 第2题:

    假设某企业有一个仓库。该企业的生产部员工不断地将生产的产品送入仓库,销售部员工不断地从仓库中取产品。假设该仓库能容纳n件产品。采用PV操作实现生产和销售的同步模型如下图所示,该模型设置了3个信号量S、S1和S2,其中信号量S的初值为1,信号量S1的初值为(请作答此空),信号量S2的初值为( )。

    A.-1
    B.0
    C.1
    D.N

    答案:D
    解析:
    本题考察操作系统中进程通信的基础内容可参考《程序员教程(第四版)》第53页,例2-3。对于信号量S1表示仓库中空闲单元数(大于0表示可以将产品放入),初值为n。S2表示缓冲区的产品数,初值为0。

  • 第3题:

    某企业生产流水线M共有两位生产者,生产者甲不断地将其工序上加工的半成品放入半成品箱,生产者乙从半成品箱取出继续加工。假设半成品箱可存放n件半成品,采用PV操作实现生产者甲和生产者乙的同步可以设置三个信号量S、S1和S2,其同步模型如下图所示。信号量S是一个互斥信号量,初值为___1__;S1、S2的初值分别为____2__。
    2、_____

    A.n、0
    B.0、n
    C.1、n
    D.n、1

    答案:A
    解析:
    由于信号量S是一个互斥信号量,表示半成品箱当前有无生产者使用,所以初值为1。信号量S1表示半成品箱容量,故其初值为n。当生产者甲不断地将其工序上加工的半成品放入半成品箱时,应该先测试半成品箱是否有空位,故生产者甲使用P(S1)。信号量S2表示半成品箱有无半成品,初值为0。当生产者乙从半成品箱取出继续加工前应先测试半成品箱有无半成品,故生产者乙使用P(S2)。

  • 第4题:

    假设某企业有一个仓库。该企业的生产部员工不断地将生产的产品送入仓库,销售部员工不断地从仓库中取产品。假设该仓库能容纳n件产品。采用PV操作实现生产和销售的同步模型如下图所示,该模型设置了3个信号量S、S1和S2,其中信号量S的初值为1,信号量S1的初值为( ),信号量S2的初值为(请作答此空)。

    A.-1
    B.0
    C.1
    D.N

    答案:B
    解析:
    本题考察操作系统中进程通信的基础内容可参考《程序员教程(第四版)》第53页,例2-3。对于信号量S1表示仓库中空闲单元数(大于0表示可以将产品放入),初值为n。S2表示缓冲区的产品数,初值为0。

  • 第5题:

    某企业生产流水线M共有两位生产者,生产者甲不断地将其工序上加工的半成品放入半成品箱,生产者乙从半成品箱取出继续加工。假设半成品箱可存放n件半成品,采用PV操作实现生产者甲和生产者乙的同步可以设置三个信号量S、S1和S2,其同步模型如下图所示。

    信号量S是一个互斥信号量,初值为( );S1、S2的初值分别为(请作答此空)。

    A.n、0
    B.0、n
    C.1、n
    D.n、1

    答案:A
    解析:
    由于信号量S是一个互斥信号量,表示半成品箱当前有无生产者使用,所以初值为1。
    信号量S1表示半成品箱容量,故其初值为n。当生产者甲不断地将其工序上加工的半成品放入半成品箱时,应该先测试半成品箱是否有空位,故生产者甲使用P(S1)。信号量S2表示半成品箱有无半成品,初值为0。当生产者乙从半成品箱取出继续加工前应先测试半成品箱有无半成品,故生产者乙使用P(S2)。