文章
35
粉丝
0
获赞
0
访问
1.5k
评分及理由
(1)信号量定义部分得分及理由(满分1分)
得分:0.5分
理由:学生定义了mutex和empty两个信号量,但缺少控制P1与P2、P1与P3之间同步的odd和even信号量。信号量定义不完整,扣0.5分。
(2)P1进程实现得分及理由(满分2分)
得分:1分
理由:P1进程实现了基本的互斥和缓冲区管理,使用了P(empty)和P(mutex)/V(mutex)的正确顺序。但缺少生成数的操作(produce()),也没有根据数的奇偶性发出相应信号(V(odd)或V(even)),同步机制不完整,扣1分。
(3)P2进程实现得分及理由(满分2分)
得分:0分
理由:P2进程的逻辑存在严重错误。使用countodd()作为判断条件是不合理的,这应该是统计函数而非判断函数;缺少等待奇数的同步机制(P(odd));getodd()操作的位置不当。这些逻辑错误导致该进程无法正确实现功能,扣2分。
(4)P3进程实现得分及理由(满分2分)
得分:0分
理由:P3进程存在与P2相同的严重逻辑错误。使用counteven()作为判断条件不合理;缺少等待偶数的同步机制(P(even));geteven()操作的位置不当。这些逻辑错误导致该进程无法正确实现功能,扣2分。
题目总分:0.5+1+0+0=1.5分
登录后发布评论
暂无评论,来抢沙发