一,什么叫作业(job)?
首先介绍一下还说呢么叫作业?
作业并不只包括程序,还包括相关的数据和一份作业说明书,系统是通过作业说明书来对进程进行控制的。
作业是外存调入内存的基本单位。进程有PCB,作业有JCB,它是作业存在的标志。
什么时候将进程调入内存,调入多少个,调哪些作业,这些都是需要系统考虑的,因此需要作业调度来实现。
二,处理机调度的层次
1),高级调度
高级调度也就是上面所说的作业调度,主要用于多道批处理系统,分时系统和实时系统则不设置。
2),中级调度
又称为内存调度,用于提高内存利用率和系统的吞吐量,虚拟存储技术中常用。
3),低级调度
又称为进程调度或短程调度。因为使用的频率很高,为了避免占用CPU过多的时间,不应该过于复杂。
三,作业调度
1)先来先服务
FCFS(first come first serve)将等待时间最长的作业调入内存。
2)短作业优先
SJF(short job first)作业需要的时间越短,优先级越高。
(1),缺点
1. 必须预知运行时间。
2. 对长作业非常不利。
3. 人---机无法交互
4. 没有考虑紧迫程度
3)优先级调度算法
由程序员预设优先级(由紧迫程度决定),优先级高的先运行。
4)高响应比优先调度算法
综合了FCFS和SJF,将等待时间和要求服务时间作为优先级,优先级
等待时间越长,优先权越高。