Access the full text.
Sign up today, get DeepDyve free for 14 days.
P. Hansen (1977)
The Architecture of Concurrent Programs
A. Burns, A. Wellings (2009)
Real-Time Systems and Programming Languages - Ada, Real-Time Java and C / Real-Time POSIX, Fourth Edition
Geoffrey Phipps (1999)
Comparing observed bug and productivity rates for Java and C++Software: Practice and Experience, 29
A. Sadeghi, C. Wachsmann (2010)
Trusted Computing
J. Hennessy, D. Patterson (1969)
Computer Architecture - A Quantitative Approach, 5th Edition
J. Kreuzinger, U. Brinkschulte, M. Pfeffer, S. Uhrig, T. Ungerer (2003)
Real-time event-handling and scheduling on a multithreaded Java microcontrollerMicroprocess. Microsystems, 27
D. Bacon, P. Cheng, V. Rajan (2003)
A real-time garbage collector with low overhead and consistent utilization
A. Wellings, Martin Schoeberl (2009)
Thread-Local Scope Caching for Real-time Java2009 IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing
(2008)
Java interrupt handling
Stephan Korsholm, Martin Schoeberl, A. Ravn (2008)
Interrupt Handlers in Java2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)
Thomas Henties, James Hunt, D. Locke, K. Nilsen, Martin Schoeberl (2009)
Java for Safety-Critical Applications
Prof. Wirth (1982)
Programming in Modula-2
M. Golm, M. Felser, Christian Wawersich, J. Kleinöder
Proceedings of the 2002 Usenix Annual Technical Conference the Jx Operating System
(2009)
micro [µ] virtual-machine
G. Hunt, J. Larus, M. Abadi, Mark Aiken, P. Barham, Manuel Fähndrich, C. Hawblitzel, O. Hodson, Steven Levi, Nick Murphy, B. Steensgaard, D. Tarditi, Ted Wobber, Brian Zill (2005)
An Overview of the Singularity ProjectACM Transactions on Storage
J. Hennessy, D. Patterson (2007)
Computer Architecture - A Quantitative Approach (4. ed.)
Jason Hill, R. Szewczyk, A. Woo, S. Hollar, D. Culler, K. Pister (2000)
System architecture directions for networked sensors
G. Bollella, James Gosling (2000)
The Real-Time Specification for JavaComputer, 33
(2000)
aj-100 real-time low power Java processor
N. Wirth (1977)
Design and implementation of modulaSoftware: Practice and Experience, 7
(2005)
Jini on the Jnode Java os
Aaron Weiss (2006)
Trusted computingNetworker, 10
(2000)
simpleRTJ a small footprint Java VM for embedded and consumer devices
E. Gamma, Richard Helm, Ralph Johnson, J. Vlissides (1994)
Design patterns: elements of reuseable object-oriented software
A. Krall, R. Grafl (1997)
CACAO — A 64‐bit JavaVM just‐in‐time compilerConcurrency and Computation: Practice and Experience, 9
Martin Schoeberl (2008)
A Java processor architecture for embedded real-time systemsJ. Syst. Archit., 54
(2002)
Hard Realtime Garbage Collection in Modern Object Oriented Programming Languages. aicas Books
Austin Armbruster, J. Baker, A. Cunei, Chapman Flack, D. Holmes, F. Pizlo, E. Pla, M. Prochazka, J. Vitek (2007)
A real-time Java virtual machine with applications in avionicsACM Trans. Embed. Comput. Syst., 7
Martin Schoeberl, J. Vitek (2007)
Garbage collection for safety critical Java
Doug Simon, C. Cifuentes, David Cleal, John Daniels, Derek White (2006)
Java™ on the bare metal of wireless sensor devices: the squawk Java virtual machine
David Gay, P. Levis, R. Behren, M. Welsh, E. Brewer, D. Culler (2003)
The nesC language: A holistic approach to networked embedded systems
A. Ravn (1980)
Device MonitorsIEEE Transactions on Software Engineering, SE-6
P. Gerum
Xenomai-Implementing a RTOS emulation framework on GNU / Linux
Martin Schoeberl, Christian Thalinger, Stephan Korsholm, A. Ravn (2008)
Hardware Objects for Java2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC)
L. Sha, R. Rajkumar, J. Lehoczky (1990)
Priority Inheritance Protocols: An Approach to Real-Time SynchronizationIEEE Trans. Computers, 39
Martin Schoeberl (2008)
JOP: A Java Optimized Processor for Embedded Real-Time Systems
D. Beach, E. Öhrn (2011)
The Empirical Study
A. Krall, R. Grafl (1997)
CACAO - A 64-bit JavaVM Just-in-Time CompilerConcurr. Pract. Exp., 9
N. Wirth (1977)
Modula: A language for modular multiprogrammingSoftware: Practice and Experience, 7
Martin Schoeberl, Wolfgang Puffitsch (2008)
Non-blocking object copy for real-time garbage collection
(1996)
Kaffe – A virtual machine to run Java code
Martin Schoeberl (2006)
Real-time garbage collection for JavaNinth IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC'06)
Tim Lindholm, Frank Yellin (1996)
The Java Virtual Machine Specification
Andy Chou, Junfeng Yang, B. Chelf, Seth Hallem, D. Engler (2001)
An empirical study of operating systems errorsProceedings of the eighteenth ACM symposium on Operating systems principles
A. Burns, A. Wellings (2009)
Real-Time Systems and Programming Languages
(2008)
Received August
A Hardware Abstraction Layer in Java MARTIN SCHOEBERL, Vienna University of Technology STEPHAN KORSHOLM, Aalborg University TOMAS KALIBERA, Purdue University ANDERS P. RAVN, Aalborg University Embedded systems use specialized hardware devices to interact with their environment, and since they have to be dependable, it is attractive to use a modern, type-safe programming language like Java to develop programs for them. Standard Java, as a platform-independent language, delegates access to devices, direct memory access, and interrupt handling to some underlying operating system or kernel, but in the embedded systems domain resources are scarce and a Java Virtual Machine (JVM) without an underlying middleware is an attractive architecture. The contribution of this article is a proposal for Java packages with hardware objects and interrupt handlers that interface to such a JVM. We provide implementations of the proposal directly in hardware, as extensions of standard interpreters, and nally with an operating system middleware. The latter solution is mainly seen as a migration path allowing Java programs to coexist with legacy system components. An important aspect of the proposal is that it is compatible with the Real-Time Speci cation for Java (RTSJ). Categories and Subject Descriptors: D.4.7 [Operating Systems]: Organization and Design
ACM Transactions on Embedded Computing Systems (TECS) – Association for Computing Machinery
Published: Nov 1, 2011
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.