2019年计算机学科专业基础综合试题 - 第43题回答
操作系统
发布于2025年10月13日 13:58
阅读数 483

评分及理由
(1)信号量定义部分得分及理由(满分2分)
得分:1分
理由:学生定义了碗的信号量bowl = m,这与标准答案中考虑碗数量限制的思路一致。但存在以下问题:
- 未考虑最大并发数限制(n-1),这是防止死锁的关键
- 筷子未使用信号量机制,而是用整型数组和互斥锁实现,这是逻辑错误
- 信号量拼写错误"semaphor"属于书写错误,不扣分
(2)资源申请逻辑得分及理由(满分4分)
得分:2分
理由:
- 学生实现了先申请碗再申请筷子的基本顺序,符合资源分层思想
- 使用互斥锁保护筷子状态的检查,避免了竞态条件
- 但核心逻辑错误:筷子资源管理未使用信号量机制,而是通过条件判断实现,这不符合题目要求的信号量P、V操作
- 在无法获取筷子时使用break退出循环,这会导致哲学家进程终止,不符合题目要求的持续交替就餐和思考
(3)资源释放逻辑得分及理由(满分2分)
得分:1分
理由:
- 正确释放了碗资源
- 正确释放了筷子资源(虽然实现方式不符合要求)
- 释放顺序基本合理
- 但筷子释放未使用信号量机制,扣分
题目总分:1+2+1=4分
登录后发布评论
暂无评论,来抢沙发