文章

85

粉丝

0

获赞

2

访问

3.5k

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


评分及理由

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

学生定义了6个信号量:mutexA、mutexB、emptyA、emptyB、fullA、fullB,并正确给出了初值(mutexA=1, mutexB=1, emptyA=M-x, emptyB=N-y, fullA=x, fullB=y)。信号量含义说明中,mutexA和mutexB用于互斥,empty和full用于同步,符合标准答案要求。得2分。

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

学生代码中,A进程(P1)的同步与互斥操作顺序正确:先P(fullA)检查是否有邮件,再P(mutexA)获取信箱互斥锁,取邮件后V(mutexA)释放锁,再V(emptyA)增加空闲空间;然后生成新邮件,先P(emptyB)检查B信箱空间,再P(mutexB)获取B信箱互斥锁,放邮件后V(mutexB)释放锁,再V(fullB)增加B邮件计数。所有P、V操作使用正确,与标准答案一致。得3.5分。

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

学生代码中,B进程(P2)的同步与互斥操作顺序正确:先P(fullB)检查是否有邮件,再P(mutexB)获取信箱互斥锁,取邮件后V(mutexB)释放锁,再V(emptyB)增加空闲空间;然后生成新邮件,先P(emptyA)检查A信箱空间,再P(mutexA)获取A信箱互斥锁,放邮件后V(mutexA)释放锁,再V(fullA)增加A邮件计数。所有P、V操作使用正确,与标准答案一致。得3.5分。

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发