- Coreboot
-
coreboot Entwickler: coreboot-Team Betriebssystem: unterstützt diverse Betriebssysteme Kategorie: hardwarenahe Software Lizenz: GNU GPL coreboot.org coreboot (ehemals LinuxBIOS) ist ein Projekt, welches zum Ziel hat, ein quelloffenes, freies BIOS zu entwickeln. LinuxBIOS wurde 1999 vom Los Alamos National Laboratory gestartet und Anfang 2008 in coreboot umbenannt. Das Projekt ist unter der GNU General Public License lizenziert. Durch diese Lizenz wird jedermann das Recht eingeräumt, den Quellcode des BIOS einzusehen und dieses an seine Bedürfnisse anzupassen. Es stellt somit eine Alternative zu proprietären BIOS-Systemen dar, wie sie derzeit fast ausschließlich in PCs und Workstations vorzufinden sind.
Das Projekt wird von der Free Software Foundation (FSF) gutgeheißen. Das Projekt erhält auch Unterstützung aus der Wirtschaft, wie etwa von AMD, Google, MSI, SiS, Tyan, Linux Networx und der coresystems.
Inhaltsverzeichnis
Innovationen in coreboot
Durch den Einsatz von coreboot kann der Bootvorgang erheblich beschleunigt werden. Auf einigen Systemen beträgt die Boot-Zeit weniger als eine Sekunde. Des Weiteren erlaubt coreboot Fernzugriff und ist speziell für Cluster-Systeme konzipiert. Momentan werden jedoch nur relativ wenige Hauptplatinen unterstützt.
Funktion für den Bootvorgang
coreboot selbst ist lediglich ein Minimal-Code, um das Mainboard mit all seinen Geräten zu starten. Unmittelbar danach erfolgt eine Übergabe an eine sogenannte Payload (engl. für Nutzlast), die dann das System weiter hochfährt. coreboot enthält selbst keinen Kernel. Ein Großteil des coreboot-Codes dient dazu, das RAM benutzbar zu machen, den PCI-Bus und die serielle Schnittstelle zu initialisieren, letztere als Ausgabegerät zur Fehlersuche.
Nach der Systeminitalisierung durch coreboot springt dieses eine sog. Payload an, die das weitere Hochfahren des Systems übernimmt. Die bekanntesten sind FILO (ein minimalistischer Bootloader), Etherboot, eine IEEE-1275-konforme Open-Firmware-Implementierung (dazu gehören OpenBIOS, SmartFirmware, sowie Open Firmware selbst), Memtest86, GRUB2, SeaBIOS, Plan 9 und Linux. Prinzipiell sind als Payload auch verschiedene andere Bootloader, Betriebssysteme und Standalone-Software einsetzbar.[1]
Der Linux-Kernel ist in der aktuellen Version 2.6 so groß (>1 MByte), dass er in den meisten üblichen Flash-ROMs (4 Mbit bzw. 0,5 MByte) keinen Platz findet. Da coreboot keine Gerätetreiber enthält, kann die Festplatte nicht direkt ausgelesen werden und eine Payload mit Gerätetreibern (z.B. FILO order GRUB2) übernimmt das Laden von der Festplatte. Da neuere Mainboards hauptsächlich aufgelötete Flash-ROMs verwenden, ist ein Austausch durch größere Chips nicht immer praktikabel. Die größten verfügbaren Flash-ROMs bewegen sich in der Größenordnung von 4-8 MByte, was sogar für eine komplette Linux-Distribution mit graphischer Oberfläche ausreicht.[2]
Unterstützte Hardware
Die Unterstützung der Hardware wird eingeteilt in Unterstützung von Hauptplatinen und Chipsätzen.
- Unterstützte Hauptplatinen (englisch)
- Unterstützte Chipsätze (englisch)
Verwendung von coreboot
coreboot wird in verschiedenen Cluster-Systemen, unter anderem am Los Alamos National Laboratory, und auch in diversen Embedded-Systemen (z. B. in Set-Top-Boxen) eingesetzt. Ein weiteres Einsatzgebiet ist der Server-Bereich. So setzt zum Beispiel die Free Software Foundation mehrere Server mit coreboot (und darüber einem freien Betriebssystem) ein. Auch Unterstützung für Standard-Desktop-PCs ist gegeben: Das Gigabyte M57-SLI, ein Mainstream-AM2-Mainboard beispielsweise wird unterstützt.
Geplant war der Einsatz des coreboot im gemeinnützigen Projekt des 100-Dollar-Laptops. Bei diesem, insbesondere für Entwicklungs- und Schwellenländer konzipierten Computer, wäre coreboot standardmäßig installiert gewesen und hätte dadurch eine hohe Verbreitung erfahren. Auf Basis von coreboot hätte dann eine Open-Firmware-Version als Payload den weiteren Startvorgang kontrolliert. Um die Firmware des 100-Dollar-Laptop aus einem Guss zu haben, wird nun allerdings coreboot weggelassen und stattdessen die Open-Firmware-Version so erweitert, dass sie direkt genutzt werden kann.
Bedeutung für die Freie-Software-Bewegung
Das 1983 gegründete GNU-Projekt hatte zunächst die Entwicklung eines freien Betriebssystems zum Ziel. Dadurch, dass Linux 1992 unter die GPL gestellt wurde, wurde das erste Betriebssystem geschaffen, das unter einer Open-Source-Lizenz erhältlich war. Das Problem der proprietären Firmware (hardwarenahe Software) wurde erst im Jahr 2002 angegangen. Durch coreboot in Verbindung mit einem freien ROM-Image (zum Beispiel einem Linux-Kernel, OpenBIOS, Open Firmware, o. a.), wurde die Brücke zwischen Hardware und Software geschlagen.
Herkömmliche BIOS-Varianten sind in gewissen Maßen fehlerbehaftet und diese sind dann oft nicht zu bereinigen. Es gibt Ansätze, in Zukunft weitere Funktionen wie z. B. Digitale Rechteverwaltung im BIOS zu implementieren, deren Funktionalität in Teilen bewusst nicht offengelegt wird.
Weblinks
- Webseite des Projektes coreboot (englisch)
- Mad Penguin dot org, 25. Dezember 2006: »LinuxBIOS: The Forgotten Hero« (englisch)
- FSF-Kampagne zur Unterstützung eines freien BIOS (englisch)
- Präsentation von LinuxBIOS, FOSDEM 2007: »LinuxBIOS ─ building a BIOS for fun and not-profit«
- Interview mit Carl-Daniel Hailfinger auf dem LinuxTag 2008 von RadioTux
Einzelnachweise
Wikimedia Foundation.