文章
200
粉丝
0
获赞
2
访问
93.6k
semaphore entrance = 1;//入口互斥
semaphore empty = 500;//空位置
semaphore mutex = 1;//互斥改变场内人数
cobegin
参观者进程i:
{
p(mutex)
p(empty)
v(mutex)
p(entrance)
进门;
v(entrance)
参观;
p(entrance)
出门;
v(entrance)
p(mutex)
v(empty)
v(mutex)
}
coend
评分及理由
(1)信号量定义及初值(满分4分)
得分:3分
理由:学生定义了三个信号量,其中empty和mutex的初值和含义正确(各1分),但entrance信号量与标准答案中的mutex功能重复(扣1分)。
(2)对mutex的P、V操作(满分2分)
得分:1分
理由:学生对mutex的使用逻辑错误,mutex应在empty操作前后保护,但学生的代码中mutex的P、V操作位置不正确(扣1分)。
(3)对empty的P、V操作(满分1分)
得分:0分
理由:学生对empty的P、V操作逻辑错误,empty的P操作应在mutex保护之外,且V操作应在出门后(扣1分)。
题目总分:3+1+0=4分
登录后发布评论
暂无评论,来抢沙发