文章

133

粉丝

0

获赞

0

访问

13.6k

头像
2015年计算机学科专业基础综合试题 - 第45题回答
操作系统
发布于2025年10月12日 16:59
阅读数 76


评分及理由

(1)信号量定义及初值(满分2分)

得分:2分

理由:学生正确定义了6个信号量,包括mutexA、mutexB用于互斥访问信箱,full_A、empty_A、full_B、empty_B用于同步控制,初值设置正确。虽然信号量名称中使用了"-"符号(如full-A),但根据上下文判断这是识别错误,实际应为下划线或直接连接,不影响逻辑正确性。

(2)A进程的同步互斥操作(满分3.5分)

得分:3.5分

理由:A进程的同步互斥操作完全正确:

  • 取邮件前先P(full_A)检查是否有邮件,再P(mutexA)互斥访问
  • 取邮件后V(mutexA)释放互斥锁,V(empty_A)增加空位
  • 放邮件前先P(empty_B)检查B信箱是否有空位,再P(mutexB)互斥访问
  • 放邮件后V(mutexB)释放互斥锁,V(full_B)增加邮件数

所有P、V操作顺序正确,没有逻辑错误。

(3)B进程的同步互斥操作(满分3.5分)

得分:3.5分

理由:B进程的同步互斥操作完全正确:

  • 取邮件前先P(full_B)检查是否有邮件,再P(mutexB)互斥访问
  • 取邮件后V(mutexB)释放互斥锁,V(empty_B)增加空位
  • 放邮件前先P(empty_A)检查A信箱是否有空位,再P(mutexA)互斥访问
  • 放邮件后V(mutexA)释放互斥锁,V(full_A)增加邮件数

所有P、V操作顺序正确,与A进程对称,没有逻辑错误。

题目总分:2+3.5+3.5=9分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发