Abstract
The Java programming language was originally developed for embedded systems, but the resource requirements of previous and current Java
implementations - especially memory consumption - tend to exclude them
from being used on a significant class of resource constrained
embedded platforms. The contribution of this paper is an architecture
and implementation of a Java execution stack for resource constrained
embedded platforms with a few kB of RAM and flash memory.
The resource requirements of the presented architecture has been reduced
significantly through all the layers of the architecture by integrating: (1) a lean virtual machine (HVM) without any external dependencies on POSIX-like libraries or other OS functionalities, (2) a hardware abstraction layer, implemented almost
entirely in Java through the use of hardware objects, first level interrupt
handlers, and native variables, and (3) an implementation of the Safety-Critical
Java (SCJ) profile Level 0 and 1 for hard real-time applications. All Java
components of a given application are minimized through program specialization, and since (2) and (3) are written in Java, the program specialization has a significant impact on resulting program size.
An evaluation of the presented solution shows that the miniCDj benchmark gets
reduced to a size where it can run on resource constrained platforms.
implementations - especially memory consumption - tend to exclude them
from being used on a significant class of resource constrained
embedded platforms. The contribution of this paper is an architecture
and implementation of a Java execution stack for resource constrained
embedded platforms with a few kB of RAM and flash memory.
The resource requirements of the presented architecture has been reduced
significantly through all the layers of the architecture by integrating: (1) a lean virtual machine (HVM) without any external dependencies on POSIX-like libraries or other OS functionalities, (2) a hardware abstraction layer, implemented almost
entirely in Java through the use of hardware objects, first level interrupt
handlers, and native variables, and (3) an implementation of the Safety-Critical
Java (SCJ) profile Level 0 and 1 for hard real-time applications. All Java
components of a given application are minimized through program specialization, and since (2) and (3) are written in Java, the program specialization has a significant impact on resulting program size.
An evaluation of the presented solution shows that the miniCDj benchmark gets
reduced to a size where it can run on resource constrained platforms.
| Originalsprog | Engelsk |
|---|---|
| Artikelnummer | cpe.3164 |
| Tidsskrift | Concurrency and Computation: Practice & Experience |
| Udgave nummer | DOI: 10.1002/cpe.3164 |
| Antal sider | 25 |
| ISSN | 1532-0626 |
| Status | Udgivet - 17 okt. 2013 |
Emneord
- programmering
Fingeraftryk
Dyk ned i forskningsemnerne om 'A real-time Java tool chain for resource constrained platforms: Special issue paper'. Sammen danner de et unikt fingeraftryk.Citationsformater
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver