Plummeting hardware cost and continued rapid development of integrated circuit technology are leading to an explosion of interest in new applications of distributed, real time, and embedded systems, while the technologies to build reliable and secure software are still inadequate. Java, with its increased development productivity, better code quality, inherent security, and support for distributed computing, would be ideal for this application domain. HIDOORS seeks to overcome the technical difficulties and bring Java to the distributed, real time system domain. These difficulties are predictable automatic memory management and multi-threading, limited system resources(CPU power, memory, etc.), and the lack of adequate development environments and analysis tools.
The HIDOORS project aims to enable the use of Java for distributed realtime systems by developing:
1) a deterministic implementation of the full Java language;
2) a fast deterministic remote access technique for distributed realtime programming;
3) modeling tools that facilitate the construction and automatic verification of distributed, realtime, safety-critical systems;
4) improving the memory and run-time performance of Java, and;
5) integrating the new tools for software analysis and development into an existing common software development environment.
DESCRIPTION OF WORK
The work to be performed consists of these main packages
1) requirements analysis for time-critical applications for different target domains;
2) development of UML modeling tools for distributed, realtime systems to analyse security conditions of the model;
3) implementation of a Java runtime system with distributed event management and optimizing compiler for deterministic execution of Java code;
4) development of a tool for automatic worst case execution time analysis of Java code incorporating new research results for cache and architecture aware worst case execution time analysis;
5) integration of the results into an existing integrated development environment creating a complete Java development environment for distributed time critical applications, and;
6) exploitation of the resulting implementation in different time critical application domains and by different users: industrial automation, avionic control, automotive diagnosis and naval control systems.
Funding SchemeCSC - Cost-sharing contracts
581 83 Linkoeping