Design of Dynamically Reconfigurable Real-Time Software Using Port-Based Objects
IEEE Transactions on Software Engineering
Automated discovery of scoped memory regions for real-time Java
Proceedings of the 3rd international symposium on Memory management
A real-time garbage collector with low overhead and consistent utilization
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Real-Time Component-Based Systems
RTAS '05 Proceedings of the 11th IEEE Real Time on Embedded Technology and Applications Symposium
Ravenscar-Java: a high-integrity profile for real-time Java: Research Articles
Concurrency and Computation: Practice & Experience - 2002 ACM Java Grande—ISCOPE Conference Part I
Model-Based Development of Embedded Systems: The SysWeaver Approach
RTAS '06 Proceedings of the 12th IEEE Real-Time and Embedded Technology and Applications Symposium
Applying the CBSE paradigm in the real time specification for Java
JTRES '06 Proceedings of the 4th international workshop on Java technologies for real-time and embedded systems
An Emprical Evaluation of Memory Management Alternatives for Real-Time Java
RTSS '06 Proceedings of the 27th IEEE International Real-Time Systems Symposium
Reflexes: abstractions for highly responsive systems
Proceedings of the 3rd international conference on Virtual execution environments
RTZen: highly predictable, real-time java middleware for distributed and embedded systems
Proceedings of the ACM/IFIP/USENIX 2005 International Conference on Middleware
RTZen: highly predictable, real-time java middleware for distributed and embedded systems
Proceedings of the ACM/IFIP/USENIX 2005 International Conference on Middleware
Hi-index | 0.00 |
Component frameworks simplify development of enterprise systems and enable code reuse, but most frameworks are unpredictable and hence unsuitable for embedded or real-time systems. Similarly, Java is increasingly being used to build embedded system software because of its portability and ease of use. The Real-Time Specification for Java (RTSJ) reduces the unpredictability in Java execution times by eliminating the need for a garbage collector. However, it introduces programming complexity that makes it difficult to build non-trivial applications. To bring the advantages of Java component development to DRE systems, while simultaneously simplifying the use of RTSJ, therefore, we have developed a new lightweight component model for RTSJ called Compadres. Compadres offers the following advantages: 1) Simple component definition in Java that abstracts away RTSJ memory management complexity; 2) System assembly from components by connecting ports that communicate through strongly-typed objects; 3) The Compadres compiler that automatically generates the scoped memory architecture for components, while the component framework handles communication between the components. To validate this work, we construct a non-trivial example application using the component framework, a simple real-time CORBA implementation. We then analyze the performance and efficiency of our component example versus a non-component example, RTZen. Our measurements show that our Compadres example built with components incurs only minor time overhead as compared to a comparable hand-coded example.