This paper discusses the implementation of the real-time processes of real-time Process Algebra (RTPA) using real-time java. The difficulty in implementing real-time software from formal specifications comes from the ...
详细信息
ISBN:
(纸本)9781424400379
This paper discusses the implementation of the real-time processes of real-time Process Algebra (RTPA) using real-time java. The difficulty in implementing real-time software from formal specifications comes from the fact that some real-time features expressed using a formal specification language cannot be easily transformed into a programming language. The paper shows how a combination of a real-time support library for RTPA (RTPASupportLib) and the recently developed extensions to real-time java can overcome some of these difficulties. The strategies and techniques employed in implementing RTPA real-time features such as concurrency, interleaving, and interrupt/event/time-driven dispatching of real-time processes are presented. A number of case studies on the implementation of RTPA real-time features show that the approach is a feasible one.
java is an object oriented programming language introduced by Sun Microsystems in 1995. From this date, java has received a high interest from both industry actors and researchers. java presents many benefits such as ...
详细信息
ISBN:
(纸本)9781450316880
java is an object oriented programming language introduced by Sun Microsystems in 1995. From this date, java has received a high interest from both industry actors and researchers. java presents many benefits such as reliability of code, portability because its neutral architecture, and security in distributed environments, which leads it a privileged technology to develop embedded and distributed applications. Even though java has issues as threads and automatic garbage collection, it has problems regarding its use in real-time systems, which must be solved. Since 1997 several research works has been focused on the limits of the java language and its execution environment to seek the possibility for real-time technology using java. This paper outlines and discusses the investigated issues and the developed supporting technology that allows the construction of real-time systems using java.
This paper presents a real-time java hardware and software system for use in embedded applications. The system includes a multithreaded java microcontroller an adapted java Virtual Machine (JVM) and an extended Applic...
详细信息
ISBN:
(纸本)0769515584
This paper presents a real-time java hardware and software system for use in embedded applications. The system includes a multithreaded java microcontroller an adapted java Virtual Machine (JVM) and an extended Application Programming Interface (API). The microcontroller core is designed with a multithreaded pipeline and hardware support for real-time scheduling algorithms. The java Virtual Machine consists of trap routines for complex java byte-codes, a real-time garbage collection and a class loader for creating real-time data structures. On a higher level, the Application Programming Interface provides easy real-time thread management and access to hardware components like serial interfaces and timer/counter units.
For many, java is the antithesis of a high-integrity programming language. Its combination of object-oriented programming features, its automatic garbage collection, and its poor support for real-time multi-threading ...
详细信息
ISBN:
(纸本)9781581135992
For many, java is the antithesis of a high-integrity programming language. Its combination of object-oriented programming features, its automatic garbage collection, and its poor support for real-time multi-threading are all seen as particular impediments. The real-time Specification for java has introduced many new features that help in, the real-time. domain. However, the expressive power of these features means that very complex programming models can be created, necessitating complexity in the supporting real-time virtual machine. Consequently, java, with the real-time extensions as they stand, seems too complex for confident use in high-integrity systems. This paper presents a java profile for-the development of software-intensive high-integrity real-time systems. This restricted programming model removes language features with high overheads and complex semantics, on which it is hard to perform timing and functional analyses. The profile fits within the J2ME framework and is consistent with well-known guidelines for high-integrity software development, such as those defined by the U.S. Nuclear Regulatory Commission. Copyright (c) 2005 John Wiley & Sons, Ltd.
Advances in operating systems and languages have brought the ideal of reasonably-bounded execution time closer to developers who need such assurances for real-time and embedded systems applications. Recently, extensio...
详细信息
Advances in operating systems and languages have brought the ideal of reasonably-bounded execution time closer to developers who need such assurances for real-time and embedded systems applications. Recently, extensions to the java libraries and virtual machine have been proposed in an emerging standard, which provides for specification of release times, execution costs, and deadlines for a restricted class of threads. To use such features, the code executing in the thread must never reference storage that could be subject to garbage collection. The new standard provides for region-like, stack-allocated areas (scopes) of storage that are ignored by garbage collection and deallocated en masse. It now falls to the developer to adapt ordinary java code to use the real-time java scoped memory regions. Unfortunately, it is difficult to determine manually how to map object instantiations to scopes. Moreover, if ordinary java code is modified to effect instantiations;in scopes, the resulting code is difficult to read, maintain, and reuse. Static analysis can yield scopes that are correct across all program executions, but such analysis is necessarily conservative in nature. If too many objects appear to live forever under such analysis, then developers cannot rely on static analysis alone to form reasonable scopes. In this paper we present an approach for automatically determining appropriate storage scopes for java objects, based on dynamic analysis observed object lifetimes and object referencing behavior. While such analysis is perhaps unsafe across all program executions, our analysis can be coupled with static analysis to bracket object lifetimes, with the truth lying somewhere in between. We provide experimental results that show the memory regions discovered by our technique.
This paper reports on our experience with the implementation of the real-time Specification for java on the Ovm open source java virtual machine. We describe the architecture and main design decisions involved in impl...
详细信息
This paper reports on our experience with the implementation of the real-time Specification for java on the Ovm open source java virtual machine. We describe the architecture and main design decisions involved in implementing real-time java on Ovm. We present the first use of real-time java in avionics in the context of control software for a ScanEagle Unmanned Aerial Vehicle.
The IEC 61499 standard enhances the 1131 Function Block model to exploit the advantages of the object technology in the industrial automation domain. Several prototype development environments have been developed by v...
详细信息
The IEC 61499 standard enhances the 1131 Function Block model to exploit the advantages of the object technology in the industrial automation domain. Several prototype development environments have been developed by various research groups and the first commercial tools that support this model are already in the market. However, the absence of mature run-time environments that will allow the execution of IEC 61499 compliant applications is still evident. Even for the existing ones, there is no evidence about their efficiency to meet real-time constraints imposed by this kind of applications. Benchmarking of run-time environment is required to prove that these environments can be considered for the development of real-time applications. In this paper, a benchmarking framework is described and it is used to analyze the performance of an IEC 61499 run-time environment that is based on the real-time java Specification. The recently released IBM and Sun RTSJ implementations are used to demonstrate the effectiveness of the RTSJ based framework. Performance results prove the applicability of the proposed run-time environment and the model driven approach that was adopted, in the control and automation domain.
The goal of this paper is to evaluate the real-time specification for java proposal by performing several case studies. These case studies include: an extensible general resource controller;atomic action support infra...
详细信息
The goal of this paper is to evaluate the real-time specification for java proposal by performing several case studies. These case studies include: an extensible general resource controller;atomic action support infrastructure;unbounded and imprecise computations. They have been used previously by the Ada community to evaluate the efficacy of the Ada concurrency and real-time models. Our results indicate that the real-time Specification for java is expressive enough to cope with the demands of real-time concurrent programming. If it can be implemented efficiently, it will provide an alternative to Ada 95 for programming real-time systems.
This article presents an approach to providing real-time support for java's Remote Method Invocation (RMI) and its integration with the RTSJ memory model in order to leave out garbage collection. A new construct f...
详细信息
This article presents an approach to providing real-time support for java's Remote Method Invocation (RMI) and its integration with the RTSJ memory model in order to leave out garbage collection. A new construct for remote objects, called No-heap Remote object (NhRo), is introduced. The use of a NhRo guarantees that memory required to perform a remote invocation (at the server side) does not use heap memory. Thus, the aim is to avoid garbage collection in the remote invocation process, improving predictability and memory isolation of distributed java-based real-time applications. The article presents the bare model and the main programming patterns that are associated with the NhRo model. Sun RMI implementation has been modified to integrate the NhRo model in both static and dynamic environments.
A software locking mechanism commonly protects shared resources for multithreaded applications. This mechanism can, especially in chip-multiprocessor systems, result in a large synchronization overhead. For real-time ...
详细信息
A software locking mechanism commonly protects shared resources for multithreaded applications. This mechanism can, especially in chip-multiprocessor systems, result in a large synchronization overhead. For real-time systems in particular, this overhead increases the worst-case execution time and may void a task set's schedulability. This paper presents 2 hardware locking mechanisms to reduce the worst-case time required to acquire and release synchronization locks. These solutions are implemented for the chip-multiprocessor version of the java Optimized Processor. The 2 hardware locking mechanisms are compared with a software locking solution as well as the original locking system of the processor. The hardware cost and performance are evaluated for all presented locking mechanisms. The performance of the better-performing hardware locks is comparable with that of the original single global lock when contending for the same lock. When several noncontending locks are used, the hardware locks enable true concurrency for critical sections. Benchmarks show that using the hardware locks yields performance ranging from no worse than the original locks to more than twice their best performance. This improvement can allow a larger number of real-time tasks to be reliably scheduled on a multiprocessor real-time platform. Copyright (C) 2016 John Wiley & Sons, Ltd.
暂无评论