都2020年,还不赶快把调度学会啊!!!

嘿嘿

最近清明节才回到家里,四五天没有学习了罪过罪过,这不落后了别人一大截,赶紧迈开我的小步伐学习学习,今天一篇博客大家就把调度学通透了,记住没给我学!!!在这里插入图片描述


目录

调度的概念:

大白话说就是,多道程序中,进程数量多余处理机个数,为了解决进程抢着用处理机,调度来进行分配处理机。
操作系统主要管理处理机、内存、文件、设备集中资源,只要资源的请求大于资源本身数量,就会涉及调度

调度的层次:

1)作业调度:(高级调度)选择处于后备状态的作业分配资源,发生频率最低。就是内存辅存之间的调度,每个作业只能调出一次,调入一次。
2)内存调度:(中级调度)选择暂时不能运行的进程调出内存,发生频率中等提高内存的利用率和系统的吞吐量
3)进程调度:(低级调度)选择就绪队列中合适的进程分配处理机,发生频率最高操作系统最基本的一种调度,进程调度频率高,一般几十毫秒一次

处理机三级调度

在这里插入图片描述

三级调度之间的联系

1)作业调度为进程活动做准备,进程调度使进程正常活动起来,中级调度将暂时不能运行的进程挂起,中级调度处于作业调度和进程调度之间
2)作业调度次数少,中级调度次数略多,进程调度频率最高
3)进程调度是最基本的,不可或缺

进程调度的原因:合理处理计算机软件硬件资源

进程调度方式
剥夺式:有更为重要或紧迫的进程需要使用处理机,立即分配
非剥夺式:有更为重要或紧迫的进程需要使用处理机,仍让当前进程继续执行

调度的基本准则

1)CPU利用率:使CPU保持忙的状态,使这一资源利用率最高
2)系统吞吐量:表示单位时间内CPU完成作业的数量
3) 周转时间:指作业提交到作业完成所经历的时间是作业等待、在就绪队列中排队、在处理机运行及进行输入/输出操作所花费时间总和

周转时间=作业完成时间-作业提交时间
平均周转时间=(作业1的周转时间+…+作业n的周转时间)/n
带权周转时间=作业周转时间/作业实际运行时间
平均带权周转时间=(作业1的带权周转时间+…+作业n的带权周转时间)/n
4) 等待时间:进程处于等处理机状态的时间之和,等待时间越长,用户满意度越低。:
5) 响应时间:指从用户提交请求到系统首次产生响应所用的时间周转时间作为衡量调度算法的重要准则之一

典型的调度算法

1)先来先服务(FCFS)调度算法
静态优先级实在创建进程时确定的,确定之后再整个运行期间不再改变
用于:作业调度、进程调度
规则:
作业调度:算法每次从后备作业队列中选择最先进入该队列的一个或几个作业,将他调入内存,分配必要资源,创建进程并放入就绪队列
进程调度:每次从就绪队列中选择最先进入该队列的进程,将处理机分配给他,投入运行,直到完成或因某种原因而阻塞时释放处理机
特点:
算法简单,效率低,对长作业有利,有利于CPU繁忙型作业,不利于I/O繁忙作业型
例题

在这里插入图片描述
2)短作业优先(SJF)调度算法
(SJF)定义:从后备队列中选择一个或若干估计运行时间最短的作业,将他们调入内存运行
段进程优先(SPF)调度算法:就绪队列中选择一个估计运行时间最短的作业,将处理机分配给他,让他执行,直到完成或发生某事件而阻塞时,才释放处理机
在这里插入图片描述
3)优先级调度算法
用于:作业调度,进程调度
优先级用于描述作业的紧迫程度
作业调度:优先级调度算法每次从后备作业队列中选择优先级最高的一个或几个作业,将他们调入内存,分配必要的资源,创建进程并放入就绪队列。
进程调度:优先级调度算法每次从就绪队列中选择优先级最高的进程,将处理机分配给他,使之投入运行
进程优先级设置原则:
1)系统进程>用户进程。系统进程作为系统的管理者,理应拥有更高的优先级。
2)交互型进程>非交互型进程(或前台进程>后台进程)。大家平时在使用手机时,在前台运行的正在和你交互的进程应该更快速地响应你,因此自然需要被优先处理,即要有更高的优先级。
3)I/O型进程>计算型进程。所谓I/O型进程,是指那些会频繁使用IO设备的进程,而计算型进程是那些频繁使用CPU的进程(很少使用IO设备) 。我们知道, I/O设备(如打印机) 的处理速度要比CPU慢得多, 因此若将IO型进程的优先级设置得更高, 就更有可能让IO设备尽早开始工作,进而提升系统的整体效率。

4)高响应比有线调度算法
用于:作业调度
响应比=(等待时间+要求服务时间)/要求服务时间
例题:
在这里插入图片描述

5)时间片轮转调度算法
用于:分时系统.
原则:系统将所有就绪进程按到达时间打先后排成一个队列,进程调度程序总是 选择就绪队列中的第一个进程执行但只能运行一个时间片,如100ms
在使用完一个时间片后,即使进程并未完成其运行,他也必须释放处理机给下一个就绪的进程,未完成的进程返回到就绪队列的末尾重新排队,等候再次执行。是绝对可抢占的
时间片长短因素:系统的响应时间,就绪队列中的进程数目,系统的处理能力
目的:多个用户能及时干预系统

6)多级反馈队列调度算法
时间片轮转调度算法和优先级调度算法的综合发展
在这里插入图片描述
作业是用户提交的,以用户任务为单位,进程时由系统自动生成的,以操作系统控制为单位

调度学会了吗?…………在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_46315852/article/details/105331933