处理机调度
衡量调度策略的指标:周转时间、吞吐率、响应时间以及设备利用率等。
- 周转时间:将一个作业提交给计算机系统后到该作业的结果返回给用户所需要的时间。
- 吞吐率:在给定的时间内,一个计算机系统所完成的总工作量。
- 响应时间:从用户向计算机发出一个命令到计算机把相应的执行结果返回给用户所需要的时间。
- 设备利用率:主要指输入输出设备的使用情况。
分级调度
- 作业:用户要求计算机所做的关于一次业务处理的全部工作。
- 作业的4个状态
- 提交
- 后备(收容)
- 执行
- 完成
- 处理机4级调度
- 作业调度
- 交换调度
- 进程调度
- 线程调度
- 作业与进程的关系:作业是用户向计算机提交任务的任务实体,进程则是计算机为了完成用户任务而设置的执行实体。
作业调度
作业调度主要是完成任务从后备状态到执行状态的转变,以及从执行状态到完成状态的转变。
- 作业调度功能
- 记录系统中各作业的状况(JCB)。
- 从后备队列中挑选出一部分作业投入执行。
- 为被选中作业分配资源建立进程。
- 在作业执行结束后释放所占用的资源。
- 调度目标
- 对所有作业应该是公平合理的。
- 应使设备有高的利用率。
- 每天执行尽可能多的作业。
- 有快的响应时间。
- 衡量调度策略优劣的标准
- 周转时间T:作业的完成时间减去作业的提交时间。
平均周转时间: - 带权周转时间W:作业周转时间与作业执行时间的比。
平均带权周转时间:
- 周转时间T:作业的完成时间减去作业的提交时间。
进程调度
进程调度的功能
- 记录系统中所有进程的执行情况(PCB)。
- 选择占有处理机的进程。
- 进行进程上下文切换。
进程调度的时机
- 正在执行的进程执行完毕。
- 执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等待状态。
- 执行中进程调用了P原语操作,从而因资源不足而被阻塞;或调用了V原语操作激活了等待资源的进程队列。
- 执行中进程提出I/O请求后被阻塞。
- 在分时系统中时间片已经用完。
- 在执行完系统调用,在系统程序返回用户进程时,可认为系统进程执行完毕,从而调度选择一个新的用户进程执行。
- 就绪队列中的某进程的优先级变得高于当前执行进程的优先级,从而也将引发进程调度。
调度算法
- 先来先服务调度算法(FCFS)
- 轮转法(RR)
- 多级反馈轮转法(MFQ)
- 优先级法(PSA)
- 最短作业优先法(SJF)
- 最高响应比优先法(HRN)