多处理机系统中的调度

多处理机系统中的调度

ID:27593714

大小:472.51 KB

页数:23页

时间:2018-12-02

多处理机系统中的调度_第1页
多处理机系统中的调度_第2页
多处理机系统中的调度_第3页
多处理机系统中的调度_第4页
多处理机系统中的调度_第5页
资源描述:

《多处理机系统中的调度》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、3.4多处理机系统中的调度流行的多处理器系统有:•松散耦合多处理器系统:•紧密耦合多处理器系统:现代操作系统往往采用进程调度与线程调度相结合的方式来完成多处理器调度。1什么是多处理机系统多处理机操作系统的分类多处理机系统调度策略多处理机调度2多处理机系统:是一个具有两个或多个处理机并能相互进行通信以协同一个大的给定问题求解的计算机系统。特点:1) 有两个或多个处理机2) 共享主存或高速通信网络3) 共享输入输出子系统4) 有单一完整的操作系统5) 各级硬件和软件相互作用什么是多处理机系统3主要功能:●进程分配

2、●更好的利用多机硬件●资源在处理机之间的分配●改善程序的响应时间●处理机的负载平衡●处理机间的协调和同步●因处理机故障引起的系统重组4广义上说,使用多处理机协调工作,来完成用户所要求任务的计算机系统。这包扩了并行处理系统(parallelprocessingsystem),例如数据流机(dataflowmachine)和细胞阵列处理机(Celluararrayprocessors)等,也包扩了在物理上分散且通过不同的物理传输媒体传输数据的计算机网络系统和计算机网络为基础的,对用户透明的分布式系统,以及在同一的

3、计算机系统里共享内存的多处理机系统.广义的计算机系统的一个共同的特点是有n个处理器(n>1),能做到真正的并行处理,也就是能同时执行n条指令.5(1)多处理机系统与单机调度的区别多处理机调度与单机调度的主要区别涉及两个资源分配问题:一是存放程序或数据的存储器分配及如何访问他们的问题。在多机系统中,由于各进程在物理上也同时执行而不是单机系统那样的交叉执行,这些在物理上同时执行的进程可能同时访问物理存储器的同一地址。处理机对同一存储块的访问必须是顺序的。各进程同时访问物理存储器上的同一地址是不允许的。多处理机系统

4、调度策略6二是将等待执行的就绪进程分配到哪一个处理机上执行的问题。在单机系统中,由于只有一个处理机,在调度程序中选取了某个就绪状态的进程之后,不须再选择处理机。而在多机系统中,为了尽量做到让各处理机负荷平衡,可能会将处理机在进程之间进行多次切换。如果被切换进程正在执行其临界区部分或系统中进程数目相当多,这种频繁的上下文转换将会使系统效率大大下降。7多处理机系统的调度目标是:以最高的可靠性,使用最少的处理机在最短的时间内完成最多的可以并行完成的进程。8多处理器调度的设计要点设计要点之一是如何把处理器分配给进程:

5、静态分配策略动态分配策略设计要点之二是否要在单个处理器上支持多道程序设计。设计要点之三是如何指派进程。9多处理器的调度算法(1)实验证明,随着处理器数目的增多,复杂低级调度算法的有效性逐步下降。多数采取动态分配策略的多处理器系统中,低级调度算法往往采用最简单的FCFS或优先数算法。10多处理器的调度算法(2)多处理器调度的主要研究对象是线程调度算法。尽管线程也给单处理器系统带来很大益处,但在多处理器环境中线程的作用才真正得到充分发挥。11多处理器调度算法(4)自调度算法优点•把负载均分到所有可用处理器上,保证

6、了处理器效率的提高。•不需要集中的调度程序,一旦一个处理器空闲,调度程序就可以运行在该处理器上以选择下一个运行的线程。•运行线程的选择可以采用各种可行的策略。12多处理器调度算法(5)自调度算法(1)先来先服务。(2)最少线程数优先。(3)有剥夺的最少线程数优先。13多处理器调度算法(6)自调度算法不足•就绪线程队列将成为性能的瓶颈。•被抢占的线程很难在同一个处理器上恢复运行,会带来性能下降。•线程都被放在公共线程池中,所有线程获得处理器的机会相同。如果一个程序的线程希望获得较高优先级,进程切换将导致性能的折

7、衷。14多处理器调度算法(7)2)群组调度算法基本思想:把一组进程在同一时间一次性调度到一组处理器上运行。它具有的优点:•当紧密相关的进程同时执行时,同步造成的等待将减少,进程切换也相应减少,系统性能得到提高。•由于一次性同时调度一组处理器,调度的代价也将减少。15多处理器调度算法(8)群调度算法为应用进程分配CPU时间方法一面向应用进程平均分配方法二面向所有进程平均分配16多处理器调度算法(9)群调度对处理器分配(1)如果有N个处理器和M个应用程序,每个应用程序有最多N个线程,那么,使用时间片,每个应用程序

8、将被给予M个处理器中可用时间的1/M,这个分配策略可能效率不高。17多处理器调度算法(10)群调度对处理器分配(2)考虑例子,有两个应用程序,一个有4个线程,另一个有1个线程。若使用统一的时间分配,每个应用程序可获得50%的CPU时间,由于后一个线程运行时,有三个处理器是空闲的,于是浪费的CPU资源为37.5%。18多处理器调度算法(11)可选择的另种统一时间分配称线程数加权调度法,具体来说,给第一

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。