作为进程调度的准备,进程管理模块必须将系统中各进程的执行情况和状态特征记录在各进程的PCB表中。根据各进程的状态特征和资源需求等、进程管理模块还将各进程的PCB表排成相应的队列并进行动态队列转接。进程调度模块通过PCB变化来掌握系统中存在的所有进程的执行情况和状态特征,并在适当的时机从就绪队列中选择出一个进程占据处理机。
无论是在批处理系统还是分时系统中,用户进程数一般都多于处理机数、这将导致它们互相争夺处理机。另外,系统进程也同样需要使用处理机。这就要求进程调度程序按一定的策略,动态地把处理机分配给处于就绪队列中的某一个进程,以使之执行。
高级、中级和低级调度作业从提交开始直到完成,经历三级调度:
高级调度:又称作业调度,它决定把后备作业调入内存运行;
低级调度:又称进程调度,它决定把就绪队列的某进程获得CPU;
中级调度:又称在虚拟存储器中引入,在内、外存对换区进行进程对换。