评分及理由
(1)得分及理由(满分7分)
学生答案整体思路正确,使用了信号量机制实现了三个进程的同步互斥关系,但存在以下逻辑错误:
- 在甲进程中,使用while循环和if条件判断keng<3来实现"树坑数量小于3时才可以挖坑"的要求,这种方法虽然功能上可以实现,但效率较低(忙等待),且不符合题目要求使用信号量进行同步的意图。标准答案使用sk信号量直接控制可挖坑数量更为合理。
- 在乙进程中,对铁锹的互斥访问逻辑不够完善,虽然使用了Qiao信号量,但在整个流程中缺乏对铁锹使用的完整保护。
- 信号量定义方面,mkeng初值设为0不合理,应该设为0表示初始没有可用坑。
- 整体代码结构较为复杂,没有标准答案简洁高效。
考虑到学生答案基本实现了功能要求,定义了必要的信号量,使用了PV操作,主要逻辑正确,但存在上述逻辑问题,扣2分。
得分:5分
题目总分:5分
登录后发布评论
暂无评论,来抢沙发