Byte-Code für den Mac

Nach dem Schwenk von PowerPC zu Intel macht man sich bei Apple offenbar Gedanken darum, den Aufwand zum Erzeugen von Binaries zu senken. Plattformübergreifender Byte-Code anstelle maschinenabhängiger Binaries lautet das Mantra.

In Pocket speichern vorlesen Druckansicht 383 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Andreas Beier

Eine Nachricht von Apple-Mitarbeiter Chris Lattner auf der Mailing-Liste der GNU Compiler Collection (GCC) bewegt die Gemüter der Entwicklergemeinde. Lattner hat nach eigenen Aussagen das freie Projekt Low Level Virtual Machine (LLVM) in Version 4 der ebenfalls freien GCC integriert, die Apple unter Mac OS X einsetzt.

Bei LLVM handelt es sich um eine Sammlung von Bibliotheken und Tools für optimierende Compiler und Just-in-Time-Codegeneratoren. Was Apple damit im Detail anstellen will, bleibt allerdings im Dunkeln. Denkbar wäre, dass Apple Entwickler dazu bringen will, Software zukünftig für die LLVM zu übersetzen, sodass erst zu deren Laufzeit ein Just-in-Time-Compiler nativen Maschinencode für den vorhandenen Prozessor erzeugt. Da spätestens mit dem Erscheinen von Macs mit Intel-CPUs Software sowohl für den PowerPC als auch die Intel-Plattform erscheinen muss, könnte LLVM den Aufwand für die Entwickler reduzieren: Sie müssten dann keine zwei plattformspezifischen Binaries mehr erzeugen, sondern lediglich den Zwischencode für die LLVM.

Die Anwendung bliebe dabei sehr klein – anders als bei den so genannten Fat Binaries, die die Apple-Software-Hersteller nach dem Wechsel auf die PowerPC-Platform ausgeliefert haben. Diese enthielten sowohl den Code für 68000er als die PowerPCs-Macs. Das machte die Fat Binaries aber keineswegs doppelt so groß wie Binaries, die nur den Code für einen Prozessor enthalten, sondern blähte sie in der Regel um 30 bis 50 Prozent auf. Ein Großteil des Platzbedarfs moderner Software rührt schließlich von Grafiken und anderen Daten her und nicht von ausführbarem Code. (adb/ct) / (ola)