当前位置:文档之家› 面向对象的多处理机动态负载平衡系统研究

面向对象的多处理机动态负载平衡系统研究

面向对象的多处理机动态负载平衡系统研究

包小光

(北京交通大学,北京市100044)

黼要I由计算机、终端设备、通信设备等构成的多处理机系统,在莱一时刻,有些计算机酌负载板重,而另外一些计算机的负载极为空闲,不能充分地利用系统资源。多处理机系统中动态平衡各台计算机之间的负载是任务分配与调度的一个蚤要目标,它能够提高整个系统的性能,从而靓系统资源共事。

口铺嘲面向时象;动态负载平衡;多处理机;对g建{|gt tg

1引言

进入21世纪信息社会,计算机技术日益普及,多处理机系统也广泛应用于社会的各个领域之中,但是由于多处理机系统的任务的分配、处理机的速度、资源利用率等因素的影响,多处理机系统的动态负载平衡变得越来越复杂。由计算机、终端设备、通信设备等构成的多处理机系统,在某一时刻,有些计算机的负载极重,而另外一些计算机的负载极为空闲,不能充分地利用系统资源。多处理机系统中动态平衡各台计算机之间的负载是任务分配与调度的一个重要目标,它能够提高整个系统的性能,以实现系统资源共享。

2多处理机动态负载平衡算法

为了提高多处理机动态负载平衡系统的性能,在系统任务分配严重失衡时,就需要重新分配多台计算机之间的负载,系统在运行的过程中,进程自动地把当前重载计算机的任务迁移(M i gra t i on)到轻载计算机上执行,通常把这种计算能力共享的形式称为动态负载平衡或负载共享。多处理机的负载平衡至关重要,因为它直接影响到系统的吞吐量、资源利用率、以及对作业的加工费用等。负载平衡的目标是:

1)增强任务执行时的并行性,提高系统的吞吐量;

2)均衡各处理机上的负载,以改善资源,特别是处理机的利用率;

3)使不同处理机的进程之间通信量尽量减少,以降低通信费用;

4)允许规定大量的限制条件,以适应多种应用需要。

已经被普遍接受的多处理机动态负载平衡算法有两个广义的分类:一类是So ur ce—i ni t i at i v e算法,也叫发送者开始的平衡(Sender—i ni t i at ed Lo a d B al anci ng)算法,由任务到达的计算机最先传送任务。另一类是Ser ve r—i ni t i a t i ve算法也叫接收者开始的平衡(R ecei ve—i ni t i at ed Lo a d Bal anci ng)算法,由能够和愿意接受传送任务的计算机,去寻找这样的任务。

多处理机动态负载平衡算法由信息策略、传送策略、放置策略三个部分组成,动态负载平衡的三个部分策略之间以不同的方式相互作用。放置策略利用信息策略提供的负载信息(如:负载严重失衡),仅当任务被传送策略判断(找到能接收任务分配的计算机)为适合传送之后才开始任务传送。

3多处理机动态负载平衡系统软件

软件定义中的需求分析用来对用户需求和与系统交互的环境进行建模,我们采用对象建模技术。对象建模技术0M T(O bj ect M o del i n g Tec hni que)是由J.R um ba ugh等人提出来的,定义了对象模型、动态模型、功能模型。对象模型实现系统中对象的静态模型,用来描述系统的静态结构、对象之间关系、对象的属性、对象的操作,需要确定出与系统有关的实体,并以包含了对象和类的对象图或实例图的形式表示出来:动态模型通过用户实例建模来进行,以描述系统的动态行为,需要确定出系统与环境、系统内部各个组成部分之间的交互关系,描述与时间和操作顺序有关的系统特征——激发事件、事件序列,确定事件先后关系的状态,以及事件和状态的组织,表示瞬间的、行为上的、系统的“控制”特征,并以状态图来表示,每张状态图显示了系统中一个类的对象所允许的状态和事件的顺序:功能模型描述与值交换有关的系统特征——功能、映射、约束和函依赖,并以图表示。

2009年1,}J J二

对象建模(0M T)的主要内容:把需求文档描述的多处理机系统分为若干个模块,每个模块对应一个视图的一部分,其中包括类以及类之间的关系(如:关联、继承等)。在分析阶段,对象和类可以表示物理实体(计算机),也可以表示逻辑概念(任务)。通常,开始的时候可以通过分析需求文档中的名词来获取类。确定类应该反映出初始的系统结构,不考虑细节内容。类之间的关系分为关联(A ss oc i a t i on)和聚合(A ggr ega t i on)两种。关联可以表示物理设备之间的关系,或者逻辑依赖关系(如:雇佣关系等),它表示的是两个对象之间的静态关系。关联可以通过分析需求文档中连接名词的动词来确定。对于表示拥有或是构成等关系的关联通常表示为聚合关系。

4多处理机动态负载平衡系统软件开发

多处理机动态负载平衡系统软件开发时必须确定多处理机动态负载平衡系统的体系结构,形成求解问题和建立解答问题的高层次策略。形成的决策有:将系统分解成子系统、标识问题中固有的并发性、将子系统分配到处理机、选择数据存储管理的手段、处理对全局资源的访问、选择软件中控制的实现、处理边界条件、设置折衷的优先级等。体系结构设计通过需求分析阶段产生的对象模型、动态模型和功能模型来定义应用的体系结构,可以综合考虑自顶向下(细化过程)和自底向上(组合过程)的分析方法。

设计并行对象,首先要确定出进程的状态,然后描述出进程的行为。设计被动对象:设备接口模块用来描述I/O(输入/输出)设备的特征,可把设备需要的数据和操作A P I封装成一个设备类,实现应用与硬件环境的隔离:数据管理模块可以通过O O D M B M S(O bj e c t—O ri—ent edD at aB as eM angem ent Syst em)来实现,可以实现对象的直接操作:算法隐藏模块用来隐藏那些可能随多处理机动态负载平衡系统变化而发生变化的算法,用一组操作来提供用户所需要的服务。

5结语

面向对象的多处理机动态负载平衡系统的分析和设计方法在实际工程中也被运用,其面向对象的基本思想得到充分体现。在软件开发中,面向对象的分析和设计方法可以提高软件系统的可扩充性和重用性,充分体现了面向对象开发过程的迭代和无间隙特征,具有广阔的应用前景。

[参考文献】

【】P e t e r Coa d.面向对象分析l M】.北京:北京大学出版社,1991.

f2J瞿中,袁威,徐问之网络中的蛀孔寻径技术U J计算机工程与应用,2002.

131挛允,熊光泽.面向对象的实时多任务系统设计方法U1.计算机科学.2000.14l Fra n c es c o m ar i a M a ri n o,E ar l E,Sw ar t z l an de r Jr.Paral l el I m pl em e n t at i o n o f

M ul ti—m e nsi onal Tra n s f o r m s W i t h out In t er pro ce sso r C om m uni cat i onⅡJ I E E E Tr a m a c i o ns on C o m p ut er,1999;

相关主题
文本预览
相关文档 最新文档