操作系统原理-第四章--处理机调度(有答案)
操作系统--精髓与设计原理(第八版)第四章复习题答案

操作系统--精髓与设计原理(第⼋版)第四章复习题答案操作系统--精髓与设计原理(第⼋版)第四章复习题答案4.1 表3.5列出了在⼀个没有线程的操作系统中进程控制块的基本元素。
对于多线程系统,这些元素中哪些可能属于线程控制块,哪些可能属于进程控制块?这对于不同的系统来说通常是不同的,但⼀般来说,进程是资源的所有者,⽽每个线程都有它⾃⼰的执⾏状态。
关于表3.5中的每⼀项的⼀些结论如下:进程控制信息:调度和状态信息主要处于线程级;数据结构在两级都可出现;进程间通信和线程间通信都可以得到⽀持;特权在两级都可以存在;存储管理通常在进程级;资源信息通常也在进程级;进程标识:进程必须被标识,⽽进程中的每⼀个线程也必须有⾃⼰的ID。
处理器状态信息:这些信息通常只与进程有关。
4.2 请列出线程间的模式切换⽐进程间的模式切换开销更低的原因。
包含的状态信息更少。
4.3 在进程概念中体现出的两个独⽴且⽆关的特点是什么?资源所有权: 进程包括存放进程映像的虚拟地址空间;回顾第3章的内容可知,进程映像是程序、数据、栈和进程控制块中定义的属性集。
进程总具有对资源的控制权或所有权,这些资源包括内存、I/O通道、I/O设备和⽂件等。
操作系统提供预防进程间发⽣不必要资源冲突的保护功能。
调度/执⾏:进程执⾏时采⽤⼀个或多程序(见图1.5)的执⾏路径(轨迹),不同进程的执⾏过程会交替进⾏。
因此,进程具有执⾏态(运⾏、就绪等)和分配给其的优先级,是可被操作系统调度和分派的实体。
4.4 给出在单⽤户多处理系统中使⽤线程的四个例⼦。
前台和后台操作异步处理加速执⾏模块化程序结构。
4.5 哪些资源通常被⼀个进程中的所有线程共享?进程中的所有线程共享该进程的状态和资源,例如地址空间,⽂件资源,执⾏特权等。
4.6 列出⽤户级线程由于内核级线程的三个优点。
由于所有线程管理数据结构都在⼀个进程的⽤户地址空间中,线程切换不需要内核级模式的特权,因此,进程不需要为了线程管理⽽切换到内核模式,这节省了在两种模式间进⾏切换(从⽤户模式到内核模式;从内核模式返回⽤户模式)的开销。
Operating System处理机调度

非抢占短优先调度示例
Process Arrival Time
P1
0.0
7
P2
2.0
4
P3
4.0
1
P4
5.0
4
• SJF (non-preemptive)
Burst Time
P1
P3
P2
P4
0
3
78
12
16
• 平均等待时间 = (0 + 6 + 3 + 7)/4 = 4
优先级调度
• 每个进程都具有优先度 (integer) • 优先级最高的先被执行(数字越小表示优先级越高)
中每个进程获得CPU时间为 1/n. 没有进程等待时间超过 (n-1)q
• 性能
– q large FIFO – q small q must be large with respect to context
switch, otherwise overhead is too high.
示例: RR (时间片为20)
止或它从运行状态转换到等待状态才会释放CPU。
调度员
• 调度模型 gives control of the CPU to the process selected
by the short-term scheduler; this involves: – 上下文切换 – 处理机状态变为User,而以前是Kernel. – 跳转到执行程序的适当位置重新执行此程序。
processor makes its own scheduling decisions.(自调度,实现复 杂)
• Asymmetric multiprocessing(非对称多处理)– only one
操作系统-第四章调度

长程调度
就绪队列 长程调度 处理机 后备队列 短程调度 就绪/挂起队列
交互用户
进程调度算法---先来先服务(FCFS)
• 该方法按照到达的先后顺序排队, 每次调 度队首的进程 • FCFS算法属于非剥夺调度方式, 实现简单 , 看似公平 • 但,对于那些后进入队列而运行时间较短 的进程,或I/O型的进程而言,可能需要长 时间等待
响应比高者优先
• 同短进程优先和剩余时间最短者优先调度 算法一样,很难准确估计进程的预期执行 时间 • 每次调度之前都需要计算响应比,增加了 系统开销
反馈调度方法
• 前面介绍的几种调度方法都存在各自不同的问题 ,尤其是短进程优先,剩余时间最短者优先 以及 响应比高者优先调度算法,都需要估计进程的预 期执行时间,如果估计不准确,将影响调度结果 和系统性能 • 如果根据进程执行历史,而非未来,进行调度, 将解决这个问题 • 就是一种根据进程执行历史调整调度方法的调度 方法,它结合了优先级和时间片轮转调度思想.
基于优先级的调度算法
• 基于时间片轮转调度算法循环式的为每个 被调度的进程分配一个时间片,对每个进程 都是公平的 • 然而,实际应用中,进程的性质可能是不同 的,例如,一个与用户进程小户的前台进程急 迫的需要对用户的输入作出响应,而一个后 台打印机进程的迫切性也许就不那么重要 • 因此可以为每个进程定义一个优先级,优先 级越高的进程将优先获得处理机的调度
调度目标
• 满足用户的要求:
– 响应时间,周转时间,截止直接
• 满足系统的需求:
– 系统吞吐量,处理机利用率,各类资源的平衡 使用,公平性及优先级
第四章Operating System处理机管理

2. 面向系统的调度性能准则 吞吐量:单位时间内所完成的作业数, 吞吐量:单位时间内所完成的作业数,跟作 业本身特性和调度算法都有关系-- --批处理 业本身特性和调度算法都有关系--批处理 系统 处理机利用率:-- :--大中型主机 处理机利用率:--大中型主机 各种设备的均衡利用: 各种设备的均衡利用:如CPU繁忙的作业和 繁忙的作业和 I/O繁忙(指次数多,每次时间短)的作业搭 繁忙( 繁忙 指次数多,每次时间短) --大中型主机 配--大中型主机 3. 调度算法本身的调度性能准则 易于实现 执行开销小
2. 时间片长度的确定
时间片长度变化的影响
– 过长->退化为 过长- 退化为 退化为FCFS算法,进程在一个时间片内都执行 算法, 算法
完,响应时间长。 响应时间长。 – 过短->用户的一次请求需要多个时间片才能处理完,上 过短- 用户的一次请求需要多个时间片才能处理完 用户的一次请求需要多个时间片才能处理完, 下文切换次数增加,响应时间长。 下文切换次数增加,响应时间长。
4.2.4.3 线性优先级调度算法 Robin) (SRR, Selfish Round Robin)
统吞吐量
低级调度也称微观调度,从处理机资源分配的角度来看, 低级调度也称微观调度,从处理机资源分配的角度来看, 处理机需要经常选择就绪进程或线程进入运行状态, 处理机需要经常选择就绪进程或线程进入运行状态,低级 调度的时间尺度通常是毫秒级的。 调度的时间尺度通常是毫秒级的。由于低级调度算法的频 繁使用,要求在实现时做到高效 繁使用,
4.2.4.1 静态优先级
创建进程时就确定,直到进程终止前都不改变。通常 创建进程时就确定,直到进程终止前都不改变。 是一个整数。 是一个整数。
操作系统原理第四章 处理机调度习题

第四章处理机调度4.3 习题4.3.1 选择最合适的答案1.某系统采用了银行家算法,则下列叙述正确的是()。
A.系统处于不安全状态时一定会发生死锁B.系统处于不安全状态时可能会发生死锁C.系统处于安全状态时可能会发生死锁D.系统处于安全状态时一定会发生死锁2.银行家算法中的数据结构包括有可利用资源向量Available、最大需求矩阵Max、分配矩阵Allocation、需求矩阵Need,下列选项正确的是()。
A.Max[i,j]=Allocation[i,j]+Need[i,j]B.Need[i,j]= Allocation[i,j]+ Max[i,j]C.Max[i,j]= Available[i,j]+Need[i,j]D.Need[i,j]= Available[i,j]+ Max[i,j]3.下列进程调度算法中,()可能会出现进程长期得不到调度的情况。
A.非抢占式静态优先权法B.抢占式静态优先权法C.时间片轮转调度算法D.非抢占式动态优先权法4.在下列选项中,属于预防死锁的方法是()。
A.剥夺资源法B.资源分配图简化法C.资源随意分配D.银行家算法5.在下列选项中,属于检测死锁的方法是()。
A.银行家算法B.消进程法C.资源静态分配法D.资源分配图简化法6.在下列选项中,属于解除死锁的方法是()。
A.剥夺资源法 B.资源分配图简化法C.银行家算法 D.资源静态分配法7.为了照顾紧迫型作业,应采用()。
A.先来服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.优先权调度算法8.在采用动态优先权的优先权调度算法中,如果所有进程都具有相同优先权初值,则此时的优先权调度算法实际上和()相同。
A.先来先服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.长作业优先调度算法9.作业从后备作业到被调度程序选中的时间称为()。
A.周转时间B.响应时间C.等待调度时间D.运行时间10.资源静态分配法可以预防死锁的发生,它们使死锁四个条件中的()不成立。
第四章 操作系统处理机调试(张尧学)

等待事件
4.1.2 作业与进程
作业是用户向计算机提交任务的任务实体 进程是计算机为了完成用户任务实体而设置
的执行实体,是系统分配资源的基本单位
第四章 处第理9机页调度
4.2 作业调度
作业调度主要是完成作业从后备状态到执行状态的转 变,以及从执行状态到完成状态的转变
第四章 处第理1机0页调度
第四章 处第理1机9页调度
4.3.2 进程调度的时机
(1) 正在执行的进程执行完毕。 (2) 执行中进程自己调用阻塞原语将自己阻塞起来进入睡眠等待状态。 (3) 执行中进程调用了P原语操作,从而因资源不足而被阻塞;或调用
了V原语操作激活了等待资源的进程队列。 (4) 执行中进程提出I/O请求后被阻塞。 (5) 在分时系统中时间片已经用完。 (6) 在执行完系统调用
第四章 处第理1机2页调度
图4.3 作业调度中状态的转换过程 第四章 处第理1机3页调度
4.2.2 作业调度目标与性能衡量
作业调度的功能最主要的是从后备作业队列中选取一批作 业进入执行状态。
调度目标主要是以下4点: (1) 对所有作业应该是公平合理的; (2) 应使设备有高的利用率; (3) 每天执行尽可能多的作业; (4) 有较快的响应时间。
主要功能是按照一定的策略选择一个处于就绪状态的进程, 使其获得处理机执行。根据不同的系统设计目的,有各种各样 的选择策略,例如系统开销较少的静态优先数调度法,适合于 分时系统的轮转法和多级反馈轮转法等。这些选择策略决定了 调度算法的性能 (3) 进行进程上下文切换
一个进程的上下文(context)包括进程的状态、有关变量 和数据结构的值、硬件寄存器的值和PCB以及有关程序等
高级调度"。从用户工作流程的角度,一次提交的若干个流程, 其中每个程序按照进程调度。时间上通常是分钟、小时或天 (2) 交换调度:中级调度,从存储器资源的角度。将进程的部分 或全部换出到外存上,将当前所需部分换入到内存。指令和数据 必须在内存里才能被CPU直接访问。 (3)进程或线程调度:低级调度(微观调度),又称为"微观调度 "、"低级调度"。从CPU资源的角度,执行的单位。时间上通常 是毫秒。因为执行频繁,要求在实现时达到高效率
操作系统原理与应用(第2版)清大版第4章习题参考答案

1、管理对象是内存及作为内存的扩展和延伸的后援存储器(外存)。
基本任务:a.按某种算法分配和回收存储空间。
b.实现逻辑地址到物理地址的转换。
c.由软硬件共同实现程序间的相互保护。
2、程序中通过符号名称来调用、访问子程序和数据,这些符号名的集合被称为“名字空间”,简称名空间。
当程序经过编译或者汇编以后,形成了一种由机器指令组成的集合,被称为目标程序,或者相对目标程序。
这个目标程序指令的顺序都以0为一个参考地址,这些地址被称为相对地址,或者逻辑地址,有的系统也称为虚拟地址。
相对地址的集合称为相对地址空间,也称虚拟地址空间。
目标程序最后要被装入系统内存才能运行。
目标程序被装入的用户存储区的起始地址是一个变动值,与系统对存储器的使用有关,也与分配给用户使用的实际大小有关。
要把以0作为参考地址的目标程序装入一个以某个地址为起点的用户存储区,需要进行一个地址的对应转换,这种转换在操作系统中称为地址重定位。
也就是说将目标地址中以0作为参考点的指令序列,转换为以一个实际的存储器单元地址为基准的指令序列,从而才成为一个可以由CPU调用执行的程序,它被称为绝对目标程序或者执行程序。
这个绝对的地址集合也被称为绝对地址空间,或物理地址空间。
用户程序的装入,是一个从外存空间将用户已经编译好的目标程序,装入内存的过程。
在这个过程中,要进行将相对地址空间的目标程序转换为绝对地址空间的可执行程序,这个地址变换的过程称为地址重定位,也称地址映射,或者地址映象。
覆盖:是利用程序内部结构的特征,以较小的内存空间运行较大程序的技术。
交换:是指内外存之间交换信息。
3、一旦一个区域分配给一个作业后,其剩余空间不能再用(内零头或内碎片),另外当一区域小于当前所有作业的大小时,便整个弃置不用(外零头或外碎片)。
4、(1)2.4us (2)1.5us5、为了给大作业(其地址空间超过主存可用空间)用户提供方便,使他们摆脱对主存和外存的分配和管理。
操作系统原理(处理机调度)

带权平均周转时间
2009-4-7 24
平均周转时间和平均带权周转时间
周转时间:从作业提交到作业完成的时间间隔。 Ti = tci – tsi 平均周转时间: n个作业的平均周转时间T为:
带权周转时间:为周转时间T和运行时间R之比。 W = T / R 平均带权周转时间:
高级(Long-term)调度――作业调度 作业调度用于决定把外存输入井上处于作业 后备队列上的那些作业调入内存,并为它们创建 进程、分配必要的资源,然后再将新创建的进程 排在就绪队列上,准备执行。在批处理系统中, 作业是先驻留在外存的输入井上的,因此需要有 作业调度。然而在分时系统中,通过键盘输入的 命令和数据直接进入内存,无需作业调度。
2009-4-7
31
4.3.3 进程上下文切换(续)
进程上下文切换的步骤(续):
3. 按照某个进程调度算法,选择一个处于就绪
状态的进程。 4. 恢复或装配所选进程的上下文,将CPU控制 权交给所选进程。
2009-4-7
32
4.3.4 进程调度性能评价
进程调度性能的衡量是操作系统设计的一个重要 指标。 进程调度性能的定性衡量:
2009-4-7 28
进程调度的方式
非剥夺(非抢占 Nonpreemptive mode )方式: 采用这种调度方式时,一旦把处理机分配给某 进程后,便让进程一直执行,直到该进程完成或 发生某事件而被阻塞时,才把处理机分配给其它 进程,决不允许某进程抢占已经分配出去的处理 机。 这种调度方式的优点是实现简单、系统开销 小,适用于大多数批处理系统环境。缺点是难以 满足紧急任务的要求,不适用于实时、分时系统 要求。
平均周转时间和平均带权周转时间
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四章处理机调度4.3 习题4.3.1 选择最合适的答案1.某系统采用了银行家算法,则下列叙述正确的是()。
A.系统处于不安全状态时一定会发生死锁B.系统处于不安全状态时可能会发生死锁C.系统处于安全状态时可能会发生死锁D.系统处于安全状态时一定会发生死锁2.银行家算法中的数据结构包括有可利用资源向量Available、最大需求矩阵Max、分配矩阵Allocation、需求矩阵Need,下列选项正确的是()。
A.Max[i,j]=Allocation[i,j]+Need[i,j]B.Need[i,j]= Allocation[i,j]+ Max[i,j]C.Max[i,j]= Available[i,j]+Need[i,j]D.Need[i,j]= Available[i,j]+ Max[i,j]3.下列进程调度算法中,()可能会出现进程长期得不到调度的情况。
A.非抢占式静态优先权法B.抢占式静态优先权法C.时间片轮转调度算法D.非抢占式动态优先权法4.在下列选项中,属于预防死锁的方法是()。
A.剥夺资源法B.资源分配图简化法C.资源随意分配D.银行家算法5.在下列选项中,属于检测死锁的方法是()。
A.银行家算法B.消进程法C.资源静态分配法D.资源分配图简化法6.在下列选项中,属于解除死锁的方法是()。
A.剥夺资源法 B.资源分配图简化法C.银行家算法 D.资源静态分配法7.为了照顾紧迫型作业,应采用()。
A.先来服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.优先权调度算法8.在采用动态优先权的优先权调度算法中,如果所有进程都具有相同优先权初值,则此时的优先权调度算法实际上和()相同。
A.先来先服务调度算法B.短作业优先调度算法C.时间片轮转调度算法D.长作业优先调度算法9.作业从后备作业到被调度程序选中的时间称为()。
A.周转时间B.响应时间C.等待调度时间D.运行时间10.资源静态分配法可以预防死锁的发生,它们使死锁四个条件中的()不成立。
A.互斥条件B.请求和保持条件C.不可剥夺条件D.环路等待条件4.3.2 选择所有正确答案1.下列选项中,()可能是非抢占方式进程调度中引起调度的原因。
A.当前的运行进程调用阻塞原语而进入阻塞状态B.当前的运行进程提出申请I/O而阻塞C.有更高优先级的进程到达而从执行状态变为就绪状态D.正在执行的进程执行了P原语操作,由于资源不足而阻塞2.选择排队作业中等待时间最长的作业被优先调度,该调度算法不可能是()。
A.先来先服务调度算法B.高响应比优先调度算法C.优先权调度算法D.短作业优先调度算法3.作业控制块JCB连成一串而形成的一个排队队列,该队列称为()。
A挂起队列 B.阻塞队列C.就绪队列D.后备队列4.下列哪个选项描述的时间属于响应时间的一部分()。
A.处理机对请求信息进行处理的时间B.从键盘输入的请求信息传送到处理机的时间C.所形成的响应回送到终端显示器的时间D.用户查看响应回送到的信息5.下列四个选项描述的时间组成了周转时间,其中可能发生多次的是()。
A.等待I/O操作完成的时间B.作业在外存后备队列上等待作业调度的时间C.进程在CPU上的执行时间D.进程在就绪队列上等待进程调度的时间6.下面列出的是选择调度方式和算法的4个面向用户的准则。
其中,不完全适用于实时系统的准则是()。
A.优先权准则B.响应时间快C.截止时间的保证D.周转时间短7.下面列出了选择调度方式和算法的4个准则。
其中,对批处理、分时、实时系统都可以采用的是()。
A.周转时间短B.响应时间快C.截止时间的保证D.优先权准则8.下列选项中,()是分时系统中确定时间片大小需要考虑的因素。
A.各类资源的平衡利用B.就绪队列中进程的数目C.系统的处理能力D.系统对响应时间的要求9.下面列出的选项中,属于可剥夺性资源的有()。
A.CPUB.内存C.磁盘D.磁带机10.在多级队列调度和多级反馈队列调度的叙述中,正确的是()。
A.多级反馈队列调度中就绪队列的设置不是象多级队列调度一样按作业性质划分,而是按时间片的大小划分B.多级队列调度用到优先权,而多级反馈队列调度中没有用到优先权C.多级队列调度中的进程固定在某一个队列中,而多级反馈队列调度中的进程不固定D.多级队列调度中每个队列按作业性质不同而采用不同的调度算法,而多级反馈队列调度中除了个别队列外,均采用相同的调度算法4.3.3 判断正误,简要说明理由1.作业调度能够使作业获得CPU。
2.在多道程序系统中,系统的现有空闲可用资源能否满足一个后备作业J的资源要求,是选择作业J进入内存的必要条件。
3.短作业(进程)优先调度算法具有最短的平均周转时间,因此这种算法是最好的算法。
4.在优先权调度算法中确定静态优先权时,一般说,计算进程的优先权要高于磁盘I/O 进程的优先权。
5.摒弃不可剥夺条件的方法可用于预防多个打印进程死锁的发生。
6.操作系统处理死锁,只要采用预防、解除、检测、避免之中的一种就足够了。
7.如果系统在所有进程运行前,一次性地将其在整个运行过程所需的全部资源分配给进程,即所谓“静态分配”法,是可以预防死锁发生的。
8.多个进程竞争比进程数目少的资源时就可能产生死锁,而当资源数目大于进程数目时就一定不会发生死锁。
9.在银行家算法中,对某时刻的资源分配情况进行安全分析,如果该时刻状态是安全的,则存在一个安全序列,且这个安全序列是唯一的。
10.进程调度算法各种各样,但是如果选择不当,就会造成死锁。
4.3.4 简答题1.高级调度和低级调度的主要任务是什么?为什么要引入中级调度?2.在作业调度中需作出哪些决定?3.在剥夺调度中,有哪些剥夺原则?4.在OS中引起进程调度的主要因素有哪些?5.在选择调度方式和调度算法时,应遵循的原则是什么?6.在批处理系统、分时系统和实时系统中,各采用哪几个进程(作业)调度算法?7.为什么说多级反馈队列能较好地满足各种用户的需要?8.在多用户分时系统中,时间片轮转调度的算法在确定时间片的大小时,应考虑哪些因素?9.为实现实时调度,对实时系统提出了哪些要求?10.目前常用的调度方式和算法,能否应用到实时系统中?11.在多处理机系统中,比较有代表性的线程调度方式有哪几种?12.试比较自调度和成组调度?13.在OS/2中采用哪种调度方式和调度算法?14.何为死锁?产生死锁的原因和必要条件是什么?15.在解决死锁问题的几个方法中,哪种方法最容易实现?哪种方法使资源的利用率最高?16.请详细说明可通过哪些途径预防死锁?17.在银行家算法的例子中,如果P0发出的请求向量由Request0(0,2,0)改为Request0(0,1,0),问系统可否将资源分配给它?4.4 习题解答要点4.4.1 选择最合适的答案1.B2.B3.B4.D5.D6.A7.D8.A9.C 10.B4.4.2 选择所有正确答案1.ABD2.BCD3.D4.ABC5.ACD6.AD7.D8.BCD9.ABC 10.ACD4.4.3 判断题1. 错误作业调度是高级调度。
它只能使某作业获得使用CPU的资格。
而只有进程调度或线程调度才能使作业真正获得CPU。
2. 错误多道系统中的资源分配有两种方法:静态分配:作业调度的功能之一是审查系统能否满足用户作业的资源要求;之二是按照一定的算法选取作业。
动态分配:进程所需的资源是在运行中分配的,作业调度并不考虑当前空闲的资源量,只是按照一定的算法选取作业。
3.错误前半句话讲的正确,但由此说短作业(进程)优先调度算法是最好的,就不正确了。
因为一个算法的好坏要看其是否适于系统的需要而判定。
4.错误因为磁盘I/O进程属于系统进程。
而系统在确定进程的静态优先权时遵循的原则是:系统进程的优先权高于一般用户进程的优先权(除非用户的进程特别紧迫或重要)5.错误因为摒弃不剥夺条件的方法可预防死锁的发生。
6.错误因为,操作系统要兼顾资源的使用效率和安全性两个方面,常见的是,将预防、解除、检测、避免四种处理混合起来使用。
举例来说,只有检测死锁而无解除死锁,检测出死锁又有什么用呢?7.正确因为资源的“静态分配”方法,可以摒弃“请求和保持”条件,是可以预防死锁的。
8.错误进程是否发生死锁,需要考虑每个进程申请资源的数目、所申请资源的种类、进程推进情况等因素。
不能简单地比较进程数目和资源数目就来确定是否死锁。
9.错误系统在调用银行家算法进行安全检查时,只要找到一个安全序列就可断定系统是安全的。
但安全序列可能不止一个,有的情况下可能是只有一个,有的情况下可能有2个或者更多。
10.错误如果进程调度算法选择不当,会造成某些进程的长期等待。
我们将这种进程称为“饥饿”进程(长期“饥饿”的极端情况是“饿死”)。
“饿死”和“死锁”具有完全不同的含义。
4.4.4 简答题1.高级调度和低级调度的主要任务以及引入中级调度原因如下:高级调度又称为作业调度。
它是批处理系统中使用的一种调度。
其主要任务是,按照某种算法从外存的后备队列上选择一个或多个作业调入内存,并为它们创建进程、分配必要的资源,然后再将创建的进程控制块挂入就绪队列上。
低级调度又称进程调度。
它是距离硬件最近的一级调度。
其主要任务是,按照某种算法从就绪队列上选择一个(或多个)进程,使其获得CPU。
引入中级调度的目的是为了提高内存利用率和系统吞吐量。
其功能是,让那些暂时不能运行的进程不再占用宝贵的内存资源,而是调出到外存上等待。
此时的进程状态为挂起状态。
当这些进程重新具备运行条件且内存空闲时,由中级调度选择一部分挂起状态的进程调入内存,将其状态变为内存就绪状态。
2.在作业调度中需作出的决定如下:作业调度需要按照多道程序度(即,最大道数)决定一次接纳多少作业进入内存。
如果太少将导致系统资源利用率低,且系统吞吐量低;太多将导致内存空间紧张,系统服务质量下降,使作业运行周期过长。
作业调度需要决定接纳哪些作业进入内存。
常用的算法是,先来先服务,短作业优先,最高优先级调度、响应比高者优先等。
3.在剥夺进程调度中,剥夺原则如下:时间片原则。
在轮转算法中,CPU轮流为诸多进程服务,每个进程运行完自己的时间片后,系统就将它的CPU剥夺过来,交给下一个进程使用。
优先级原则。
为紧迫的作业赋予较高的优先级,这种作业到达系统,或者由阻塞状态被唤醒后,若其优先级高于当前运行的进程的优先级,可以剥夺其CPU。
短作业(进程)优先原则。
若一个作业(进程)到达系统,其运行长度比当前运行的进程长度明显的短,则剥夺它的CPU。
4.引起进程调度的主要因素主要有:一个进程运行完毕;一个正在运行的进程被阻塞;在抢占式调度中,一个高优先级的进程被创建;在抢占式调度中,一个高优先级进程由阻塞被唤醒;在轮转式调度中,正在运行的进程运行完一个时间片。