文章

118

粉丝

0

获赞

0

访问

29.6k

头像
2025年(408)计算机学科专业基础综合试题 - 第45题回答
操作系统
发布于2025年12月17日 17:30
阅读数 143


评分及理由

(1)得分及理由(满分7分)

学生答案整体思路正确,定义了四个信号量,与标准答案的四个信号量功能基本对应,并给出了合理的初值。具体分析如下:

  • empty=3:对应标准答案中的sk=3,表示初始可挖的树坑数量为3,符合题目“当树坑数量小于3时,甲才可以挖树坑”的要求。学生使用P(empty)控制甲挖坑的时机,逻辑正确。
  • pit=0:对应标准答案中的empty=0,表示初始可用的树坑数量为0。学生使用P(pit)控制乙开始工作的时机,逻辑正确。
  • bury=0:对应标准答案中的water=0,表示初始需要浇水的树苗数量为0。学生使用P(bury)控制丙开始工作的时机,逻辑正确。
  • shovel=1:对应标准答案中的mutexT=1,用于实现铁锹的互斥访问,逻辑正确。

在流程控制上:
甲:先申请可挖坑名额(P(empty)),再申请铁锹(P(shovel)),挖坑后释放铁锹(V(shovel)),并通知乙有坑可用(V(pit))。逻辑正确。
乙:先等待有坑可用(P(pit)),放树苗,再申请铁锹(P(shovel)),填坑后释放铁锹(V(shovel)),然后通知丙需要浇水(V(bury)),并释放一个可挖坑名额(V(empty))。逻辑正确。
丙:等待需要浇水的信号(P(bury)),然后浇水。逻辑正确。

学生答案与标准答案在信号量命名和部分执行顺序上略有不同(例如乙的“放树苗”在申请铁锹之前),但整体同步互斥关系正确,能够保证三人按“挖坑->放树苗填土->浇水”的顺序协作,且铁锹互斥使用。因此,该答案可得满分。

题目总分:7分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发