- LiFePO4 Speicher Test         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 22

Thema: Java Compiler für AVR

  1. #11
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.07.2004
    Ort
    Südhessen
    Beiträge
    1.312
    Anzeige

    E-Bike
    Hi ihrs,

    ich mag zwar Java nicht so gerne wie Du, aber ich denke, mal von den Problemen abgesehen, ist es einer verdammt gute Idee. Das -aus meiner subjektiven Empfingung heraus- größte Problem bei Java ist das GUI erstellen. (Zeitaufwand und Umstände) Da das ja dann wegfällt kann man die ganzen Vorteile von Java nutzen, das finde ich einen absolut guten Ansatz!
    Man stelle sich vor, durch drei, vier Zeilen kann man einen Thread bauen, der sonst ja nicht ganz so einfach wäre...
    Also kurz und gut: Eine schöner Ansatz.

    Aber...
    Ich sehe da folgende Probleme:
    Die VM kann man weglassen, das sehe ich nicht als Problem. Dann kann man Java ein bisschen in die Richtung anpassen, dass es besser auf dem System läuft und damit klar kommt, auch kein Problem (die Java Micro Edition machts nicht anders), aber hast Du schonmal daran gedacht, wie langwierig es ist, einen Compiler für OO-Sprachen zu entwickeln? Ich selbst hab das bereits zweimal gemacht und würde es in Zukunft gerne meiden
    Ob Du einen Garbage Collector verwendest oder nicht, bleibt Dir überlassen, aber ich denke, in der ersten Version wird er fehlen :P

    Also Fazit: Es ist eine tolle Idee, aber der Aufwand rechtfertigt nicht den Nutzen
    Aber falls Du es angehen möchtest und ein Team bilden willst, stehe ich zur Verfügung

    Viele Grüße,
    wulfi

  2. #12
    Benutzer Stammmitglied
    Registriert seit
    13.08.2004
    Ort
    Niedersachsen
    Alter
    45
    Beiträge
    96
    Danke nochmal für all eure Kommentare.

    Nachdem ich etwas darüber nachgedacht habe bin ich mir jetzt sicher, dass ich den GCJ nicht verwenden werde.

    Einer der Hauptgründe für dieses Projekt ist, dass ich schon seit längerem einen Compiler schreiben möchte und nicht dass ich einen portieren will.
    Ausserdem möchte ich den Compiler in Java schreiben und er sollte in der Lage sein sich selbst zu compilieren(in dem Fall dann natürlich mit dem PC als Target).
    Die erste Version, falls ich die jemals fertig bekomme, wird dann den GCC als Backend verwenden.
    In der nächsten Version werde ich dann versuchen Threads und Garbage Collection einzubauen.
    Ich hoffe nur, dass ich dieses Projekt nicht wieder fallen lasse bevor ich richtig begonnen habe, so wie bei meinem letzten.

  3. #13
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.07.2004
    Ort
    Südhessen
    Beiträge
    1.312
    Also die Beschreibung vom Anfang vor okay, aber das hier ist echt zu viel. Denk nochmal drüber nach. Du kannst doch keinen Compiler schreiben, der als Zielplattform den AVR hat und auch für den PC compilieren kann.... Überleg mal!!!

  4. #14
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    20.06.2004
    Beiträge
    1.941
    als target kann ich dir "win32forth" anbieten. schau mal unter google.
    forth ist eine sprache die sich selber compiliert usw. 100% maschienennah. der compilierte code ist 100% asm.
    diese sprache ist genauso gewöhnungsbedürftig wie java. also für dich richtig.
    mfg pebisoft

  5. #15
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    08.07.2004
    Ort
    Südhessen
    Beiträge
    1.312
    Wie siehsts denn jetzt aus? Schläft das Projekt inzwischen?

    Grüße
    wulfi

  6. #16
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    19.10.2004
    Ort
    Rheinstetten
    Alter
    42
    Beiträge
    357
    Zitat Zitat von voidpointer
    Es mag sein, dass Java ursprünglich für Haushaltsgeräte entwickelt wurde. Aber von diesem Ansatz hat sich die Sprache schnell entfernt. Normalerweise braucht man mindestens ein 32-Bit-System für Java.
    Achim.
    Ich arbeite im Moment an einer Web Service Engine mit, die in Java implementiert ist (mit eigener XML/Query-Sprache für die Webservices) und die neben PCs und PDAs auch auf Haushaltsgeräten (zur Kommunikation untereinander und mit Steuerungsgeräten) laufen soll und bald in einem Versuchsaufbau auch laufen wird.

    Java eignet sich hier eigentlich ganz gut

  7. #17
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.802
    Ein Java Compiler für AVR hast du rein theoretisch mit gcc.
    'avr' ist ein bekanntes backend für GCC und 'java' ein bekanntes frontend. Das bedeutet aber nicht notwendig, daß beides ohne Arbeit und Erweiterungen im GCC zusammen gestöpselt werden kann.
    • Zieh dir die gcc-Quellen
    • configure ... --enable-languages=c,c++,java ...
    • Habe viel Spaß bis du nen avr-gcc gebuildet bekommst.
    • Schreibe dir native interfaces um auf die Hardware (SFRs, IO) durchzugreifen und Interrupts abzubilden.
    • Besorg dir ne libjava, die dir die Standard Java-Objekte liefert.
    • Du wirst auch einen gc brauchen, zB den boehm-gc
    • java wird eine Speicherverwaltung wollen.
    • Und wie siehts mit Threads und Nebenläufigkeit aus?

    GCC übersetzt java-Quellen klaglos nach obj, das Zeugs zu linken ist schon nicht mehr so einfach.

    Java ist natürlich nett und wenn ich die Wahl hab, dann nehme ich Java und mach nen grossen Bogen um C und C++. Aber Entwicklung für Embedded ist was ganz anderes als auf einem PC zu arbeiten, der dir klaglos 20MByte per malloc() liefert. Zwar gibt es 32-Controller, die Java fahren, aber mit AVR spielt man da in einer anderen Liga.

    Ein Großteil an Hardwareunabhängigkeit liefert dir auf dieser Ebene schon C.

    Ist Java wirklich das was du willst?
    Was ist so schlimm an C für einen 8-Bitter?

  8. #18
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    19.10.2004
    Ort
    Rheinstetten
    Alter
    42
    Beiträge
    357
    Da fällt mir grade ein, für den Lego Mindstorms RCX gibt es eine Java VM und Bibliotheken, mit denen man die Sensoren ansprechen kann...

    Was hat Lego den für einen Controller? Bestimmt kein 32 Bit, oder?
    Und das Java lief da recht ordentlich drauf

    Das ganze heisst lejos, falls es jemanden interessiert

  9. #19
    Erfahrener Benutzer Robotik Einstein Avatar von SprinterSB
    Registriert seit
    09.06.2005
    Ort
    An der Saar
    Beiträge
    2.802
    Hmmm *staun*.
    Hab grad mal gegurgelt und LEGO im Weltraum gefunden. Schon erstaunlich!

    In Mindstorms ist ein 8Bit Hitachi H8300, 32k Ram, 32k Flash, 16MHz.

  10. #20
    Neuer Benutzer Öfters hier
    Registriert seit
    30.08.2005
    Beiträge
    9
    Ich habe neulich mal 'was in diese Richtung gemacht:

    www.harbaum.org/till/nanovm

    EIn paar der hier genannten Einschränkungen treffen zu (keine Threads), manche nicht (Garbage Collection habe ich). Für grosse Programme reicht es sicher nicht, aber um mit dem Asuro ein paar Runden auf einer schwarzen Runde zu drehen reicht es allemal ...

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen