Open Firmware
Open Firmware (kurz OFW oder OF – genormt in IEEE-1275) ist ein offener, plattformunabhängiger Standard, der eine Bootumgebung für Betriebssysteme von Rechnersystemen definiert (offene Firmware für den Bootprozess).
Die Funktionalität geht dabei weit über ein typisches PC-BIOS hinaus. Zum Einsatz kommt IEEE-1275 jedoch meist außerhalb der x86-Welt. Im PC-Bereich mit x86-kompatiblen CPUs konnte sich OFW trotz ihrer Vorteile bislang nicht durchsetzen – dort besteht die Firmware (BIOS, in Zukunft EFI) seit Urzeiten meist aus reinem x86-Maschinencode und ist daher auch nicht portabel.
Funktionsweise
Open Firmware bietet eine Kommandozeile als optionalen Bootprompt und unterstützt programmierbare Kommandos in der hardwareunabhängigen, assemblernahen Programmiersprache Forth (F-Code). Über Open Firmware können daher Hersteller von Zusatzgeräten (z. B. Grafikkarten) deren Einbindung so gestalten, dass sie unabhängig von der realen CPU sind.
OFW definiert hierfür eine Umgebung, die unabhängig von verwendetem Prozessor und System als eine Art Kernel mit virtueller CPU fungiert (siehe Virtuelle Maschine). Einsteckbare Geräte können dabei eigene Routinen beim System anmelden, die als sogenannter F-Code abgelegt sind und daher prinzipiell auf jeder Open Firmware-Plattform ausgeführt werden können. Der Zugriff auf Geräte im System ist über eine Laufzeitumgebung möglich. Dort werden die Geräte in einer Art Baumstruktur verwaltet, deren Einträge eine dynamische Zahl von Attributen haben.
Des weiteren können rudimentäre Diagnosefunktionen vor dem eigentlichen Systemstart ausgeführt werden, oder es können bestimmte Hardware-nahe Einstellungen (Environment-Variablen) geändert werden – vergleichbar mit einem Linux-Bootprompt, jedoch wesentlich flexibler.
Geschichte
Die originale Spezifikation der OpenFirmware stammt von Sun Microsystems.
Open Firmware wurde zunächst in Sun Microsystems' SPARC-Architektur als OpenBootProm verwendet, und dann später mit der Einführung der PowerPC-Architektur für Apples Macintosh-Rechner übernommen.
Im PC-Bereich mit x86-kompatiblen CPUs konnte sich OFW bislang nicht durchsetzen, dort geht der Trend in Richtung EFI. Daher setzt seit dem Umstieg auf die Intel-Architektur auch Apple anstelle der Open Firmware nun Intels Bios-Nachfolger EFI ein.
Einsatzgebiete
Open Firmware wird heutzutage auf einer Vielzahl von Plattformen, vom Einzelplatz- bis zum Großrechnersystem verwendet. Zum Einsatz kommt Open Firmware z. B. bei sämtlichen Systemen von Sun Microsystems – aber auch auf CHRP-Rechnern von Apple (PowerMacs) oder von Drittherstellern, die auf der PowerPC-Architektur basieren. Beispielsweise benutzen die Pegasos-I- und Pegasos-II-Rechner der Firma Genesi eine Open Firmware.
Weblinks
- http://www.openfirmware.org – IEEE-1275 Standard: Open Firmware Homepage
- Drei Artikel über Open Firmware von der Apple Developer Connection
- http://www.forth.org – Forth: die Programmiersprache der OFW
Open Source
- http://www.openbios.info – OpenBIOS eine Open-Source-Implementation von OFW
- http://sourceforge.net/projects/u-boot Das U-Boot – Universal Bootloader