● 先到先服务(FCFS)调度算法 : 从就绪队列中选择一个最先进入该队列的进程为之
分配资源,使它立即执行并一直执行到完成或发生某事件而被阻塞放弃占用 CPU 时再
重新调度。
● 短作业优先(SJF)的调度算法 : 从就绪队列中选出一个估计运行时间最短的进程为
之分配资源,使它立即执行并一直执行到完成或发生某事件而被阻塞放弃占用 CPU 时
再重新调度。
● 时间片轮转调度算法 : 时间片轮转调度是一种最古老,最简单,最公平且使用最广
的算法,又称 RR(Round robin)调度。每个进程被分配一个时间段,称作它的时间片,
即该进程允许运行的时间。
● 多级反馈队列调度算法 :前面介绍的几种进程调度的算法都有一定的局限性。如
短进程优先的调度算法,仅照顾了短进程而忽略了长进程 。多级反馈队列调度算法既
能使高优先级的作业得到响应又能使短作业(进程)迅速完成。,因而它是目前被公
认的一种较好的进程调度算法,UNIX 操作系统采取的便是这种调度算法。
● 优先级调度 : 为每个流程分配优先级,首先执行具有最高优先级的进程,依此类
推。具有相同优先级的进程以 FCFS 方式执行。可以根据内存要求,时间要求或任何
其他资源要求来确定优先级。
7. 多进程和多线程的区别
进程是程序在计算机上的一次执行活动,即正在运行中的应用程序,通常称为进程。
每个进程都有自己独立的地址空间(内存空间),每当用户启动一个进程时,操作系统
就会为该进程分配一个独立的内存空间,让应用程序在这个独立的内存空间中运行。
在同一个时间里,同一个计算机系统中如果允许两个或两个以上的进程处于运行状态,
这便是多进程,也称多任务。现代的操作系统几乎都是多任务操作系统,能够同时管
理多个进程的运行。