The Infona portal uses cookies, i.e. strings of text saved by a browser on the user's device. The portal can access those files and use them to remember the user's data, such as their chosen settings (screen view, interface language, etc.), or their login data. By using the Infona portal the user accepts automatic saving and using this information for portal operation purposes. More information on the subject can be found in the Privacy Policy and Terms of Service. By closing this window the user confirms that they have read the information on cookie usage, and they accept the privacy policy and the way cookies are used by the portal. You can change the cookie settings in your browser.
This work in progress extends the new mechanical philosophy from science to engineering. Engineering is the practice of organising the design and construction of artifices that satisfy needs in real-world contexts. This work shows how artifices can be described in terms of their mechanisms and composed through their observable phenomena. Typically, the engineering of real system requires descriptions...
Transactional Memory (TM) promises both to provide a scalable mechanism for synchronization in concurrent programs, and to offer ease-of-use benefits to programmers. The most straightforward use of TM in real-world programs is in the form of Transactional Lock Elision (TLE). In TLE, critical sections are attempted as transactions, with a fall-back to a lock if conflicts manifest. Thus TLE expects...
Concurrency is a requirement for much modern software, but the implementation of multithreaded algorithms comes at the risk of errors such as data races.Programmers can prevent data races by documenting and obeying a locking discipline, which indicates which locks must be held in order to access which data.This paper introduces a formal semantics for locking specifications that gives a guarantee of...
The commercial release of byte-addressable persistent memories, such as Intel/Micron 3D XPoint memory, is imminent. Ongoing research has sought mechanisms to allow programmers to implement recoverable data structures in these new main memories. Ensuring recoverability requires programmer control of the order of persistent stores; recent work proposes persistency models as an extension to memory consistency...
A framework to integrate different artificial intelligence and machine learning algorithms is combined with an execution framework to create a powerful cloud computing system development platform. By providing an execution framework and control software that is native to cloud architectures and supports interactivity and time synchronization, the true utility of cloud computing and "big data...
Since more than a few decades now, Software Configuration Management (SCM) systems have played a key role in orchestrating concurrent activities of collaborative developers. These SCM systems help in maintaining consistency of volatile codebases that are being frequently modified in order to accommodate change. Additionally, various Collaborative Software Development (CSD) tools have been developed...
We face a glut of languages for programming distributed software today. However, only a few languages have proven their potential with wider practical use in different domains of computing. We picked two such languages, meant for different domains, to see if they could cross-pollinate and enrich one another. Specifically, we chose SystemJ, a language to program distributed embedded systems, and IEC61499,...
We present a novel approach for design of manufacturing automation systems with formal verification of selected properties based on the use of Globally Asynchronous Locally Synchronous programming language SystemJ and industrial-proof verification tools. By being able to prove properties of the automation control logic that consists of multiple concurrent controllers, represented by FSMs that correspond...
Programable logic controllers (PLCs) are complex embedded systems which are widely used in industry. The formal modeling of PLC system for verification is a rough task. Good verification model should be faithful with the system, and also should have suitable scale because of the state explosion problem of verification. This paper proposes an automatic framework for the construction of verification...
In many reactive systems, programs run cyclically. In each cycle, they check the current status and handle the business for a single step. The business logic has to be blasted to pieces, which violates the way that people are used to. Cyclic programs are difficult to develop and their reliability is hard to guarantee. To tackle these problems, we propose a model-based formal design flow which is more...
High frequency trading (HFT) environments provide technologies that enable algorithmic trading within automated marketplaces. The most prominent example of an HFT environment is within equity trading, where many millions of trades are achieved at a high volume to gain a reasonable cumulative profit. Such environments rely on low latency/high performance technologies to allow trades to react in a timely...
Transformational code generation is at the core of generative software development. It advocates the modeling of common and variable features in software-system families with domain-specific languages, and the specification of transformation compositions for successively refining the abstract domain models towards eventually enriching them with execution semantics. Thus, using code-generation environments,...
The design and implementation of an OpenMP library for Java is described. The library not only encodes OpenMP semantics as open source but also provides a simple platform to enable further experimentation. The Java OpenMP library design was tested against OpenMP C programs using Visual Studio 2010 and gcc.
We define a generic model for finite audio or symbolic musical patterns that structurally encode a rich and abstract synchronization mechanism. This is achieved by distinguishing for each pattern a realization window, describing what the pattern is, from a synchronization window, describing how the pattern can be used. The sequential composition of patterns is defined and studied. An algebra of musical...
The implementation of AUTOSAR runnables as a set of concurrent tasks requires the protection of shared communication and state variables implementing interface and internal ports. In addition, in a model-based design flow, the results of the model validation and verification are retained only if the code implementation preserves the semantic properties of interest. Since AUTOSAR does not support the...
In this paper, we present different modeling and execution frameworks that allow us to efficiently analyze, design and verify complex systems, mainly to cope with the specific concerns of the Real-time and embedded systems (RTE) domain. First we depict a UML /MARTE based methodology for executable RTE systems modeling with a framework and its underlying model transformations required to execute UML...
One of the principal goal of Component-Based Software Engineering (CBSE) is to allow the reuse of components in diverse situations without affecting their codes. To reach this goal, it is necessary to propose approaches to adapt a component with its environment when behavioural mismatches occur during their interactions. In this paper, we present a formal approach based on interface automata to adapt...
Timed failure propagation graph (TFPG) is a directed graph model that represents temporal progression of failure effects in physical systems. In this paper, a distributed diagnosis approach for complex systems is introduced based on the TFPG model settings. In this approach, the system is partitioned into a set of local subsystems each represented by a subgraph of the global system TFPG model. Information...
Concurrent interprocedural program analysis is an undecidable problem. To analysis concurrent interprocedural program, we need understand why the problem is undecidable. [1] proofs the undecidable problem via constructing a instance of PCP problem with three concurrent tasks. This paper constructs an instance of PCP problem of the concurrent interprocedural program analysis problem, but with only...
The main obstacle for the wide acceptance of UML and SysML in the design of electronic systems is due to a major gap in the design flow between UML-based modeling and SystemC-based verification. To overcome this gap, we present an approach developed in the SATURN project which introduces UML profiles for the co-modeling of SystemC and C with code generation support in the context of ARTiSAN Studio®...
Set the date range to filter the displayed results. You can set a starting date, ending date or both. You can enter the dates manually or choose them from the calendar.