文章

7

粉丝

0

获赞

0

访问

485

头像
【250518年】408计算机统考真题模拟考试 - 第46题答案笔记
操作系统
发布于2025年5月20日 21:12
阅读数 77

计算机考研408统考历年真题及答案解析
semaphore tong = 3;
semaphore mutex1 =1;
semaphore mutex2 =1;
semaphore gang_water =0;
semaphore gang_empty =10;

littlemonk(){
while(1){
p(gang_empty);
p(tong);
quotong;
p(mutex1);
jingzhongdashui;
v(mutex1);
p(mutex2);
daoshuirugang;
v(mutex2);
v(gang_water);
huantong;
v(tong);
}
}

oldmonk(){
while(1){
p(gang_water);
p(tong);
p(mutex2);
gangzhongqushui;
v(mutex2);
v(gang_empty);
huangtong;
v(tong);
}
}

 


评分及理由

(1)信号量定义(满分1分)

得分:1分

理由:学生正确定义了所有必要的信号量,包括tong(水桶)、mutex1(水井互斥)、mutex2(水缸互斥)、gang_water(水缸已用容量)、gang_empty(水缸剩余容量),与标准答案一致。

(2)小和尚进程逻辑(满分3.5分)

得分:3.5分

理由:学生的小和尚进程逻辑基本正确,包括申请水缸剩余容量、申请水桶、互斥访问水井和水缸、释放信号量等操作。但存在以下问题:
- 扣0.5分:代码中“quotong”和“huantong”未明确说明是取桶和还桶操作,虽然逻辑正确但表述不清晰。
- 其他部分与标准答案完全一致,未扣分。

(3)老和尚进程逻辑(满分3.5分)

得分:3分

理由:学生的老和尚进程逻辑基本正确,但存在以下问题:
- 扣0.5分:代码中“huangtong”未明确说明是还桶操作,表述不清晰。
- 扣0分:虽然学生未明确写出“喝水”操作,但题目未要求必须体现,逻辑正确。
- 其他部分与标准答案完全一致,未扣分。

题目总分:1+3.5+3=7.5分

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发