概念:按一定的算法,从一组待运行的进程中选出一个来占有CPU运行
调度算法:
1.先来先服务调度算法:(FCFS first come first serve)也称为FIFO算法
先来先处理,算法优点:简单,实现容易,并且似乎很公平。缺点:短的任务也可能变得非常慢,因为其前面的任务占用很长时间,容易造成平均响应时间非常慢
2.时间片轮转法
目的是改善短程序的响应时间,周期性地进行进程切换。时间片轮转调度是一种最古老,最简单,最公平且使用最广的算法。每个进程被分配一个时间段,称作它的时间片,即该进程允许运行的时间。如果在时间片结束时进程还在运行,则CPU将被剥夺并分配给另一个进程。如果进程在时间片结束前阻塞或结束,则CPU当即进行切换。此算法的关键点在于时间片的选择,时间片大小的确定是由系统对响应时间的要求、就绪队列中进程的数目和系统的处理能力决定。
3.短进程优先调度算法(STCF short time to complete first)
STCF分为抢占式和非抢占式,非抢占式是让已经在CPU上运行的程序执行到结束或阻塞,然后在所有就绪进程中选择执行时间最短的,抢占式则是每进来一个新的进程,就对所有进程(包括CPU上执行的过程)进行检查,谁的执行时间短,就运行谁。
4.高优先级优先调度算法
动态调整优先级,使得长任务的程序优先级高,解决STCF遇到的长任务的程序饥饿问题。