多处理机的任务分配和进程调度
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
处理机的进程调度
进程调度分类 按调度层次,分为 高级调度 中级调度 低级调度
按OS的类型,分为
批处理调度 分时调度 实时调度 多处理机调度
处理机的进程调度
选择调度方式和调度算法的若干准则 1.面向用户的准则 a.周转时间短:是批处理系统中衡量性能的一个重要 指标。分为两个具体指标:作业周转时间和进程周 转时间。 b.响应时间快:是分时系统中衡量性能的重要指标。 从提交一个请求开始到首次产生响应为止(显示出结 果)的一段时间间隔。 c.截至时间的保证:是实时系统中衡量性能的一个重 要指标。是指某任务必须从开始执行的最近时间, 或必须完成的最迟时间。 d.优先权准则:它是紧急作业得到及时处理的重要保 证。
处理机的进程调度
(时间片:s1<s2<s3<…) 新进程 进入
s1
最高优先权队列时间片
至CPU
次高优先权队列时间片
s2
至CPU
再次高优先权队列时间片
s3
至CPU
最低优先权队列时间片
sn
至CPU
处理机的进程调度
(2)多级反馈队列调度算法的性能 多级反馈队列调度算法具有较好的性能,能满足 各种类型用户的需要。 1.终端型用户:作业较小,可在第一队列的时间 片内完成。 2.短批处理型作业用户:大多数作业可在第一队 列的时间片内完成,稍长的也可在第二队列的时间 片内完成。 3.长批处理型作业用户:可依次在第一、二、… 、 n队列的时间片内完成。
多处理机-互连方式
总线仲裁算法: a.静态优先级算法:为每一个连到总线的部件分配固 定的优先级 b.固定时间片算法:把总线按固定大小时间片,轮流 提供给部件使用 c.动态优先级算法:让总线上各部件优先级可根据情 况按一定规则动态地改变 d.先来先服务算法:按接受到访问总线请求先后顺序 来响应
多处理机-互连方式
处理机的进程调度
2.短作业(进程)优先调度算法(SJF/SPF) 是指对短作业或者短进程优先调度的算法。 属于不可抢占策略 短作业优先(SJF)的调度算法,是从后备队列中选择 一个或若干个估计运行时间最短的作业,将它们调 入内存运行。 短进程优先(SPF)调度算法,则是从就绪队列中选出 一估计运行时间最短的进程,将处理机分配给它, 使它立即执行并一直执行到完成,或发生某事件而 被阻塞放弃处理机时,再重新调度。
多处理机的进程调度(线程调度)
(2)松散耦合MPS结构(异构型)
M1
I/O1
M2
I/O2
Mn
P1
P2
……
I/On
Pn
特点:各个处理机有自己的存储器和OS,它们之间通过通 道或通信线路实现互连。一般说,该结构里的所有处理机 可以不相同。 在多处理机系统中,进程调度与系统结构和OS的工 作模式均相关。
需要专门的指令或语句指 明程序中各程序段的并发 关系,并控制并发执行 实现指令、任务作业级的 并行 处理机数目不固定,复杂
结构灵活性
程序并行性
并行任务派生
进程同步 资源分配和任务 调度
多处理机的任务分配(任务调度)
NP问题 分布式内存多处理机上并行任务静态调度 一种基于A *算法的多处理机任务调度算法 一种多处理机任务分配的启发式算法 一种有优先约束的多处理机系统的任务分配方法
多处理机-互连方式
M1 M2 M3
Pn I/O1
Pn
I/O2
交叉开关形式
多处理机-互连方式
4.多端口存储器形式 如果每个存储器模块有多个访问端口,且将分布在 交叉开关矩阵中的控制、转换和优先级仲裁逻辑分 别移到相应存储器模块的接口中。
P1 P2
M1
M2
M3
M4
I/O1 四端口存储器形式的结构
多处理机的进程调度(线程调度)
进程分配方式
1.对称多处理机系统中的进程分配方式 在SMP系统中,所有的处理器都是相同的,因 而可把所有的处理器作为一个处理器池(Processor pool),由调度程序或基于处理器的请求, 将任何一
多处理机
分类: 按照处理机间的连接程度:紧密耦合MP和松散耦合 MP 按照是否共享主存储器:共享存储器MP和分布式存 储器MP 按照处理机类型:同构MP和异构MP 按照处理机的个数:大规模并行处理机MPP和对称 多处理机SMP 另外,多向量处理机和机群系统也是多处理机
多处理机-互连方式
2.环形互连形式
总线形成环形互连;
令牌(Token);
点点连接,物理参数容易控制;
适合于高带宽的光纤
多处理机-互连方式
P0 P1 P2 P3
P7
P6
P5
P4
级间采用环形互连的多处理机
多处理机-互连方式
3.交叉开关形式
包含一组纵横开关阵列; 是总线方式的极端; 交叉开关阵列复杂; 总线数=m+I+n, m:存储器模块数 n:处理机数 I:I/o设备数 一般:M>=I+N
I/O1
多处理机-互连方式
5.开关枢纽结构形式
把互连结构的开关设置在各个处理机或其接口内部, 组成分布式结构。
美国加州大学伯克利分校设计的树形多处理机XTREE
多处理机与并行处理机的比较
方 面 并行处理机SIMD
针对向量、数组处理而设 计的,有专用性,虽然处 理单元数多 16384 个,但 设置有限的、固定的
多处理机的进程调度(线程调度)
前面所讨论的是单CPU下的进程调度,对于多 CPU,一方面由于有多台处理机,可采用的调度策 略也随之增多,另一方面在调度目标上,要求的是
整个系统的运行效率的提高,即不能只保证单CPU
忙,而且在引入线程后,调度的基本单位已经是线 程了。因此,在多CPU的OS中,广泛采用了线程调 度机制,接下来主要介绍对线程的调度问题。
优先级调度算法又可分为:
非抢占的优先级调度法 可抢占的优先级调度法
处理机的进程调度
(2)优先权的类型 a.静态优先权:静态优先权是在创建进程时确定的, 在整个运行期间不再发生改变。
确定静态优先权的依据:
进程类型;进程对资源的需求;用户要求的优先权
静态优先权简单易行,系统开销小,但不精确。
b.动态优先权:动态优先权是基于某种原则,使进 程的优先权随时间而改变。
多处理机的进程调度(线程调度)
多处理机系统(MPS)的类型 1.紧密耦合MPS和松散耦合MPS (1)紧密耦合MPS结构(同构型)
P1
P2
P3
…
Pn I/O1
高 速 交 叉 开 关
M1
M2
M3
…
Mn
I/O2 . . .
特点:通过高速总线或高速交叉开关进行处理机之间的 互连,并共享存储器。一般说,该结构里的所有 处理机都是相同的。
实现操作级并行,并行性 存在指令内部 通过指令来反映数据间是 否并行计算,并由指令直 接启动多个处理单元并行 工作 实现指令内部对数据操作 的并行 处理单元数目固定,可利 用屏蔽手段,改变数目
多处理机
实现作业、任务、程序段 的并行,适应算法,结构 灵活多变,实现复杂的机 间互连,避免争用共享的 硬件资源 并行性还存在于指令外部, 表现于多个任务间的并行
处理机的进程调度
(2)时间片大小的确定 轮转法的性能取决于时间片大小的选择。 例:若一次切换时间为5毫秒,时间片长度选择为 20毫秒,则20%的CPU时间花费于进程调度程序。 为了改善CPU的利用率,可以增大时间片,比如说 为500毫秒,此时CPU利用率达99%之多,但每一进 程的响应时间也因之增大。若就绪队列中共有10个 进程,则每一进程需要等待5秒钟,才能在CPU上服 务一次。 通常来说,选择时间片为100毫秒左右比较适宜。 时间片选择有:固定时间片和可变时间片;与时 间片大小有关的因素有:系统响应时间、就绪进程 个数和CPU处理能力三个。
处理机的进程调度
5.多级反馈队列调度算法 (1)思路如下:把进程按优先级分组,优先级最高 的进程组中的进程每次在CPU上运行一个时间片t长
度;优先级次之的进程组的进程每次运行二个时间
片2t长度;优先级再次之的进程组的进程每次运行4 个时间片4t长度,以此类推,进程每次运行完它的时 间片后便降低一个优先级别,移至另一优先级的进 程组中。
处理机的进程调度
(3)高响应比优先调度算法 HRN原理:就是在每调度一个作业投入运行时,先 计算后备作业队列中每个作业的响应比,然后挑选
响应比最高者投入运行。
优点:该算法既照顾了短作业用户,同时也避免了 长作业用户无限期的等待,是 FCFS 和 SJ(P)F 两种 算法的较好折衷方案。 缺点:算法较为复杂,增加了系统开销(计算响应比)。
总线形式 环形互连形式 交叉开关形式 多端口存储器形式 开关枢纽结构形式
多处理机-互连方式
1.总线形式 多个处理机、存储器模块和外围设备通过接口与公 用总线相连,采用分时或多路转接技术传送。 结构简单,成本低,增减模块方便,但对总线的失 效敏感。
提高总线的系统效率: 采用优质高频同轴电缆,用光纤 采用多总线方式减少冲突概率
处理机的进程调度
调度算法 1.先来先服务算法(FCFS) 该算法总是把处理机分配给最先进入就绪队列的 进程,即:就绪队列按进入的先后顺序排队。 优点:实现简单 缺点:没有考虑进程的优先级 属于不可抢占策略
此算法是有利于长(大)作业(进程),不利于短(小) 作业(进程);有利于CPU繁忙的作业(进程),不利于 I/O繁忙的作业(进程)。
处理机的进程调度
4.基于时间片的轮转调度算法 (1)基本原理: 轮转法是最简单又最公平的进程调度算法。主 要用于分时系统中作为其主调度算法。 属于可抢占策略 轮转法分配给每一进程在CPU上运行的时间长 度,称之为时间片。其基本原理是:诸进程以此时 间片为限制,轮流使用CPU。如果时间片到期时, 进程尚未完成运行,调度程序将剥夺它正在使用的 CPU,转让给另一进程使用;如果进程在使用完它 的某一时间片之前已经完成运行或已阻塞,CPU也 立即转让给另一进程使用。
处理机的进程调度
2.面向系统的准则 a.系统吞吐量大:是用于评价批处理系统的重要指标, 因而它是选择批处理系统的重要准则。
b.处理机利用率高:是大、中型计算机系统选择调度 算法的重要依据。但对单用户或实时系统,它不是 十分重要的准则了。
c.各类资源的平衡利用:也是大、中型计算机系统选择 调度算法的重要依据。对单用户或实时系统,它不 是十分重要的准则了。
处理机的进程调度
优点:该算法相对FCFS来说调度性能要好些,且能满 足大多数作业(均是短作业)用户的要求。 缺点:a.该算法对长作业不利 b.该算法未考虑作业的紧迫程度,因而不能保 证紧迫性作业(进程 )及时得到处理。 c.该算法不一定能真正做到短作业优先调度。
处理机的进程调度
3.高优先权优先调度算法 (1)优先权调度算法的类型 基本原理是:对于进程调度,它总是把处理机分配 给就绪队列中具有最高优先权的进程;对于作业调 度,它总选择后备队列中若干具有高优先权的作业 进入内存。
处理机的进程调度(线程பைடு நூலகம்度)
处理机调度的基本概念 What---按什么原则分配CPU---进程调度算法 When---何时分配CPU ---进程调度时机 How---如何分配CPU ---进程调度过程 处理机调度目的:分配CPU 处理机调度方式:一级调度或二级调度 调度算法: FCFS、SPF(SJF)、时间片轮转、优 先权高者优先、多级反馈队列等不同的调度算法。
多处理机的任务分配和进程调度
目录
多处理机的相关介绍 多处理机的任务分配(简)
处理机的进程调度
多处理机的进程调度
多处理机
概念: 两个或两个以上处理机,通过高速互联网络连接起 来,在统一的操作系统管理下,实现指令及以上级 (任务级、作业级)并行。 特点: a.结构灵活 b.程序并行:属于操作一级的并行,性能比指令高 c.进程同步:不需要同步控制(并行处理机需要) d.多处理机工作时,根据多种条件分配资源,所以 所需要的资源变化复杂。
多处理机的进程调度(线程调度)
2.对称多处理机系统和非对称多处理机系统 (1)对称多处理机系统SMPS (Symmetric MultiProcessor System) 在系统中所包含的各处理器单元,在功能和结 构上都是相同的,当前的绝大多数MPS都属于SMPS。 例如,IBM公司的SR/6000 Model F50, 便是利用4片 Power PC处理器构成的。 (2) 非对称多处理机系统AMPS(Asymmetrical MultiProcessor System) 在系统中有多种类型的处理单元,它们的功能和 结构各不相同,其中只有一个主处理器,有多个从 处理器。