Schlagwort: UEFI

  • LinuxBoot auf dem Vormarsch

    LinuxBoot
    Logo: Susanne Nähler | Quelle: LinuxBoot | Lizenz: CC BY-ND 4.0
    UEFI ist die derzeit vorherrschende Methode, um Rechner zu booten. Es ist eine proprietäre Firmware-Schnittstelle zwischen Firmware und Betriebssystem und enthält Komponenten, die völlig außerhalb unserer Kontrolle sind. UEFI ist ein Betriebssystem im Betriebssystem mit eigenem Webserver und Netzwerk-Stack, es beherbergt unter anderem Intels fehlerbehaftete Management Engine (ME).

    Linux kann das

    Aber kann man Rechner nicht auch mit Linux booten? Man kann und LinuxBoot zeigt, wie es geht. LinuxBoot ist ein Projekt unter dem Schirm der Linux Foundation, das von Google-Mitarbeiter Ron Minnich initiiert wurde, Minnich hatte bereits 1999 LinuxBIOS ins Leben gerufen, das heute als Coreboot ein alternatives BIOS starten kann.

    Vorgänger LinuxBIOS

    LinuxBoot erweitert das ursprüngliche Konzept von LinuxBIOS. Der Vorgänger lief hauptsächlich auf Großrechnern und im Embedded-Bereich. Das Konzept, einen Linux-Kernel zur Initialisierung des Rechners einzusetzen soll nun auf heutige Server und Desktops erweitert werden. Es geht darum, die Firmware-Komponente, die die Hardware initialisiert bevor der Linux-Kernel geladen wird, zu ersetzen Das ist die Phase, in der  RAM-, Speicher- und Netzwerkschnittstellen eingebunden werden. LinuxBoot will, grob gesagt, große Teile von UEFI durch einen Linux-Kernel und ein Initramfs ersetzen. Der in LinuxBoot enthaltene Linux-Kernel, der sogenannte Boot-Kernel, hat nichts mit dem eigentlichen System-Kernel zu tun, sondern startet diesen lediglich. Damit geht eine Vereinfachung einher, da die Firmware auf Treiber und Tools verzichten kann, die der Kernel sowieso bereits mitbringt.

    Viel, aber nicht alles

    LinuxBoot kann UEFI nicht völlig ersetzen, aber signifikant reduzieren. Für ein System mit UEFI-Firmware sind die PEI (Pre-EFI Initialization) und eine kleine Anzahl von DXE-Modulen (Driver eXecution Environment) unerlässlich. Mit LinuxBoot werden die meisten DXE-Module allerdings nicht mehr benötigt, da Linux-Treiber deren Aufgaben übernehmen. PEI ist derzeit nicht zu ersetzen, da ohne diese Initialisierung der Rechner nach 30 Minuten automatisch herunterfährt.

    »Wenn ihr jetzt noch keine Angst habt, dann habe ich das schlecht erklärt. Ich jedenfalls habe Angst.« – Ron Minnich am Ende seines Vortrags

    Mehr Kontrolle

    Durch die Minimierung der von UEFI verwendeten Prozeduren vereinfacht sich nicht nur der Bootvorgang, Administratoren erhalten auch mehr Kontrolle darüber zurück. Auch Wartung und Support eines Großteils dieser Phase verlagern sich durch den offenen Quellcode wieder in deren Verantwortungsbereich.

    Der Anfang ist gemacht

    Im Sommer wurden erste Server des Open Compute Project  mit LinuxBoot ausgestattet. Dazu gehören unter anderem Server von Equus. LinuxBoot ist weit entfernt davon, fertig zu sein. Es wird Jahre dauern, weitere Teile von UEFI zu eliminieren. Aber der Anfang ist gemacht. Das Projekt wird auf GitHub gepflegt, wo auch eine Liste unterstützter Server-Mainboards zu finden ist. Bis LinuxBoot für den Desktop verfügbar wird, dauert es noch einige Zeit. Hier steht aber mit Coreboot eine Alternative bereit, die von Herstellern wie Purism angeboten wird.  
  • Intel: BIOS-Unterstützung soll 2020 enden

    BIOS-Unterstützung
    Bild: uefi.org

     

    Das herkömmliche BIOS, das Basic Input/Output System, soll es nach Plänen von Intel ab dem Jahr 2020 nicht mehr geben. Die Firmware zum Starten von x86-PCs wird dann ausschließlich durch UEFI 3.0 repräsentiert, was für Unified Extensible Firmware Interface steht, Ab Version 3.0 wird das herkömmliche BIOS nicht mehr unterstützt. Das geht aus einer Präsentation (PDF) hervor, die Intel-Entwickler Brian Richardson kürzlich als Grundlage eines Vortrags benutzte. Richardson hat seine gesamte Karriere mit der Arbeit an BIOS-Firmware verbracht und arbeitet jetzt an UEFI.

    Kein BIOS mehr mit UEFI Class 3

    Die jetzige UEFI Spezifikation 2.5 ermöglicht noch die Verwendung des Legacy-Bios, was auch die allermeisten Hersteller auf ihren Mainboads anbieten. Dort besteht meist die Wahl zwischen BIOS, UEFI oder beidem als Einstellung. Mit einer dieser Vorgaben lassen sich die allermeisten Linux-Distributionen starten. Mit UEFI 3.0 soll es diese Wahlmöglichkeit nicht mehr geben. Damit fällt eine Möglichkeit weg, Linux-Distributionen mit einer seit langem bekannten, vergleichsweise einfachen und gut verstandenen Technik zu booten. Das hat Linus Torvalds bereits vor über zehn Jahren treffend formuliert: BIOS ist nur ein Bootloader und so hässlich, dass niemand auf die Idee kommt, daraus etwas anderes machen zu wollen.

    Mehr Nachteile

    Sicher bietet UEFI auch Vorteile, aber es sind vermutlich nicht die, die Richardson in seinem Papier hervorhebt. Wenn er von mehr Sicherheit spricht, meint Intel damit wohl eher mehr Kontrolle. Und dass die Ausgabe eines Compilers, denn nichts anderes ist UEFI, platzsparender sein soll als handgeschriebener Assembler-Code wie beim BIOS ist auch nicht unbedingt glaubwürdig. Ein Vorteil für den Endanwender ist da eher die einfachere Möglichkeit, Updates der UEFI-Firmware einzuspielen. Unverändert wird es nach jetzigem Stand die Möglichkeit geben, Rechner mit oder ohne Secure Boot zu betreiben.