文章

578

粉丝

0

获赞

2

访问

44.5k

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


评分及理由

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

得分:1分

理由:学生定义了4个信号量,但存在以下问题:
1. "tree"信号量初值为0,用于甲与丙的同步,但实际应该是甲与乙的同步(挖坑完成后通知乙)
2. "treee"信号量初值为0,用于乙与丙的同步,这个思路正确
3. "tieqiu"信号量初值应为1(代表铁锹可用),但学生设为0,这是严重错误
4. "mutex"信号量定义正确
5. 缺少控制甲挖坑数量的信号量(树坑数量小于3时才能挖坑)
扣1分,主要因为铁锹信号量初值错误。

(2)甲进程代码得分及理由(满分2分)

得分:0.5分

理由:存在多处逻辑错误:
1. 缺少循环结构,不符合持续植树的场景
2. 使用if条件判断COUNT<=3,但没有相应的信号量控制
3. P(tieqiu)操作在COUNT判断之后,逻辑顺序不合理
4. 挖坑后V(tree)通知,但应该是通知乙进程而非丙进程
5. 缺少对挖坑数量的限制机制
扣1.5分,逻辑错误较多。

(3)乙进程代码得分及理由(满分1.5分)

得分:0.5分

理由:
1. P(tree)等待甲的通知,但甲通知的是tree信号量,这个同步关系基本正确
2. 缺少使用铁锹进行填土的操作
3. 缺少对铁锹的互斥访问
4. V(treee)通知丙进程,这个同步关系正确
扣1分,主要缺少铁锹的使用和填土操作。

(4)丙进程代码得分及理由(满分1.5分)

得分:0.5分

理由:
1. P(treee)等待乙的通知,同步关系正确
2. 填土操作应该在乙进程中,丙只负责浇水
3. 丙不需要使用铁锹,但学生代码中有P(tieqiu)操作
4. 丙不需要修改COUNT变量
5. 浇水操作正确
扣1分,主要因为角色分工混乱。

题目总分:1+0.5+0.5+0.5=2.5分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发