首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 125 毫秒
1.
李文军  周晓聪  李师贤 《软件学报》2001,12(10):1555-1561
优先关系是并发系统控制的重要手段,常用于解决并发系统设计中的冲突问题.在有界P/T系统的基础上提出一种动态优先系统,并分别给出它们的交错语义与真并发语义.动态优先系统既可以作为并发与分布式系统的建模工具,也可以作为定义程序设计语言中优先算子的语义基础.最后,基于动态优先系统的概念,为Occam语言扩充了一种动态优先选择算子.  相似文献   

2.
金丽  朱浩 《计算机科学》2015,42(12):243-246, 282
降密策略的主要目的在于确保程序中敏感信息的安全释放。目前,降密策略的安全条件和实施机制的研究主要集中在顺序式程序设计语言,它们不能直接移植到多线程并发环境,原因在于攻击者能利用线程调度的某些性质推导出敏感信息。为此,基于多线程程序设计语言模型和线程调度模型,建立了支持多线程并发环境的二维降密策略,有效确保了在合适的程序点降密合适的信息;建立了多线程并发环境下该降密策略的动态监控机制,并证明了该实施机制的可靠性。  相似文献   

3.
原子性错误是多线程软件开发中常见的并发错误之一。传统的静态分析方法存在误报的可能,动态方法由于利用的信息过少而存在运行效率低下的问题。针对以上问题,设计以动态方法为基础通过计算锁信息,根据锁信息判断是否可能发生原子性错误的方法,据此减少程序的回溯次数和运行时间。通过对一系列开源程序的测试,实验数据证明此方法可以大大提高原子性错误检测的效率。  相似文献   

4.
处理器动态电压频率调节技术,对Linux系统中并发任务的性能产生不同程度的变化,从而影响并发任务计算资源分配的公平性.提出了一种利用动态时间片缩放来优化任务公平性的方法,并基于Linux操作系统任务调度程序,加入动态时间片缩放模块,该模块通过读取CPU性能监控计数器,在线计算时间片缩放系数,并利用该系数对任务时间片长度进行动态缩放.实验表明,这种方法以较小的系统开销为价,极大地提高了Linux中并发任务计算资源分配的公平性.  相似文献   

5.
针对ADA并发多任务程序的特点,文中提出了一个新的ADA程序动态死锁检测方案,并且在这个理论的基础上实现了一个动态死锁测试工具DDTT。此工具能够正确检测ADA我任务程序由于通信关系不当而的死锁。文中详细介绍了动态死锁测试工具DDTT所依赖的全部概念胶判一规则,以及它的工作原理。  相似文献   

6.
针对物联网卡非法流通现象严重、监管溯源工作困难的问题,运用区块链为核心技术,结合物联网技术,设计物联网卡安全流转方法和系统。该系统由区块链系统、信息系统、区块链终端、微信小程序组成,安全流转过程包括卡信息初始录入、转出申请、转入确认和溯源查询。该系统采用智能合约实现流转过程规则,分布式存储信息摘要和物权变更信息,数据库集中式存储物联网卡ICCID号段和信息摘要对应关系,SE-SIM实现终端密钥存储和数字签名。经试点验证和分析,该系统能够保证溯源数据安全可信,兼顾批量并发性能,并提高监管效率。  相似文献   

7.
随着软件系统的日益复杂,软件开发、维护以及进化的大部分工作和主要成本集中在对现有系统的理解上.逆向工程以支持程序理解为目标,通过分析目标系统,产生系统不同形式和不同层次的抽象表示,帮助用户从多个层面和角度理解目标系统.为了开发一种实用的逆向工程工具,文中在深入分析了反射、开放编译、植入等技术的基础上,提出了一种基于反射植入的面向对象程序动态分析机制,其主要思想是通过反射植入软件触发器获取目标系统的动态信息,这些信息由信息收集机制收集整理并保存到Call-Graph,最后从Call-Graph抽象出符合UML标准的动态模型图.通过项目实践发现,这种机制是可行的.  相似文献   

8.
为解决控制系统软件中多重中断导致的系统不稳定性和难以预测性,根据控制系统并发程序的具体特点,设计面向多重中断并发程序的测试工具。测试工具主要包括程序分析器、程序插装器、控制执行器、中断发生器4个部分。采用动态验证的测试方式,以动态偏序化简算法为基础,引入中断处理机制和 sleep集合,将该算法应用于多重中断并发程序的动态监测工具中。该工具可以对原子性违背、数据竞争者两种常见的多重中断并发错误进行有效检测。  相似文献   

9.
一、引言 随着近年来Internet技术在国内的普及,在WWW服务器上进行信息采集与发布成为十分重要的技术。要想使自己的网站能在众多站点中吸引更多的网客,除了信息要不断更新,版面设计要灵活多变外,WWW服务器能提供动态的信息交换能力也是极其重要的。以下本文将讨论在Windows NT Server上采用IIS(Internet Information Server)作为WWW服务器时经常被用来进行动态信息交换的技术。 二、动态信息交换的含义及动态信息交换程序的基本原理 从技术的角度说,凡是在服务器端提供了动态信息交换程序,可以根据浏览者的请求作出响应,回送动态HTML页面的服务器都具有动态信息交换能力。 WWW服务器上的信息交换处理程序工作流程如下,首先程序从WWW服务器获取浏览者提供的信息,然后程序根  相似文献   

10.
基于图文法的并发系统状态测试方法及其实现   总被引:1,自引:1,他引:1  
徐建礼  周龙骧 《软件学报》1996,7(10):587-605
在并发系统的研究和开发中,迫切需要一种能正确有效地描述并发系统的动态进程互联结构、动态进程通信和进程演化行为的形式化方法以及基于这种形式化方法的并发系统动态状态的测试手段.本文介绍一种基于图文法模型的并发系统状态测试方法,该方法与描述并发系统结构和行为的图文法模型相结合,构成了一个并发系统开发支持环境.这一方法可根据对并发系统的状态测试要求,在并发系统的运行期自动跟踪和记录并发系统的运行状态和通信情况,使并发系统的开发者可以实时地得到并发系统的运行状态,或者在并发系统运行结束后重演并发系统的状态变化过程.  相似文献   

11.
General purpose distributed object-oriented environments exist to allow for the efficient construction of client/server software systems. Standard network and distributed systems management environments exist for the efficient operation of heterogeneous networked hardware and software systems. As distributed software systems get larger, the economies of systems development and the economies of software operation demand that we find an efficient way of integrating these two technologies. While the use of standardized distributed systems management for the management of distributed software applications seems reasonable, very little research has been done to confirm this. In this paper, we propose the integration of standardized distributed resource management technologies and distributed application software. In our work we have facilitated this integration using techniques based on mainstream object-oriented dynamic modeling. We will describe our techniques of integration as well as discuss the need for methodical engineered approaches when working in this area.  相似文献   

12.
13.
Object orientation in heterogeneous distributed computing systems   总被引:1,自引:0,他引:1  
Nicol  J.R. Wilkes  C.T. Manola  F.A. 《Computer》1993,26(6):57-67
The basic properties of object orientation and their application to heterogeneous, autonomous, and distributed system to increase interoperability ar examined. It is argued that object-oriented distributed computing is a natural step forward from client-server systems. To support this claim, the differing levels of object-oriented support already found in commercially available distributed systems-in particular, the distributed computing environment of the open software foundation and the Cronus system of Bolt Beranek, Newman (BBN)-are discussed. Emerging object-oriented systems and standards are described, focusing on the convergence toward a least-common-denominator approach to object-oriented distributed computing embodied by the object management group's common object request broker architecture  相似文献   

14.
An object-oriented multilevel model of computation is used to discuss recoverability and crash resistance issues in distributed systems. Of particular importance are the issues that are raised when recoverability and crash resistance properties are desired from objects whose concrete representations are distributed over several nodes. The execution of a program at a node of the system can give rise to a hierarchy of processes executing various parts of the program at different nodes. Recoverability and crash resistance properties are needed to ensure that such a group of processes leave the system state consistent despite faults in the system.  相似文献   

15.
基于反射植入的面向对象程序动态分析机制   总被引:2,自引:0,他引:2  
柴晓前  陈平 《微机发展》2005,15(5):11-13,17
随着软件系统的日益复杂,软件开发、维护以及进化的大部分工作和主要成本集中在对现有系统的理解上。逆向工程以支持程序理解为目标,通过分析目标系统,产生系统不同形式和不同层次的抽象表示,帮助用户从多个层面和角度理解目标系统。为了开发一种实用的逆向工程工具,文中在深入分析了反射、开放编译、植入等技术的基础上,提出了一种基于反射植入的面向对象程序动态分析机制,其主要思想是通过反射植入软件触发器获取目标系统的动态信息,这些信息由信息收集机制收集整理并保存到Cau-Graph,最后从Cau-Graph抽象出符合UML标准的动态模型图。通过项目实践发现,这种机制是可行的。  相似文献   

16.
Increasing trends towards adaptive, distributed, generative and pervasive software have made object-oriented dynamically typed languages become increasingly popular. These languages offer dynamic software evolution by means of reflection, facilitating the development of dynamic systems. Unfortunately, this dynamism commonly imposes a runtime performance penalty. In this paper, we describe how to extend a production JIT-compiler virtual machine to support runtime object-oriented structural reflection offered by many dynamic languages. Our approach improves runtime performance of dynamic languages running on statically typed virtual machines. At the same time, existing statically typed languages are still supported by the virtual machine.We have extended the .Net platform with runtime structural reflection adding prototype-based object-oriented semantics to the statically typed class-based model of .Net, supporting both kinds of programming languages. The assessment of runtime performance and memory consumption has revealed that a direct support of structural reflection in a production JIT-based virtual machine designed for statically typed languages provides a significant performance improvement for dynamically typed languages.  相似文献   

17.
AR Tripathi  T Noonan 《Software》1998,28(1):23-48
This paper describes the design of an RPC system for building object-oriented distributed software systems. The general requirements for such a system are to provide mechanisms for supporting inheritance, polymorphism, dynamic binding, and modular development in implementing distributed software systems. This paper presents the functionalities of this RPC system to support these general requirements. It also briefly describes the experiences with two previous versions of this system and how they led to the design of the final system. This system was implemented as a part of the programming environment of the Nexus distributed operating system. © 1998 John Wiley & Sons, Ltd.  相似文献   

18.
This paper presents an object-oriented, Java-like core language with primitives for distributed programming and explicit code mobility. We apply our formulation to prove the correctness of several optimisations for distributed programs. Our language captures crucial but often hidden aspects of distributed object-oriented programming, including object serialisation, dynamic class downloading and remote method invocation. It is defined in terms of an operational semantics that concisely models the behaviour of distributed programs using machinery from calculi of mobile processes. Type safety is established using invariant properties for distributed runtime configurations. We argue that primitives for explicit code mobility offer a programmer fine-grained control of type-safe code distribution, which is crucial for improving the performance and safety of distributed object-oriented applications.  相似文献   

19.
The object-oriented paradigm in software engineering provides support for the construction of modular and reusable program components and is attractive for the design of large and complex distributed systems. Reachability analysis is an important and well-known tool for static analysis of critical properties in concurrent programs, such as deadlock freedom. It involves the systematic enumeration of all possible global states of program execution and provides the same level of assurance for properties of the synchronization structure in concurrent programs, such as formal verification. However, direct application of traditional reachability analysis to concurrent object-oriented programs has many problems, such as incomplete analysis for reusable classes (not safe) and increased computational complexity (not efficient). We propose a novel technique called apportioning, for safe and efficient reachability analysis of concurrent object-oriented programs, that is based upon a simple but powerful idea of classification of program analysis points as local (having influence within a class) and global (having possible influence outside a class). We have developed a number of apportioning-based algorithms, having different degrees of safety and efficiency. We present the details of one of these algorithms, formally show its safety for an appropriate class of programs, and present experimental results to demonstrate its efficiency for various examples  相似文献   

20.
Early distributed shared memory systems used the shared virtual memory approach with fixed-size pages, usually 1–8 KB. As this does not match the variable granularity of sharing of most programs, recently the emphasis has shifted to distributed object-oriented systems. With small object sizes, the overhead of inter-process communication could be large enough to make a distributed program too inefficient for practical use. To support research in this area, we have implemented a user-level distributed programming testbed, DIPC, that provides shared memory, semaphores and barriers. We develop a computationally-efficient model of distributed shared memory using approximate queueing network techniques. The model can accommodate several algorithms including central server, migration and read-replication. These models have been carefully validated against measurements on our distributed shared memory testbed. Results indicate that for large granularities of sharing and small access bursts, central server performs better than both migration and read-replication algorithms. Read-replication performs better than migration for small and moderate object sizes for applications with high degree of read-sharing and migration performs better than read-replication for large object sizes for applications having moderate degree of read-sharing.  相似文献   

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

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