文章

212

粉丝

0

获赞

0

访问

76.2k

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


评分及理由

(1)信号量定义部分(满分2分)

得分:1分

理由:学生正确定义了筷子信号量数组chopsticks[n]并初始化为1,也正确定义了碗的信号量bowl(虽然写成了变量形式,但可以理解为信号量)。但额外定义了一个互斥信号量mutex,这个在标准答案中并不需要,且会影响并发性能。扣1分。

(2)资源获取逻辑部分(满分4分)

得分:2分

理由:学生正确使用了P(bowl)来获取碗资源,也正确使用了P操作获取左右筷子。但是将两个筷子的获取操作放在mutex保护下,这会不必要地降低并发度,且没有考虑死锁预防的关键点。标准答案通过限制碗的数量为min(m, n-1)来防止死锁,而学生答案中虽然限制了碗的数量,但筷子获取方式仍可能导致死锁。扣2分。

(3)资源释放和整体逻辑部分(满分2分)

得分:1分

理由:学生正确释放了筷子资源,也正确释放了碗资源,释放顺序合理。但是整体解决方案存在死锁风险,且并发效率较低。扣1分。

题目总分:1+2+1=4分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发