一个作业被提交后,必须经过处理机调度,才能获得处理机执行,通常经过三个调度
- 高级调度(高级调度,长程调度)
- 中级调度(中程调度)
- 低级调度(短程调度)
高级调度(运行频率最低,所以成为长调度)
根据某种算法,把外村上处于后备队列中的那些作业调入内存,调度对象是作业
作业
就是一些程序,数据,还有一些作业说明书。
作业步
作业需要执行哪些步骤运行完。每一个步骤就是一个作业步
作业控制块
作业控制块(JCB)就是进程在系统存在的标志一样,包括作业标示,用户名称,用户账户,作业类型,作业状态,调度信息,资源需求,进入系统的时间,开始运行的时间,作业完成的时间,作业退出的时间,资源使用情况等。
每当作业进入系统时,系统就会给每一个作业创建一个JCB
作业调度
从外存的后备队列中选取某些作业调入内存,并为他们创建进程,分配必要的资源,然后再新创建的进程插入就绪队列,准备执行。
每次执行作业调度时候,都必须做出以下两个决定
- 决定接纳多少作业
- 决定接纳哪些作业
中级调度
实际就是存储器管理中的兑换功能
低级调度(运行频率最高,所以成为短调度)
决定哪个进程获得处理机
功能
- 保存处理机现场信息
- 按照某种算法选取进程
- 把处理机分配给进程
基本机制
- 排队器(使就绪队列按照一定的方法,排成一队,或者多个队列)
- 分派器(把进程调度选取好的进程,从就绪队列中取出,然后进行上下文切换,将处理机分配给它)
- 上下文切换机制(对处理机切换时有两个上下文操作,1,操作系统保存当前进程的上下文,装入分派程序的上下文。2,移除分派程序,把新进程的CPU现场信息装入到处理机的各个相应的寄存器中)
进程调度的两种方式
- 非抢占式
- 抢占式方式
非抢占式
一旦处理机分配给某个进程后,就一直让他运行下去,知道该进程自愿释放处理机,或者发生某些事阻塞,才会把处理机分给别的进程
优点:实现简单,系统开销比较小,但是难以满足紧急任务的要求
抢占式方式
调度机根据某种原则暂停某个正在执行额进程,将已分配给该进程的处理机重新分配给另一个进程。
原则主要有以下方式
- 优先权原则(优先权越高,就先执行哪个)
- 短作业优先原则(先暂停长作业,优先执行短进程)
- 时间片原则(按照一定的时间轮流执行每个进程)
时间: 2024-12-29 21:54:15