首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 93 毫秒
1.
在开发应用程序过程中,除了要根据具体需要开发自己的功能模块以外,可能还会用到一些其他的应用程序,如字处理程序Notepsd.画图工具Palntbrush等,在VB设计中,人们常常会用Shell函数进行调用,但这种方式有一个缺点,就是在重复调用时,同样的应用程序可能会重复运行,造成计算机资源的极大浪费,以Notepad为例,重复调用会同时运行多个Notenad文档。尽管我们可以用一个变量保存Shell运行程序的任务标识,但其他程序退出后,此变量不会发生相应变化,因此,我们不能跟踪其他应用程序是否在运行,为了克服这个缺点,笔者在实践中利…  相似文献   

2.
本文以利用外部函数实现播放音乐的实例,来展示PowerBuilder对API函数的调用方法。外部函数是用其他语言编写并存储在动态链接库中的函数,它在运行时被动态地装入和链接,并且可被多个应用程序共享。对于外部函数,在PowerBuilder中直接调用是不能识别的。在使用外部函数之前,必须先对其进行声明。  相似文献   

3.
在中间件中支持用户自定义连接子   总被引:5,自引:0,他引:5  
曹东刚  梅宏  曹建农 《软件学报》2005,16(8):1378-1385
连接子是软件体系结构设计阶段的重要概念,但在运行阶段却缺少显式的支持.描述了在J2EE应用服务器PKUAS中显式支持用户自定义连接子的机制.PKUAS连接子模型借鉴Aspect的思想,连接子由若干Advice组成Advice对各种交互约束进行建模,Advice在运行时刻被动态调用.连接子在部署时刻由PKUAS动态生成并发布到名字服务中,由客户端在运行时刻下载到本地加载,负责构件交互.运行时刻的连接子可以和设计阶段的连接子相对应,从而保持概念的连贯性和一致性,体现了良好的关注点分离原则.  相似文献   

4.
于斌  陆旭  田聪  段振华  张南 《软件学报》2022,33(8):2755-2768
作为轻量级的高可靠嵌入式数据库, SQLite3已被广泛应用于航空航天和操作系统等多个安全攸关领域, 其提供了丰富灵活API函数以支持用户快速实现项目构建.然而, 不正确的API函数调用序列会导致严重后果, 包括运行错误、内存泄露和程序崩溃等.为了高效准确地监控SQLite3数据库API函数的正确调用情况, 本文提出了基于多核系统的并行运行时验证方法.该方法首先分析API函数文档, 自动挖掘相关API调用序列规约描述, 辅助人工将其形式化表达为具有完全正则表达能力的命题投影时序逻辑公式; 然后在程序运行时, 采用多任务调度策略, 将程序执行产生的状态序列分割并对不同片段并行验证.实验结果表明, 该方法能够发现调用SQLite3数据库API函数的30个被验证C程序中, 违背API函数调用序列规约的达16个.另外, 与传统串行运行时验证方法的对比实验表明, 本文提出的并行运行时验证方法能够有效提高多核系统的验证效率.  相似文献   

5.
王利  郭巧  张君  冯文峰 《计算机工程》2005,31(9):11-13,166
现有的SNMP为保证对外提供一个更为开放、统一的接口,并没有限制变量绑定,协议栈大都按PDU中的变量顺序依次调用底层函数,这种调用往往是重复低效的.该文在不破坏协议的前提下,提出了一个基于MIB-interface的健康映射的设计方案,将Agent和底层间的接口透明化,并以接口函数列表为主处理流程,可以避免无谓的重复调用,实现了一个高效的SNMP Agent.  相似文献   

6.
MS-DOS 2.0是单任务、单用户操作系统。但是,它可以象主程序调用子程序那样,在程序执行过程中调用另一程序(注意:不是子程序,而是程序,比如COM型或EXE型程序)。被调用程序称为子过程,调用程序称为母过程。母过程启动子过程后,要待子过程结束后,才能继续运行。子过程运行中,也可以调用另一程序(称之为孙过程)。子过程启动孙过程后,也要待孙过程结束后,才能继续执行。MS-DOS在同一时刻,两个或两个以上的过程不能同时并行运行。  相似文献   

7.
由于指导语句动态嵌套与绑定规则的存在,OpenMP程序中线程的一些上下文只能在运行时刻才能完全确定.然而,通过编译时刻的静态分析可以部分确定指导语句的嵌套类型,这些信息可以用于指导后续的编译与优化.由于函数调用的存在,嵌套与绑定常常会跨越过程边界,除了通常的局部和全局分析之外,还需要过程间分析的支持.通过在通常的过程间分析的基础上附加信息,可以使得嵌套类型信息在过程调用图中进行传播.将这些全局信息与过程内的局部信息结合起来,就可以在编译时刻确定语句的嵌套类型.结果表明,编译时刻的嵌套类型分析可以有效地确定通常的科学与工程计算程序中指导语句的嵌套类型,基于嵌套类型的翻译与优化可以同时减少运行时开销和目标代码长度.  相似文献   

8.
由于析构函数的调用多为隐式的,因此,在一个应用程序中,尤其是在程序中包含聚集的情况下,某个类的析构函数究竟被调用过几次?每次调用又是针对哪个对象的?便成了2个值得探讨的问题.在此重点分析一个类的析构函数的调用情况,并结合具体例子加以说明.  相似文献   

9.
基于遗传算法的公交智能排班系统应用研究   总被引:1,自引:0,他引:1  
研究城市公交车调度优化问题,根据公交车辆排班和调度运行要求,兼顾到乘客和公交公司的利益,为优化服务目标,建立了基于遗传算法的公交智能排班调度模型.采用以发车时刻为变量的真实值编码方法,在构造适应度函数时,用惩罚函数法将多种约束条件加到目标函数上,简化了计算量.进行仿真实验,结果证明,利用改进的遗传算法求解,可以得到不均匀发车优化时刻表,并能为公交智能排班优化提供较大搜索空间,提高了实际运行效率.  相似文献   

10.
随着物联网的广泛应用,如何有效实现轻量级密码算法成为近年的研究热点。对2011年提出的TWINE加密算法进行了硬件优化实现,相同的轮运算只实现一次,采用重复调用方式完成。TWINE算法总共有36轮运算,其中前35轮运算结构相同,可以重复调用实现,而第36轮相比前35轮在结构上少了块混淆,因此原始算法最多只能进行35轮重复调用。直接进行36轮循环调用运算,同时在36轮循环运算完成后构造一个块混淆逆运算,运算一次块混淆逆运算即可使输出密文正确。这样使TWINE最后的第36轮不必重新实现,而是直接复用前面可重复轮函数模块,只需增加一个比原始算法最后一轮运算相对简单的块混淆逆运算。下载到FPGA上的实验结果表明,优化后的TWINE密码算法在面积上减少了2204个Slices,系统速率提高了5倍。  相似文献   

11.
12.
分析和比较了当前主流的性能分析工具,针对这些工具在嵌入式环境中进行性能分析的不足,提出并设计出一种无陷入插装方式性能分析模型。通过替换函数入口处的第一条指令并在转入模块内执行函数第一条指令实现快速无陷入统计方式,对函数执行时信息进行统计。实验表明,在存在大量递归调用和函数调用非常频繁的情况下,使用无陷入方式使性能分析的效率和准确性得到很大提升。  相似文献   

13.
This paper discusses the problem of allocating storage for the activation records of procedure calls within a system of parallel processes. A compile time storage allocation scheme is given, which determines the relative address within the memory segment of a process for the activation records of all procedures called by the process. This facilitates the generation of an efficient run-time code. The allocation scheme applies to systems in which data and procedures can be shared among several processes. However, recursive procedure calls are not supported.  相似文献   

14.
Load balancing involves assigning to each processor work proportional to its performance, thereby minimizing the execution time of a program. Although static load balancing can solve many problems (e.g., those caused by processor heterogeneity and nonuniform loops) for most regular applications, the transient external load due to multiple users on a network of workstations necessitates a dynamic approach to load balancing. In this paper we show that different load balancing schemes are best for different applications under varying program and system parameters. Therefore, application-driven customized dynamic load balancing becomes essential for good performance. We present a hybrid compile-time and run-time modeling and decision process which selects (customizes) the best scheme, along with automatic generation of parallel code with calls to a run-time library for load balancing.  相似文献   

15.
Fuzzing测试是一种基于缺陷注入的自动软件测试技术,近几年来广泛应用于软件测试、安全漏洞挖掘等领域.当Fuzzing测试出现异常时,需要人工逆向精确定位触发漏洞的代码位置,分析的工作量大,而且分析效率较为低下.论文以现有二进制比较技术为基础,根据二进制目标软件中代码运行的依赖关系,提出一种针对执行记录的两阶段比较算法,在函数级别和基本块级别上对文件正常执行和出现异常的跟踪记录内容进行比较,得到所有相同和不同的指令执行序列.依托指令序列信息,可以有效辅助人工分析,大大降低分析的工作量,提高分析效率.  相似文献   

16.
GridMD is a C++ class library intended for constructing simulation applications and running them in distributed environments. The library abstracts away from details of distributed environments, so that almost no knowledge of distributed computing is required from a physicist working with the library. She or he just uses GridMD function calls inside the application C++ code to perform parameter sweeps or other tasks that can be distributed at run-time. In this paper we briefly review the GridMD architecture. We also describe the job manager component which submits jobs to a remote system. The C++ source code of our PBS job manager may be used as a standalone tool and it is freely available as well as the full library source code. As illustrative examples we use simple expression evaluation codes and the real application of Coulomb cluster explosion simulation by Molecular Dynamics.  相似文献   

17.
Remote-procedure calls (RPCs) allow distributed, high-level language programs to communicate and synchronize in the usual manner via subprogram calls. One of the great challenges in RPC research is to preserve the traditiional call semantics despite the distribution and heterogeneity of the new environment. The main contribution of SUPRA-RPC is in addressing the passing of subprograms as RPC parameters. In doing so, SUPRA overcomes a number of technical difficulties, stemming from scoping, side-effects and other sources. Since supporting subprogram RPC parameters is harder than supporting non-subprogram RPC parameters, the three (of six) components of the SUPRA architecture extend in novel ways the traditional functionality found in their counterparts in other RPC systems. The SUPRA stub generator extracts information not only from remote entry interfaces, but from any scope potentially referenced by a subprogram passed as an RPC parameter. In addition to the usual call- and accept-stubs and the marshaling and unmarshaling routines, the generator constructs out-of-scope access stubs, callback' and callback-handling-stubs, and modified parameter subprograms and others. The SUPRA run-time support manages a run-time symbol table to keep track of referencing environments and out-of-scope objects. When an out-of-scope object is unavailable for access or execution on the server, the object is reached by a synchronous, ‘under-the-covers’ callback. The SUPRA process management supports servers with independent threads of control, manages (possibly nested) callbacks and pools of callback handler threads, and maintains correct identification of thread-initiated calls or callbacks. A SUPRA prototype has been implemented on Sun Unix workstations. The prototype supports C, C++ and CommonLisp programs. A prototype graphical demonstration has been implemented as well, that represents RPC concepts in terms of common life objects and situations.  相似文献   

18.
一种层次化的恶意代码行为分析方法   总被引:1,自引:0,他引:1  
黄茜  武东英  孙晓妍 《计算机应用》2010,30(4):1048-1052
提出一种层次化的恶意代码行为分析方法,首先根据程序运行时的系统调用序列获取行为信息,然后分析其行为意图并作危害性评估。在行为检测部分,设计了行为检测算法,利用系统调用函数及其参数信息识别程序行为。在行为分析部分,总结了各种恶意行为对计算机系统造成的危害,利用攻击树原理建立恶意行为危害评估模型,并给出恶意代码危害性计算方法。  相似文献   

19.
This paper describes an applicative order graph reducer which under interactive control performs high-level program transformations that are governed by the reduction semantics of a full-fledged untyped γ-calculus. To do so with competitive speed, high-level functional programs are by a pre-processor reversibly converted into graph representations of γ-terms. Its subterms are closed by the abstraction of relatively free variables only to the extent absolutely necessary to avoid the complexity of full β-reductions at run-time. Processing these γ-terms is based on high-level interpretation which exploits the simplicity and efficiency of naive graph pointer substitutions when reducing function calls. Partially or completely reduced graphs are by a post-processor re-converted into high-level programs. Full β-reductions are only employed by the pre- and post-processor to maintain correct binding levels when abstracting free variables from γ-terms and when undoing these abstractions or reducing partial applications left over as closures, respectively.  相似文献   

20.
Mobile devices with 3G/4G networking often waste energy in the so-called “tail time” during which the radio is kept on even though no communication is occurring. Prior work has proposed policies to reduce this energy waste by batching network requests. However, this work is challenging to apply in practice due to a lack of mechanisms. In response, we have developed DelayDroid, a framework that allows a developer to add the needed policy to existing, unmodified Android applications (apps) with no human effort as well as no SDK/OS changes. This allows such prior work (as well as our own policies) to be readily deployed and evaluated. The DelayDroid compile-time uses static analysis and bytecode refactoring to identify method calls that send network requests and modify such calls to detour them to the DelayDroid run-time. The run-time then applies a policy to batch them, avoiding the tail time energy waste. DelayDroid also includes a cross-app communication mechanism that supports policies that optimize across multiple apps running together, and we propose a policy that does so. We evaluated the correctness and universality of the DelayDroid mechanisms on 14 popular Android apps chosen from the Google App Store. To evaluate our proposed policy, we studied three DelayDroid-enabled apps (weather forecasting, email client, and news client) running together, finding that the DelayDroid mechanisms combined with our policy can reduce 3G/4G tail time energy waste by 36%.  相似文献   

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

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