单选题 下列关于基于时间片的进程调度的叙述中,错误的是(36)________。
【正确答案】 B
【答案解析】本题考查基于时间片进程调度的基础知识。 时间片轮转调度是一种最古老、最简单、最公平且使用最广的算法。每个进程被分配一个时间段,称作它的时间片,即该进程允许运行的时间。如果在时间片结束时进程还在运行,则CPU将被剥夺并分配给另一个进程。如果进程在时间片结束前阻塞或结束,则CPU当即进行切换。调度程序所要做的就是维护一张就绪进程列表,当进程用完它的时间片后,它被移到队列的末尾。 时间片轮转调度的关键是时间片的长度。从一个进程切换到另一个进程需要一定时间来保存和装入寄存器值及内存映像,更新各种表格和队列等。假如进程切换(有时称为上下文切换)需要5ms,再假设时间片设为20 ms,则在做完20 ms有用的工作之后,CPU将花费5 ms来进行进程切换。CPU时间的2096被浪费在了管理开销上。为了提高CPU效率,可以将时间片设为500 ms。这时浪费的时间只有1%。但考虑在一个分时系统中,如果有十个交互用户几乎同时按下回车键,将发生什么情况?假设所有其他进程都用足它们的时间片的话,最后一个进程不得不等待5s才获得运行机会。多数用户无法忍受一条简短命令要5s才能做出响应。同样的问题在一台支持多道程序的个人计算机上也会发生。所以时间片设得太短会导致过多的进程切换,降低了CPU效率;而设得太长又可能引起对短的交互请求的响应变差。将时间片设为100ms通常是一个比较合理的折中。