问答题 许多操作系统采用动态优先级调度算法,即当一个“阻塞”进程变成“就绪”时提高该进程的优先级。为什么采用这种方法?
【正确答案】
【答案解析】进程进入“阻塞”状态,是因为进程需要等待某种资源。当进程获得资源时,进程被唤醒,变成“就绪”状态。这时提高该进程的优先级可以使进程尽快地完成慢速设备的I/O过程。这样,一方面提高了I/O设备的利用率,另一方面,设备的I/O活动能够与CPU执行其他进程的计算工作充分地并行,从而提高整个系统的性能。[解析] 在操作系统中,多个进程共享系统的资源必然发生资源的竞争。进程在运行过程中,如果需要使用的资源(如I/O设备)正被其他进程占用,该进程就会进入“阻塞”状态,等待资源的释放。如果某种资源的使用时间比较长(例如慢速的I/O设备),就会发生许多进程等待该资源的情况,而CPU时常处于空闲状态。这时,慢速的I/O设备成为阻碍系统性能的瓶颈。提高设备的利用率和提高设备与CPU的并行度是解决瓶颈问题的方法之一。