操作系统课程有m个学生要上机实验,机房共有n台计算机(n<m),每人要占1台,有一名助教负责检查学生的上机结果。上机完成后学生要等待助教检查,助教等待学生上机完成后,每次检查1位学生的上机。检查完毕后,学生就离开计算机,可由下一位等待的学生上机,助教可检查

admin2016-05-12  8

问题 操作系统课程有m个学生要上机实验,机房共有n台计算机(n<m),每人要占1台,有一名助教负责检查学生的上机结果。上机完成后学生要等待助教检查,助教等待学生上机完成后,每次检查1位学生的上机。检查完毕后,学生就离开计算机,可由下一位等待的学生上机,助教可检查下一位等待检查的学生。试用sereWait、semSignal操作控制学生的上机和助教的检查过程,说明各个信号量的意义和初值。假定初始时,计算机全部空闲。

选项

答案各个信号量的意义和初值定义如下。 computer:n,空闲的计算机数。 check:1,学生完成实验后与助教检查的同步信号量。 finish:0,学生完成实验后与助教检查的同步信号量。 学生: 助教: while(1){ while(1){ semWait(computer) semWait(finish) 上机,完成实验 检查 semSignal(finish) semSignal(check) semWait(check) } 等待检查结束 semSignal(computer) }。

解析
转载请注明原文地址:https://kaotiyun.com/show/fvNx777K
本试题收录于: 操作系统题库理工类分类
0

最新回复(0)