首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 187 毫秒
1.
随着对交互和高效利用资源的需求的增加,用户渴望与远程多通道图形应用程序进行实时可视化和交互.由于大多数此类应用程序通过除鼠标和键盘外的其他设备进行交互,因此必须支持这些设备的远程交互.目前,这种远程交互可以通过修改应用程序的源代码实现.当源代码不可访问时,该方法不可行.提出一个基于函数调用截获的、轻量级的分布式框架,在不修改应用程序的源代码的情况下实现这些设备的远程交互.基于该框架,实现了分布式DirectInput系统.实验结果表明通过集成该系统与远程交互系统,在局域网上,用户能对远程的、由手柄驱动的多通道图形应用程序进行实时可视化和交互.  相似文献   

2.
采用并行计算的手段,数值模拟程序可以在高性能计算环境下获得数值求解加速,但在短时间内输出的大量、多块的计算结果,也为研究者的数据分析造成了困难。为此,本文介绍了一个针对并行计算程序的远程跟踪可视化系统,它适合运行于并行分布式计算环境,用户只需简单改造数值程序,即可通过远程终端对运行期的程序进行自动计算跟踪和交互可视化,而跟踪系统的优化设计则使数值程序的远程交互延迟得到有效控制。  相似文献   

3.
目前传统的Web应用程序访问数据库的方法是SQL代码嵌入在domain/business类中,一旦系统出现改动,就要修改源代码。目前比较通用的方法是SQL代码写在独立的一个或多个数据类中或在存储过程中,这种方法能压缩源代码。提出了通用数据类的概念。采用通用数据类,使程序开发人员摆脱开SQL和事务,达到了快速开发的目的。利用ADO.NET和XML技术实现了数据访问层的思想,并实现了事务集中处理。  相似文献   

4.
基于GPU的异构计算逐渐成为主流计算方法,但限于科学计算编程的历史发展,大量的数值计算软件仍以Fortran语言实现.为了提高计算速度,大量的软件需要移植为CUDA C,但人工实现程序移植是一项浩繁的工程.若能实现从Fortran到CUDA C的自动转换,可以极大的提高程序开发效率.本文设计了将Fortran转换为CU...  相似文献   

5.
将Fortran控制台应用程序制作成Fortran动态链接库文件,使用C#语言开发软件界面并调用Fortran DLL实现混合编程。给出了C#语言和Fortran语言混合编程时需要注意的要点。结合示例介绍了一种利用txt文件快速实现C#和Fortran混合编程的方法。该方法只需要对Fortran源代码做较小的修改就能有效地实现两种语言的混合编程,此方法对其他不同语言之间的混合编程提供了一种参考思路。  相似文献   

6.
每天,全世界各个角落都有共享软件开发者通过互联网联手开发开放源代码软件。在合作开发领域亦有相同的趋势;大公司们利用各自的在物理地域上彼此远隔千里的分布式开发小组一起来开发软件项目。而此情况在跨公司的合作项目中也更常见:在某个庞大的软件项目上,系统集成总承包商与分承包商之间同样能通过互联网紧密联系,协同工作。 这些在地理上分散的开发组具有相同的源代码管理需求。当开发组需要对设计文档、测试案例、软件规范以及组成项目的源代码进行操作时,他们会无一遗漏地参照其他开发者的修改情况。因此,任何修改都必须被跟踪记录下来以便使错误的或尝试性的修改可以十分容易地更正。跟踪操作生成的是关于文件内容如何随时间变化的一组记录——这对于以后修改生成符合软件最初设计原则的版本而言是很有价值的。项目中已完成的和运行稳定的程序也同时被跟踪记录在案,以便能迅速地被重新生成,同时便于在新版本中加入对某些Bug的修改。所有这些管理性能全部都由SCM(Software Configuration ManagementSystem,软件设置管理系统)提供。 SCM系统使用类似于图书馆的管理机制。软件项目开始之初,所有开发文件在SCM的知识库中都是“登记在案”状态。当需要对某个文件进行修改时,必须“申请借出”。当修改  相似文献   

7.
提出并实现了基于AOP技术的通用线程监控平台.借助AOP的需求空间分离实现技术,使用该平台的原系统不必事先具有监控能力,该平台可以在不手动改变系统源代码的情况下通过工具自动植入系统内部,为系统注入监控功能,实现对运行线程信息的监视和对指定线程运行速度的变换,实现对整个系统运行行为的控制.  相似文献   

8.
多线程交互学习软件系统源代码需要等价转化,明确依赖关系,以实现精准高效的安全漏洞检测,提升系统运行的可靠性与安全性.运用词法与语法分析器分析待测系统源代码,经AST转化器遍历后等价转化源代码为IR,流分析IR后得到IR内语句间的依赖关系信息,依据所得依赖信息生成依赖图,输入到安全漏洞静态检测算法,经静态检测获取到安全漏...  相似文献   

9.
面向方面编程与构件技术的结合是开发更加可复用、可扩展的软件的新方法,不同于传统的通过修改系统架构以及引入新的编程语言实现二者的结合。提出一种将文件划分为构件与方面,利用XML语言描述构件与方面的编织关系,结合构件客器技术与面向方面编程的方法实现构件与方面的运行时编织的方法。新的方法既可以简单方便地描述方面,又有效地扩展了现有系统,原有构件不需要任何改动,就可以直接实现同方面的编织,井确保比较高的运行效率。同时该方法在CAR上的软件工程实践也作了描述。  相似文献   

10.
论述了VC++与Fortran混合编程方法,重点介绍了动态链接库的方法。阐明了VC++与Fortran混合编程要解决的问题,以及地质统计学反演算法原理。探讨了VC++调用Fortran动态链接库的方法,和将已有Fortran程序修改为动态链接库的方法。通过采用VC++与Fortran混合编程,实现了地质统计学反演算法。利用已有的Fortran程序,实现了代码复用,节省了程序开发时间。  相似文献   

11.
《Computers & Geosciences》2003,29(9):1091-1100
This paper introduces a hybrid method to update legacy programs, thus combining the visual interactivity of window programs with the qualities of legacy code. Because migration from C, Fortran or Pascal to another programming language is very time-consuming and error-prone, it can be more beneficial to integrate legacy executable files into a visual interactive window shell. Such a shell program is described in this work. Its main part is a multi-file manager with an executable file as the main building block and MyFile as the base class of the resulting UML model. The window shell chosen here runs under the Microsoft Windows 9x/NT/2k/XP operating systems, and the program language to implement the designed shell is Visual Basic. The final shell program was tested with different types of executable files for earth satellite orbit determination, tidal acceleration computation and deformation analysis.  相似文献   

12.
程序的正确性验证一直以来都是计算机科学中的一个挑战性问题,抽象解释理论为程序静态分析提供了一个通用框架,可以在编译时自动地推导程序的动态性质。基于抽象解释的数值程序分析可以自动推导程序中数值变量间的不变式关系,这对于编译优化、程序错误检查至关重要。本文建立并实现了一个面向C和Fortran程序并支持过程间分析的数值程序分析框架和工具,C或Fortran源程序经过预处理后转化为具有统一格式的中间表示形式,然后基于该中间表示抽取与源程序语义等价的语义等式,最后在该语义等式上进行不动点迭代计算从而得到程序不变式。在此基础上,本文还对数组等复杂语法结构进行了建模和抽象。实验结果表明,该工具具有较高的可扩展性、精度,并能够处理大部分因数组的使用而带来的程序分析上的问题。  相似文献   

13.
Fortran源程序在WindowsOOP环境下的应用   总被引:5,自引:1,他引:4  
探讨了Windows下高效地使用原DOS系统下的Fortran计算程序代码技术,并通过一个具体的例子详细地介绍了调用约定的属性设置和参数调用的方法,为Fortran源程序在面向对象开发环境中的应用提供了一种切实有效的途径。  相似文献   

14.
A majority of scientific and engineering applications in aerodynamics and solid mechanics are written in Fortran. To reduce the high cost of software development, NASA researchers reuse most of the legacy Fortran codes instead of developing them from scratch in the numerical propulsion system simulation project. In this paper, we present an efficient methodology for integrating legacy applications written in Fortran into a distributed object framework. Issues and strategies regarding the conversion and wrapping of Fortran codes into common object request broker architecture objects are discussed. Fortran codes are modified as little as possible when they are decomposed into modules and wrapped as objects. We implement a wrapper generator which takes the Fortran application as input and generates the C++ wrapper files and interface definition language file. Tedious programming tasks for wrapping the codes can therefore be reduced.  相似文献   

15.
There are many legacy code applications that cannot be run in a Grid environment without significant modification. To avoid re-engineering of legacy code, we developed the Grid Execution Management for Legacy Code Architecture (GEMLCA) that enables deployment of legacy code applications as Grid services. GEMLCA implements a general architecture for deploying legacy applications as Grid services without the need for code re-engineering, or even access to the source files. With GEMLCA, only a user-level understanding is required to run a legacy application from a standard Grid service client. The legacy code runs in its native environment using the GEMLCA resource layer to communicate with the Grid client, thus hiding the legacy nature of the application and presenting it as a Grid service. GEMLCA as a Grid service layer supports submitting jobs, getting their results and status back. The paper introduces the GEMLCA concept, its life cycle, design and implementation. It also presents as an example a legacy simulation code that has been successfully transformed into a Grid service using GEMLCA.  相似文献   

16.
An efficient parallel scheme is proposed for performing direct numerical simulation (DNS) of two-dimensional Navier-Stokes turbulence at high Reynolds numbers. We illustrate the resulting numerical code by displaying relaxation to states close to those that have been predicted by statistical-mechanical methods which start from ideal (Euler) fluid mechanics. The validation of these predictions by DNS requires unusually long computation times on single-cpu workstations, and suggests the use of parallel computation. The performance of our MPI Fortran 90 code on the SGI Origin 3800 is reported, together with its comparison with another parallel method. A few computational results that illustrate tests of the statistical-mechanical predictions are presented.  相似文献   

17.
The computation of gradients via the reverse mode of algorithmic differentiation is a valuable technique in modelling many science and engineering applications. This technique is particularly efficient when implemented as a source transformation, as it may use static data-flow analysis. However, some features of the major programming languages are detrimental to the efficiency of the transformed source code. This paper provides an overview of the most common problem scenarios and estimates the cost overhead incurred by using the respective language feature or employing certain common patterns. An understanding of these topics is crucial for the efficiency or even feasibility of adjoint computations, particularly for large-scale numerical simulations, for example, in geosciences. While one cannot hope to cover all effects observable with a given programming language in a given run time environment, the paper aims at providing a reasonable guide for the users of C/C++ and Fortran source transformation tools for algorithmic differentiation.  相似文献   

18.
The process of understanding a source code in a high-level programming language involves complex computation. Given a piece of legacy code and a library of program plan templates, understanding the code corresponds to building mappings from parts of the source code to particular program plans. These mappings could be used to assist an expert in reverse engineering legacy code, to facilitate software reuse, or to assist in the translation of the source into another programming language. In this paper we present a model of program understanding using constraint satisfaction. Within this model we intelligently compose a partial global picture of the source program code by transforming knowledge about the problem domain and the program itself into sets of constraints. We then systematically study different search algorithms and empirically evaluate their performance. One advantage of the constraint satisfaction model is its generality; many previous attempts in program understanding could now be cast under the same spectrum of heuristics, and thus be readily compared. Another advantage is the improvement in search efficiency using various heuristic techniques in constraint satisfaction.  相似文献   

19.
Gray  J. Lin  Y. Zhang  J. 《Computer》2006,39(2):51-58
The escalating complexity of software and system models is making it difficult to rapidly explore the effects of a design decision. Automating such exploration with model transformation and aspect-oriented techniques can improve both productivity and model quality. The combination of model transformation and aspect weaving provides a powerful technology for rapidly transforming legacy systems from the high-level properties that models describe. Further, by applying aspect-oriented techniques and program transformation, small changes at the modeling level can trigger very large transformations at the source code level. Thus, model engineers can explore alternative configurations using an aspect weaver targeted for modeling tools and then use the models to generate program transformation rules for adapting legacy source code on a wide scale.  相似文献   

20.
An object-oriented PDE solver framework is a library of software components for numerical solution of partial differential equations, where each component is an object or a group of objects. Given such a framework, the construction of a particular PDE solver consists in selecting and combining suitable components. The present paper is focused on tengo [Åhlander K, Otto K. Software design for finite difference schemes based on index notation. Future Generation Comput Syst 2006;22:102–9], an object-oriented PDE solver framework for finite difference methods on structured grids, using tensor abstractions for convenient representation of numerical operators.

Here, the design of tengo is extended to address curvilinear coordinates. These extensions to the tengo object model are the result of applying object-oriented analysis and design combined with feature modeling. The framework was implemented in Fortran 90/95, using standard techniques for emulating object-oriented constructs in that language.

The new parts of the framework were assessed with respect to programming effort and execution time. It is shown that the programming effort required for construction and modification of PDE solvers on curvilinear grids is significantly reduced through the introduction of the new framework components. Moreover, for the test case of an underwater acoustics computation, there was no significant difference in execution time between the framework based code and a special purpose Fortran 90 code for the same application.  相似文献   


设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号