文章

83

粉丝

0

获赞

0

访问

6.3k

头像
2014年计算机学科专业基础综合试题 - 第47题回答
操作系统
发布于2025年10月7日 17:40
阅读数 61


评分及理由

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

得分:1分

理由:学生定义了三个信号量:space(缓冲区容量,初值1000)、mutex_p(生产者互斥,初值1)、mutex_c(消费者互斥,初值1)。space和mutex_p的定义基本正确,但缺少了表示产品数量的信号量(应为full或类似信号量,初值0)。此外,未定义控制消费者连续取10件的信号量(应为mutex1或类似信号量,初值1)。因此扣1分。

(2)生产者进程实现得分及理由(满分2分)

得分:1分

理由:生产者进程中,P(space)和P(mutex_p)的顺序正确,但缺少将产品放入缓冲区的操作,且缺少V操作来增加产品数量(应为V(full)或类似)。此外,生产产品的步骤应在P(space)之前。逻辑不完整,扣1分。

(3)消费者进程实现得分及理由(满分4分)

得分:0分

理由:消费者进程中,使用了while(10--)来控制连续取10件产品,但逻辑错误:①P(mutex_c)应在循环内用于单次互斥,但学生放在循环外;②缺少P操作来检查产品数量(应为P(full)或类似);③V(space)应在取出产品后执行,但学生放在前面且重复执行;④if(space<=1000)条件无意义,且V(space)调用错误。整体逻辑混乱,未实现同步和连续取10件的需求,扣4分。

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

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发