文章

218

粉丝

6

获赞

4

访问

52.9k

头像
2017年计算机学科专业基础综合试题 - 第46题回答
操作系统
发布于2025年10月27日 18:48
阅读数 15


评分及理由

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

学生定义了多个信号量,但存在以下问题:

  • 定义了mutex_w用于互斥访问局部变量w,这是不必要的,因为局部变量w是线程私有的,不需要互斥保护(逻辑错误,扣1分)
  • 定义了额外的信号量X、Y、Z、W,这些信号量的用途不明确,且与标准答案的思路不一致(逻辑错误,扣1分)
  • 缺少对y变量的细粒度互斥控制(标准答案需要mutex_y1和mutex_y2两个信号量)(逻辑错误,扣1分)

得分:0分

(2)thread1实现得分及理由(满分1分)

thread1中:

  • 使用了P(X)、P(Y)操作,但X信号量未定义,且这些信号量的用途不明确(逻辑错误)
  • 对局部变量w的互斥保护是不必要的(逻辑错误)
  • 缺少对y变量的正确互斥访问控制

得分:0分

(3)thread2实现得分及理由(满分1分)

thread2中:

  • 使用了P(Y)、P(Z)操作,但这些信号量的用途不明确(逻辑错误)
  • 对局部变量w的互斥保护是不必要的(逻辑错误)
  • 缺少对y和z变量的正确互斥访问控制

得分:0分

(4)thread3实现得分及理由(满分3分)

thread3中:

  • 对局部变量w的互斥保护是不必要的(逻辑错误,扣1分)
  • 对z变量的互斥保护基本正确(得1分)
  • 对y变量的互斥保护不够完善,缺少细粒度控制(逻辑错误,扣1分)
  • 使用了V(W)、V(Z)、V(Y)等不必要的信号量操作(逻辑错误,扣1分)

得分:1分

题目总分:0+0+0+1=1分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发