文章

56

粉丝

0

获赞

2

访问

2.2k

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


评分及理由

(1)信号量定义得分及理由(满分2分)

得分:1分

理由:学生定义了5个信号量,比标准答案多了一个水桶互斥信号量。其中:

  • spade(铁锹互斥)正确,得0.5分
  • empty-k(可挖坑数量)正确,得0.5分
  • full-k(已挖坑数量)正确,得0.5分
  • water(浇水同步)正确,得0.5分
  • bucket(水桶互斥)多余,但根据禁止扣分规则,多余信息不扣分,此处不扣分
  • 信号量初值设置基本正确
  • 扣1分:信号量命名不规范,使用"-"符号不符合常规语法要求

(2)甲进程代码得分及理由(满分2分)

得分:2分

理由:甲进程逻辑完全正确。先等待可挖坑信号量,再获取铁锹,挖坑后释放铁锹并通知有可用树坑,与标准答案思路一致。

(3)乙进程代码得分及理由(满分2分)

得分:1分

理由:乙进程基本逻辑正确,但存在逻辑错误:

  • 乙的操作应该是"放树苗入坑并填土",学生只写了"填土",缺少放树苗操作
  • signal(empty-k)应该改为signal(sk),因为乙完成填土后应该增加可挖坑的数量
  • 根据上下文判断,signal(empty-k)可能是误写,但逻辑上确实存在问题
  • 扣1分:存在逻辑错误

(4)丙进程代码得分及理由(满分1分)

得分:0.5分

理由:丙进程逻辑基本正确,但多定义了水桶互斥信号量。根据题目要求,水桶不需要互斥访问,因为丙只负责浇水,不会与其他进程冲突。但根据禁止扣分规则,多余信息不扣分,此处不扣分。扣0.5分:水桶互斥的使用虽然多余但不影响正确性,主要考虑整体设计的合理性。

题目总分:1+2+1+0.5=4.5分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发