文章

257

粉丝

0

获赞

2

访问

46.2k

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


评分及理由

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

学生答案中未明确定义信号量,而是直接使用P、V操作,且使用的信号量标识符与变量名相同(如P(w)、P(y)等),这会导致混淆和错误。标准答案中明确定义了三个信号量用于保护共享变量y和z的互斥访问。学生答案在信号量定义部分得0分。

(2)线程互斥实现得分及理由(满分5分)

学生答案的互斥实现存在多处逻辑错误:

  • thread1中使用了P(w)和P(y),但w是局部变量,不需要互斥保护;对y的保护不完整,未考虑thread3同时修改y的情况。
  • thread2中使用了P(w)、P(y)、P(z),但w是局部变量不需要保护;对y和z的保护顺序与标准答案不一致,且未考虑thread3对y的修改。
  • thread3中使用了P(w)、P(z)、P(y),其中P(w)错误(w是局部变量);对y和z的保护不完整,未考虑与thread1和thread2的互斥关系。
  • 所有线程中使用的信号量标识符与变量名相同,这在实际执行中会导致严重错误。

由于存在上述逻辑错误,互斥实现部分得0分。

题目总分:0+0=0分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发