有些适合作业调度,有些适合进程调度 1先来先服务调度算法FCFS:算法每次从后备作业队列中选择最先进入该队列的一个或几个作业,将它们调入内存,分配资源,穿件进程并放入就绪队列。
属于不可剥夺算法。 特点:效率低、对长作业比较有利、但对短作业不利,有利于CPU繁忙型作业,不利于IO繁忙型作业。 2、短作业优先调度算法SJF:对短作业优先调度的算法
特点:1对长作业不利,可能产生饥饿现象 2未考虑作业紧迫度 3平均等待时间、平均周转时间最少 3优先级调度算法:既可以用于作业调度、也可用于进程调度 3.1、非剥夺式优先级调度算法:当进程正在运行时,即使某个更为紧迫的进程进入就绪队列,仍然执行当前进程,直到主动让出处理机 3.2剥夺式优先级调度算法:当一个进程正在处理机上运行,某个更为重要的进程进入就绪队列。暂停正在运行的进程,将处理机分配给更重要的进程 3.3静态优先级:优先级在创建进程时确定的 3.4动态优先级:在进程运行过程中,根据实际情况动态调整优先级,主要依据为CPU占用时间、等待时间 4、高响应比优先调度算法 主要用于作业调度,同时考虑每个作业的等待时间和运行时间,计算出响应比,从就绪队列中选择响应比最高的作业投入运行
5、时间片轮换调度算法:适用于分时系统 就绪进程按照先来先服务原则,但仅能运行一个时间片,时间到之后,必须释放处理机资源,被剥夺的进程返回到就绪队列的末尾重新排队,等候再次运行。 6、多级反馈队列调度算法:时间片轮换调度算法和优先级调度算法的综合和发展。,动态调整进程优先级和时间片大小。提吞吐量、缩短周转时间照顾短进程。
7、各种调度算法的比较