Forum: Mikrocontroller und Digitale Elektronik Bajos - Java (JVM) für Mikrokontroller (AVR) bis 8BIT mit großem Funktionsumfang


von Chris H. (toffer)


Lesenswert?

Hallo,
ich wollte auf ein OpenSource Projekt meiner Hochschule (HWR-Berlin 
Fachbereich 2 Berufsakademie Studiengang Informatik) aufmerksam machen. 
Bei diesem Projekt arbeite ich in meiner Freizeit mit und habe auch 
große Anteile an der Entwicklung, also kann sicher bei Fragen helfen.

Es handelt sich um eine Java-Laufzeitumgebung (Java-Virtual-Machine und 
System/Bootklassen) mit leicht eingeschränkter Funktionalität (keine 
double, long, einige Field- und Methodenattribute werden nicht 
ausgewertet), gegenwärtig angepasst an eingebettete Systeme mit 
AVR32-Mikrocontrollern (EVK1100, NGW100, STK1000) und an AVR8-Systeme 
(atmega128) und unter Linux

Mit bajos06 lassen sich jetzt Java Programme auf dem arduino Mega(ATMEGA 
1280) ausführen.
Die Arbeitsversion(SVN) und der gerade erschienene stable Release findet 
man unter http://code.google.com/p/bajos/ oder Alternativ unter 
http://cs.ba-berlin.de/

Prinzipiell ist BAJOS auf einfache Portierung ausgelegt und kann sehr 
einfach an neue Plattformen adaptiert werden. Es wird nur ein 
entsprechender C-Compiler benötigt sowie wenigstens 80KB FLASH (50KB JVM 
Rest Bootklassen, Umfang individuell) und 4KB Ram(1,7KB für JVM Rest für 
Java Heap und Stack) für die normale Version.
Seit neustem gibt es auch eine Kompilierungsvariante 
TINYBAJOS(geringerer Funktionsumfang), welche wenigstens 32,5KB für die 
JVM benötigt und 1,2KB Ram. Eine Anpassung an das Laden der Bootklassen 
und Anwendungsklassen aus dem EEProm wäre sehr leicht umzusetzen.

Die aktuelle Version bietet sogar eine Unterstützung für die schnelle 
Behandlung von Realtime/Hardware/Interrupts im Rahmen des Java 
Multithreadings

Weitere Features und Infos unter:
http://code.google.com/p/bajos/wiki/FeaturesAndLimits

An der Dokumentation wird noch gearbeitet. Man kann auf jeden Fall 
sagen, dass das Projekt schon sehr weit fortgeschritten ist und durchaus 
gut benutzt werden kann.

Pläne für die nahe Zukunft sind:
- Unterstützung von Java 1.6
- Reduzierung des Ressourcenbedarfs von TINYBAJOS mit Laden der 
Bootklassen aus dem EEPROM oder von z.B. SD Karten.
- Dokumentation
- Unterstützung von Netzwerkzugriffen Sockets...


Würde mich freuen, wenn sich der eine oder andere dieses tolle Projekt 
anschaut und auch über Leute, die zu dem Projekt beitragen würden wir 
uns sehr freuen.

Momentan besteht das Kernentwicklungsteam nämlich nur aus 2 Leuten.

mfg christopher

von Gunter Heuckeroth (Gast)


Lesenswert?

Hallo,

es gibt jetzt auch eine Anleitung, wie bajos unter Windows kompiliert 
werden kann...

Gruß,
Gunter

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.