entry

    Projekt

    - leJOS -

    Download

    Installation

    Modelle

    Links

entry

Was ist leJOS bzw. TinyVM?

leJOS Wie sein Vorgänger (TinyVM), ist leJOS eine kleine, von Jose Solorzano entwickelte, Virtuelle Maschine. Sie funktioniert als Ersatz für die offizielle Lego-Firmware des Lego MindstormTM RCX. Der programmierbare Baustein "RCX" enthält einen Hitachi H8300 Prozessor und 32 Kb RAM, von denen 28 Kb von der firmware genutzt werden können.
Die Ziele der TinyVM weichen von denen der leJOS ab.
leJOS erlaubt es, mit einem von der TinyVM verschiedenen Design der API und einem anderen Usability-Modell zu experimentieren. Die TinyVM veranschaulicht, wie klein eine angemessene Java Runtime sein kann, während leJOS mehr aussagt über die Menge der Features, die man in eine RCX Java Runtime stecken kann, bevor die Platz-Ressourcen erschöpft sind.
Folgende Eigenschaften haben leJOS und TinyVM gemeinsam:

  • Objektorientierte Sprache (Java).
  • Preemtive Threads (tasks).
  • Arrays (auch multi-dimensionale).
  • Rekursion.
  • Synchronisation.
  • Exceptions.
  • eine gut dokumentierte API.

Die wichtigsten Features, die in leJOS implementiert sind, in der TinyVM jedoch fehlen, sind:
  • Eine Windows-Version
  • Gleitkommazahlen (32 Bit)
  • String-Konstanten.
  • Casten von long nach int und umgekehrt.
  • Markiert Referenzen im Stack (was das Implementieren einer garbage collection möglich macht).
  • Downloaden mehrerer Programme.
  • Mathematische Funktionen (java.lang.Math):sin, cos, tan, atan, pow, etc.
  • Andere APIs.

Beide Virtuelle Maschinen stellen umfangreiche API’s zur Steuerung des RCX. Diese umfassen z.B. die Kontrolle von Motoren, Sensoren, LCD und Buttons, des weiteren einen Sensor-listener und die Kommunikation zwischen mehreren RCX-Bausteinen oder einem RCX und einem PC.
In einem "Wired News"-Aritkel "Lego: A Hacker's Best Friend" von Michelle Delio wird erwähnt, dass selbst Jonathan Knudson, Author des "Unofficial Guide to Lego Mindstorms Robots" einige Programme für leJOS geschrieben hat und es als "very cool stuff" bezeichnet.(http://www.wired.com/news/culture/0,1284,39504,00.html)