试题详情
简答题从读卡机上读进N张卡片,复制并打印。要求复制的信息、打印的卡片与原卡片的信息完全一致。假设这一工作由3个进程get,copy和put来完成,它们用了两个缓冲区buffer1和buffer2,缓冲区只能容纳一张卡片的信息。其中,进程get的功能是依次将每张卡片上的信息从读卡机上读进buffer1;进程copy的功能是把buffer1中的信息复制到buffer2;进程put的功能是取出buffer2中的信息并从打印机上输出。 试用P,V操作描述3个进程间可并发运行的关系图(或程序),要求说明信号量的作用及信号量的初值,尽可能提高并发性。
  • 设互斥信号量S1,S2初值为1,分别用于对buffer1和buffer2的互斥访问;同步信号量Sn1,Sn2初值为1,分别表示buffer1和buffer2初始状态为空闲,可以放一张卡片信息;同步信号量Sm1,Sm2初值为0,分别表示buffer1和buffer2中的信息还没有(或已被取用了)。用P,V操作完成这3个并发进程间能正确运行的程序如下:

  • 关注下方微信公众号,在线模考后查看

热门试题