《网络并行计算系统模型》由会员分享,可在线阅读,更多相关《网络并行计算系统模型(4页珍藏版)》请在金锄头文库上搜索。
1、!“#$#%计算机工程与应用#引言随着廉价高性能)*)!“#$%/)0.)0 (? 6/ -A20 71N/A2 . G0 ?1 J3A21G.3A/3E,.3.0KP/3E.3A 2N.0J.G/3E . 12.0 32GH1I 7.1.0020 8-7JG/3E KG2-$B“3$%?025 5.A+45.BA+C5. :,25.-/45或:) , 如图中虚线所示。以系统界面为基点观察相关的两个系统模块会产生两个视图, 为了深入地分析系统特性, 作者对这两种视图分别加以讨论。对网络并行计算系统观察所形成的视图是一个网络并行虚拟机模型(D52EB.F /./GG5G H+.23/G =/47
2、+,5) , 该模型可以在应用层建立一个网络并行虚拟机, 从而为用户提供平台无关的服务。而对底层结构观察所形成的视图则是一个异构模型, 该模型是一个实际系统描述模型, 它包含了构成网络并行计算环境的底层结构中所有细节的描述。在下面的两节中将基于以上提出的概念对系统中的各个模块进行分析。首先是网络并行计算环境的底层结构。I网络并行计算环境中底层结构的异构模型)#*在一个实际的分布式系统中, 从网络硬件到主机, 再到操作系统都可能来自不同的生产厂商, 而这些不同的系统之间无论是从网络的拓扑结构到网络数据传输模式, 还是从主机的硬件体系结构到其中的操作指令, 以及从操作系统中的数据格式到用户编程及操
3、作模式都不尽相同, 除此而外, 不同类型网络的数据传输速率以及不同类型主机的处理性能都有相当的差异, 这样的一种分布式计算环境构成了一个异构环境。在分析这样一种异构环境的时候, 总是希望将它模型化, 这样既便于分析、 理解, 也使得问题简单化, 而且具有代表性。 那么, 基于这样一种思想,可以从上面所述的异构环境中抽象出一个异构模型。在上一节提出的网络并行计算环境中, 以系统界面为基点对底层结构观察所形成的视图是一个异构模型。 该模型的研究对象是一个一般化的分布式系统, 该系统中具有任意类型的网络、任何可能的主机设备以及可以运行于其上的任何操作系统。那么该模型在以下三个层次上体现了异构特性。操
4、作系统层。操作系统是与主机硬件直接相关的, 不同类型的主机上运行着不同的操作系统。 而不同的操作系统提供给用户的应用程序、 编程界面、 处理性能( 包括52-92- ()5)*/9)-)/;0 ?-2*/-+)-50ABC$2- 1*/D)*2-9HI“ =/-8)*)-D),.;-2DE,F)*+,-J,#II“$K$!LM!N:#%M!$O7 F)205,O;52-9A.C$P/05/-:.VS1*)00,#IIK未分解复合逻辑结点进行细化, 每进行一步就得到一个新的进化逻辑OWG:。当逻辑OWG:或进化OWG:满足形式化定义中的逻辑结点分解条件并且不含任何未定义结点时, 就得到确定的逻辑
5、程序, 即确定逻辑OWG:。(!) 将确定逻辑OWG:中带数据流的逻辑结点的数据流表示为=XX程序语言形式遵循=XX语言的语法规则写出每个带数据流的逻辑结点的=XX表达式或基本操作语句, 构造并得到操作表达式表。操作表达式表具体给出程序与=XX语言密切相关的实现细节。(L) 建立确定逻辑OWG:和操作表达式表的联系在确定逻辑OWG:中每个带数据流的逻辑结点上标记操作表达式表中与其对应物理表示的表项号, 得到具有实现形式映射关系的确定OWG:。 至此, 作者已建立一个完整的=XX过程蓝图程序。(K) 生成程序源代码和实现OWG:从=XX过程蓝图生成=XX源程序是为了进一步编译并最终运行程序, 而
6、生成实现OWG:则是=XX过程蓝图产生的一种附加文档。实现OWG:是将确定逻辑OWG:上的每个带数据流的逻辑结点语义替换为操作表达式表中对应=XX语言实现表示后得到的树图。 在=XX过程蓝图基础上产生=XX程序源代码和实现OWG:是非常机械的, 使用代码生成工具和文档生成工具可自动完成此项工作。%结论=XX过程蓝图对=XX过程控制构造进行了逻辑抽象, 使过程控制结构图形显示化, 支持=XX过程在逻辑和实现两个层次上的一致性表示, 是一种简单直观、 结构良好、 面向机器支援的工程化过程表示技术。 使用=XX过程蓝图进行程序设计使过程结构可视化, 同时设计步骤清楚、 任务明确, 有利于程序员将注意
7、力集中于解决问题的算法设计上, 也利于按工序来组织程序的生产。 过程蓝图中的抽象逻辑结构图不涉及具体物理实现细节, 并且含有丰富的结点语义, 因而具有较高的可读性和可理解性。它可作为=XX程序员的设计工具、 编码工具和程序维护工具。目前,作者已研制出支持=XX过程蓝图的程序设计工具,并成功地用于=XX的程序开发和教学,取得较为满意的效果。实践表明, 可视化的过程设计方法对提高程序开发的效率和质量、 程序的可理解性和可维护性, 对培养程序员正确编程思想和风格、 以及对组织程序的工程化生产都有着重要的影响和作用。( 收稿日期:!“年Y月)参考文献#$谭浩强编著$=程序设计A.C$北京: 清华大学出版社,#II#$N!$W)/-,*$O G;*)J /8 F*,E2D,7 T/5,52/-0 8/* 1*/9*,+ :)M029-MO- 6*2-5 ,-7)0A.C$W)2-95/-::$=$(),5E,-,-J,#IY!K$李振格主编$P/*7,- =XXS;*4/ =XX程序员手册A.C$北京: 北京航空航天大学出版社,#II!$#%