Though java was first used in an embedded system,due to some technical reasons java language is not widely applied to embedded *** change the situation, Sun defines some new java specifications for embedded applicatio...
详细信息
Though java was first used in an embedded system,due to some technical reasons java language is not widely applied to embedded *** change the situation, Sun defines some new java specifications for embedded application *** the real-time Specification for java(RTSJ)proposed,more and more programmers begin to devote to real-time java *** paper gives an overview of java-based embedded real-time systems and analyzes future work about java-based embedded real-time technology.
We present HVMTP, a time predictable and portable java virtual machine (JVM) implementation with applications in resource-constrained, hard real-time embedded systems, which implements all levels of the safety critica...
详细信息
We present HVMTP, a time predictable and portable java virtual machine (JVM) implementation with applications in resource-constrained, hard real-time embedded systems, which implements all levels of the safety critical java (SCJ) specification. time predictability is achieved by a combination of time-predictable algorithms, exploiting the programming model of the SCJ profile and harnessing static knowledge of the hosted SCJ system. This paper presents HVMTP in terms of its design and capabilities and demonstrates how a complete timing model of the JVM represented as a network of timed automata can be obtained using the tool TETASARTS(JVM). The timing model readily integrates with the rest of the TETASARTS tool set for temporal verification of SCJ systems. We will also show how a complete timing scheme in terms of safe worst-case execution times and best-case execution times of the java bytecodes can be derived from the model. Furthermore, we take a first look at how to support the new java 8 language feature of Lambda expressions in a SCJ context - we look in particular at how the invokedynamic bytecode can be implemented in a time-predictable way and integrated in HVMTP. Copyright (c) 2016 John Wiley & Sons, Ltd.
The real-time Specification for java (RTSJ) [13] is becoming a popular choice in the world of real-time and embedded programming. However, RTSJ introduces many non-intuitive rules and restrictions which prevent its wi...
详细信息
ISBN:
(纸本)9783540898559
The real-time Specification for java (RTSJ) [13] is becoming a popular choice in the world of real-time and embedded programming. However, RTSJ introduces many non-intuitive rules and restrictions which prevent its wide adoption. Moreover, current state-of-the-art frameworks usually fail to alleviate the development process into higher layers of the software development life-cycle. In this paper we extend our philosophy that RTSJ concepts need to be considered at early stages of software development, postulated in our prior work [2], in a framework that provides continuum between the design and implementation process. A component model designed specially for RTSJ serves here as a cornerstone. As the first contribution of this work, we propose a development process where RTSJ concepts are manipulated independently of functional aspects. Second, we mitigate complexities of RTSJ-development by automatically generating execution infrastructure where real-time concerns are transparently managed. We thus allow developers to create systems for variously constrained real-time and embedded environments. Performed benchmarks show that the overhead of the framework is minimal in comparison to manually written object-oriented applications, while providing more extensive functionality. Finally, the framework is designed with the stress on dynamic adaptability of target systems, a property we envisage as a fundamental in an upcoming era of massively developed real-time systems.
The proliferation of a new generation of distributed real-time embedded systems (DRE) characterized by special restrictions on its storage capacities, its available computation time, and the messages they can send thr...
详细信息
The proliferation of a new generation of distributed real-time embedded systems (DRE) characterized by special restrictions on its storage capacities, its available computation time, and the messages they can send through the network suggests a comprehensive redesign of the current distribution infrastructure in order to tune its performance. In this changing panorama, the paper concerns one of the protocols, java's Remote Method Protocol (JRMP), used nowadays to interconnect different nodes of a distributed java system, and explores the cost of integrating an improved protocol-level multiplexing strategy in the context of an end-to-end remote invocation. The new multiplexing strategy helps middleware manage more efficiently unscheduled invocations that appear at runtime generated from a certain client node, especially in cases where preallocation of resources or dimensioning for the worst-case are techniques not plausible. To this end, the paper examines an alternative based on the definition of a new subprotocol, called ConnectionLess, which offers built-in multiplexing facilities for distributed java applications. The performance of the new subprotocol is compared against the three already defined by JRMP (namely SingleOp, Stream, and Multiplex), taking into consideration parameters such as memory consumed in the java's virtual machine and end-to-end response times. Copyright (C) 2011 John Wiley & Sons, Ltd.
In spite of the popularly of java, its slow performance and unpredictable execution characteristics are still some of the most challenging issues faced by designers for real-time applications. In the past, numerous ar...
详细信息
ISBN:
(纸本)193241553X
In spite of the popularly of java, its slow performance and unpredictable execution characteristics are still some of the most challenging issues faced by designers for real-time applications. In the past, numerous architectural enhancements have been investigated to enhance performance and increase predictability. In this paper, dedicated hardware based enhancements that can complement existing design solutions are presented. To achieve high-performance while maintaining simplicity of design, a nested state controller is used for modelling java instructions. This approach enables ahead of synthesis resource sharing and simplified reuse of functional elements. A hardware based automatic memory management sub-system is also presented that provides virtual pointer based memory access for memory allocations. Along with fixed cycle allocation and fast automatic resizing of memory, the memory controller provides predictable management functions. The paper describes a simple system targeted to the Virtex II Pro FPGA.
We present an implementation of the Safety-Critical java profile (SCJ), targeted for low-end embedded platforms with as little as 16 kB RAM and 256 kB flash. The distinctive features of the implementation are a combin...
详细信息
ISBN:
(纸本)9781450316880
We present an implementation of the Safety-Critical java profile (SCJ), targeted for low-end embedded platforms with as little as 16 kB RAM and 256 kB flash. The distinctive features of the implementation are a combination of a lean java virtual machine (HVM), with a bare metal kernel implementing hardware objects, first level interrupt handlers, and native variables, and an infrastructure written in java which is minimized through program specialization. The HVM allows the implementation to be easily ported to embedded platforms which have a C compiler as part of the development environment;the bare metal approach eliminates the need for a resource consuming operating system or C-library;the program specialization means that the infrastructure for the SCJ profile is optimized for a particular application keeping only the code and data the application needs. The SCJ implementation is evaluated with a known benchmark and shown to reduce this to a size where it can execute on a minimal configuration.
Scoped memories are introduced in real-time java profiles in order to make object allocation and deallocation time and space predictable. However, explicit scoping requires care from programmers when dealing with temp...
详细信息
ISBN:
(纸本)9781450316880
Scoped memories are introduced in real-time java profiles in order to make object allocation and deallocation time and space predictable. However, explicit scoping requires care from programmers when dealing with temporary objects, passing scope-allocated objects as arguments to methods, and returning scope-allocated objects from methods. To simplify the correct usage of scopes, programming patterns may be helpful. We present patterns for simple subroutines, sequences of subroutine calls, and nested calls, where the patterns avoid memory leaks and unnecessary copying of values. The patterns are illustrated by implementations in the safety-critical java profile.
In order to claim conformance with a java Specification Request, a java implementation has to pass all tests in an associated Technology Compatibility Kit. This paper presents a model-based development of a Technology...
详细信息
In order to claim conformance with a java Specification Request, a java implementation has to pass all tests in an associated Technology Compatibility Kit. This paper presents a model-based development of a Technology Compatibility Kit test suite and a test execution tool for the draft safety-critical java profile specification. The java Modeling Language is used to model conformance constraints for the profile. java Modeling Language annotations define contracts for classes and interfaces. The annotations are translated by a tool into runtime assertion checks. Hereby, the design and elaboration of the concrete test cases are simplified, because the expected results are derived from contracts and thus do not need to be provided explicitly. Bottom-up testing is applied for testing methods of the safety-critical java classes, whereas top-down testing is applied for testing global properties, such as protocols, memory management, and real-time properties, including scheduling. The tests are executed using a simplified version of JUnit, which makes the test suite executable on resource-constrained platforms. Copyright (c) 2017 John Wiley & Sons, Ltd.
Safety-critical digital avionics systems are becoming increasingly complex. Consequently, exhaustive testing may be impossible or impractical to demonstrate that the software of these systems complies with airworthine...
详细信息
ISBN:
(纸本)9781450316880
Safety-critical digital avionics systems are becoming increasingly complex. Consequently, exhaustive testing may be impossible or impractical to demonstrate that the software of these systems complies with airworthiness requirements. Software development assurance in accordance with prescribed development standards is an accepted approach, but increases cost. These issues are addressed by the EU ARTEMIS CHARTER project. Its goals include managing system complexity, improving software quality, and reducing the total development effort. These goals have been achieved by a Quality Embedded Development (QED) approach, in which model-based development and real-time java are the key technologies. Tools have been developed to support development and verification activities. This paper presents CHARTER'S QED approach by taking examples from the development of a demonstrator for a safety-critical avionics system based on an aircraft Environmental Control System. The QED approach is assessed by comparing metrics that have been collected during the demonstrator development with metrics for conventional development. An important metric is the total development effort. The results indicate that a productivity improvement is achievable.
java平台具有Write Once, Run Anywhere特性,在解决耗用记忆体空间及执行效率缓慢的问题後,目前已渐受嵌入式系统市场所接受。但有监於嵌入式系统与即时系统市场的极高交集,因此如何在java平台中加入real-time程式的支援,一直有许...
详细信息
java平台具有Write Once, Run Anywhere特性,在解决耗用记忆体空间及执行效率缓慢的问题後,目前已渐受嵌入式系统市场所接受。但有监於嵌入式系统与即时系统市场的极高交集,因此如何在java平台中加入real-time程式的支援,一直有许多学者与商业公司进行相关的研究。
本文中将介绍我们对目前real-time java规范-RTSJ(real-time Specification for java)中各项新增机制的了解,并介绍我们如何遵照其要求,设计实作出与之相容的real-time java执行环境。
暂无评论