Abstract
The popular slogan “write once, run anywhere” effectively renders the expressive capabilities of the JAVA programming framework for developing, deploying, and reusing target-independent applets. Its generality and simplicity has driven most attention of the compiler technology community to developing just-in-time and runtime compilation techniques, local and compositional optimization algorithms. When it comes to real-time JAVA and to the implementation of embedded software, this approach is however far from satisfactory, especially in hard real-time system design (e.g. airborne systems) where conformance to real-time specifications is critical. We show that synchronous design tools, and particularly the design workbench POLYCHRONI, allow for a complete modeling of embedded software written in a high-level and general purpose programming language such as JAVA. The synchronous approach provides a formal engineering model and methodology, using global transformation and optimization techniques, that allow for a JAVA program written once to be mapped on any distributed target architecture. We present a technique to import a resource constrained, multi-threaded, RT JAVA program, together with its runtime system API, into POLYCHRONI. We put this modeling technique to work by considering a formal, refinement-based, design methodology that allows for a correct by construction remapping of the initial threading architecture of a given JAVA program on either a single-threaded target or a distributed architecture. This technique allows to generate stand-alone (Jvm-less) executables and to remap threads onto a given distributed architecture or a prescribed target real-time operating system. As a result, it allows for a complete separation between the virtual threading architecture of the functional-level system design (in JAVA) and its actual, real-time and resource constrained implementation.
JAVA is a registered trademark of SUN Microsystems
Work funded by the RNTL project EXPRESSO
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Airlines Electronic Engineering Committee: Design Guidance for Integrated Modular Avionics. Arinc Report 651-1 (November 1997)
Airlines Electronic Engineering Committee: Avionics Application Software Standard Interface. Arinc Specification 653 (January 1997)
Amagbegnon, T.P., Besnard, L., Le Guernic, P.: Implementation of the data-flow synchronous language Signal. In: Conference on Programming Language Design and Implementation, ACM Press, New York (1995)
Bollela, G., et al.: The real-time specification for Java. Addison-Wesley, Reading (2000)
Costard, D.: Evaluation d’une chaîne de compilation Java temps-réel. Rapport de stage de fin d’étude, Esiee (Juin 2003)
Gamatié, A., Gautier, T.: Modeling of modular avionics architectures using the synchronous language. In: Proceedings of the 14th Euromicro Conference on Real- Time Systems, work-in-progress session, IEEE Press, Los Alamitos (2002), Available as Inria research report n. 4678 (December 2002)
Gamatié, A., Gautier, T.: The Signal approach to the design of system architectures. In: 10th Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems, April 2003, IEEE Press, Los Alamitos (2003)
Perry, A., Kong, C.: Rosetta: Semantic support for model-centered systems-level design. IEEE Computer 34(11), 6470 (2001)
Le Guernic, P., Talpin, J.-P., Le Lann, J.-L.: Polychrony for system design. In: Gupta, R., Gupta, S., Shukla, S.K. (eds.) Journal of Circuits, Systems and Computers. Special Issue on Application Specific Hardware Design, World Scientific, Singapore (2002), Available as Inria research report n. 4715 (December 2002)
Marchand, H., Rutten, E., Le Borgne, M., Samaan, M.: Formal Verification of Signal programs: Application to a Power Transformer Station Controller. Science of Computer Programming 41(1), 85–104 (2001)
Buck, J.T., Ha, S., Lee, E.A., Messerschmitt, D.G.: Ptolemy: A Framework for Simulating and Prototyping Heterogeneous Systems. International Journal of Computer Simulation, special issue on ”Simulation Software Development” 4, 155–182 (1994)
Kwon, J., Wellings, A.J., King, S.: A High Integrity Profile for Real-time Java. In: Proceedings of the Joint ACM Java Grande Conference, ACM press, New York (2002)
Talpin, J.-P., Le Guernic, P., Shukla, S.K., Gupta, R., Doucet, F.: Polychrony for formal refinement-checking in a system-level design methodology. In: Application of Concurrency to System Design, June 2003, IEEE Press, Los Alamitos (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Talpin, JP., Gamatié, A., Berner, D., Le Dez, B., Le Guernic, P. (2004). Hard Real-Time Implementation of Embedded Software in JAVA . In: Guelfi, N., Astesiano, E., Reggio, G. (eds) Scientific Engineering of Distributed Java Applications. FIDJI 2003. Lecture Notes in Computer Science, vol 2952. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24639-8_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-24639-8_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21091-7
Online ISBN: 978-3-540-24639-8
eBook Packages: Springer Book Archive