deutschEnglish


JControl - Java für Embedded Systems

 

Kurze Entwicklungszyklen, hohe Code-Wiederverwendbarkeit, hohe Zuverlässigkeit - Eigenschaften, die mit der Programmiersprache Java™ erreicht werden. Mit JControl® können Sie von diesen Vorteilen auch bei Entwicklung von Anwendungen für Embedded-Systems profitieren, und das ohne Einbußen in Puncto Performance oder Speicherverbrauch.

Besonderheiten auf einen Blick
  • sehr kurze Startzeit
  • hochgradig skalierbar
  • auf jeden 32-Bit Controller portierbar
  • Unterstützung von Freescale's ColdFire
  • umfangreiche Peripherie-Unterstützung
  • komfortable Entwicklungsumgebung mit vollständiger Simulation

JControl - auf Kompaktheit optimiert

 

JControl ist eine äußerst kompakte Software-Plattform für Embedded Systems und kann für beliebige 32-Bit-Systeme portiert werden. Noch nicht einmal ein Betriebssystem ist dabei erforderlich, denn JControl kann auch direkt auf der Hardware aufsetzen ("bare bone"). Auf diese Weise lassen sich Reibungsverluste vermeiden und äußerst kurze Startzeiten gewährleisten. Zahlreiche Software-Bibliotheken, die für den Embedded-Bereich optimiert wurden, stehen dabei zur Verfügung und reduzieren die Software-Entwicklung auf das notwendige Minimum.

Ein Grund für die Kompaktheit von JControl liegt in der besonders effizienten Schnittstelle zwischen der virtuellen Java-Maschine und der hardware-nahen Software: Viele Java-Methoden (z.B. Zeichenfunktionen) sind nativ implementiert (d.h. in "C") und können so von der virtuellen Maschine direkt und ohne große Umwege aufgerufen werden. Die kleinste JControl-Variante (JCVM8) läuft sogar auf einem 8-Bit Mikrocontroller mit 60k ROM und 2,5k RAM. Die JCVM32 für 32-Bit-Systeme ist in dieser Hinsicht schon etwas anspruchsvoller, bietet dabei aber auch ein deutliches Mehr an Funktionalität. Werden alle für die Peripheriesteuerung notwendigen Funktionen mit eingebunden (z.B. für Display, Touch, Netzwerk, TCP/IP-Stack etc.), benötigt das Binärimage für ein ColdFire-Variante ca. 430kB Flash. Hinzu kommt ein "Starter"-Programm (ca. 64kB), das die virtuelle Maschine beim Einschalten aus dem Flash in das erheblich schnellere SDRAM kopiert. Optional kann ein eigenständiger Bootloader eingebunden werden (256k), mit dem Komplett-Updates in das System eingespielt werden können (z.B. über Netzwerk, USB oder über die serielle Schnittstelle).

Eine API ohne "Ballast"

 

Das JControl API (Application Programming Interface) wurde speziell auf kompakte Embedded Systems optimiert. Anwendungsbeispiele sind grafische Benutzerschnittstellen, Gateways oder Steuersysteme mit Feldbusanbindung. Dabei werden von der API einerseits Funktionen für die Erweiterung des Sprachumfangs angeboten (Listen, Multithreading, Mathematik usw.), als auch diverse Funktionen zur Ansteuerung der lokalen Peripheriekomponenten (Grafik-Display, Touch-Panel, Netzwerk, serielle Schnittstellen, RTC, lokale I/O,...). Darüber hinaus stehen erweiterte Software-Bibliotheken für spezielle Anwendungsbereiche zur Verfügung. So können leicht komfortable grafische Benutzeroberflächen auf der Basis vorgefertigter GUI-Komponenten erstellt werden.

Die Integrierte Entwicklungsumgebung JControl/IDE

 

Die JControl/IDE (Integrated Development Environment) ist die zentrale Entwicklungsumgebung für JControl. Sie basiert auf der Eclipse-Technologie und umfasst eine Reihe von Software-Werkzeugen, mit denen Anwendungen für JControl-Systeme komfortabel erstellt werden können. Das fängt an bei Editoren für Quelltexte, Bilder, Schriftarten usw., geht über einen integrierten Compiler mit Optimierer bis hin zur integrierten Kommunikations-Schnittstelle, mit der fertige Projekte per Knopfdruck in ein JControl-Gerät geladen werden können (z.B. über die serielle Schnittstelle, Ethernet oder per USB Memory Stick).

Eine Besonderheit der JControl/IDE ist die integrierte Simulationsumgebung, mit der sich Anwendungen vollständig schon auf dem Entwicklungsrechner austesten lassen. Die Plattformunabhängigkeit von Java ermöglicht dabei maximale Realitätsnähe: Für die Simulation werden die Klassenbibliotheken des JControl-Systems auf dem PC nachgebildet. Auch "echte" Hardware kann über die integrierten "Forwarder" mit in die Simulation eingebunden werden.

Weitere Informationen zum Thema
Technologieseite: http://www.jcontrol.org
JControl Board Support Packages (BSPs) zum Download
Flyer: Maßgeschneiderte grafische Benutzeroberflächen928K
Artikel: JControl - Rapid Prototyping und Design Reuse mit Java(2003)209K
Studie: "Integrierte Gebäudesysteme - Technologien, Sicherheit und Märkte", herausgegeben vom Bundesamt für Sicherheit in der Informationstechnik(2002)1.63M