文章

156

粉丝

195

获赞

0

访问

28.5k

头像
2025 年 7 月第 1 次 408 月考试卷 - 第45题回答
操作系统
发布于2025年11月22日 17:04
阅读数 273

1)

完成时间:P1=18, P2=11, P3=23
周转时间:P1=18, P2=8, P3=18

平均周转时间:(18 + 8 + 18) / 3 = 44 / 3 ≈ 14.67ms

2)

系统处于安全状态,一个安全序列是 P1→P2→P3

3)

semaphore S1 = 0;//P1与P2的同步
semaphore S2 = 0;//P2与P3的同步

P1() {
    request(A, 1);  // 申请打印机
    // 使用打印机执行任务
    // 运行时间 10ms(模拟)
    release(A, 1);  // 释放打印机
    V(S1);          // 通知 P1 已完成
}

P2() {
    P(S1);          // 等待 P1 完成
    request(A, 1);  // 申请打印机
    request(B, 1);  // 申请扫描仪
    // 使用资源执行任务
    // 运行时间 8ms
    release(A, 1);
    release(B, 1);
    V(S2);          // 通知 P2 已完成
}

P3() {
    P(S2);          // 等待 P2 完成
    request(A, 1);  // 申请打印机
    // 使用打印机执行任务
    // 运行时间 5ms
    release(A, 1);
}

 


评分及理由

(1)得分及理由(满分2分)

学生答案中完成时间、周转时间计算完全正确,平均周转时间计算也正确。与标准答案一致。得2分。

(2)得分及理由(满分2分)

学生正确判断系统处于安全状态,并给出了正确的安全序列P1→P2→P3。虽然未展示详细计算过程,但结论正确。得2分。

(3)得分及理由(满分4分)

学生答案中存在以下问题:
1. 信号量定义正确,但伪代码中使用了P/V操作的标准写法(P(S1)、V(S1)),与题目要求的wait/signal不一致,但语义正确,此处不扣分。
2. 主要问题:P2进程中缺少对P1完成打印的等...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发