调度
调度的层次
-
高级调度(作业调度)
用于决定将外存上处于后备队列中的哪些作业调入内存,处于内存的就绪队列,准备执行。- 主要用于多道批处理系统
-
低级调度(进程调度)
决定就绪队列中那个进程将获得处理机- 在多道批处理/分时和实时这三种系统中,都必须配置这种配置
-
中级调度(交换调度)
目的是提高内存的利用率和系统的吞吐量- 实际上就是存储器管理中的对换功能
调度的时机:什么时候会发生进程调度呢,引起进程调度的因素有哪些,这些也就是进程的调度时机。
- 正在执行的进程执行完毕
- 执行中的进程因提出I/O请求或发生等事件而暂停执行。
- 时间片完成
- 在进程通信或同步过程中执行了某种原语操作,如P操作(wait操作)阻塞
- 高优先者进入
进程调度算法
主要的进程调度算法有:
- 先来先服务调度算法(FCFS,first come first served):谁第一个排队,谁就先被执行,在它执行过程中,不会中断。(即按照先后次序来进行调度)
- 最简单的调度算法
- 作业调度时:系统将按照作业到达的先后次序来进行调度
- 进程调度时:每次调度都是从就绪的进程队列中选择一个最先进入该队列的进程,并为之分配处理机
- 短作