Zum Inhalt springen

Unified Extensible Firmware Interface

aus Wikipedia, der freien Enzyklopädie
Dies ist die aktuelle Version dieser Seite, zuletzt bearbeitet am 1. April 2026 um 21:20 Uhr durch imported>BrunoBoehmler (Sicherheitslücken: Heise online durch Internetquelle ersetzt, um Darstellungsfehler der Zeichensetzung zu vermeiden).
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)

Das Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden. (kurz UEFI, Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden. für einheitliche erweiterbare Firmware-Schnittstelle<ref name="heiseonline_4405251">Vorlage:Heise online</ref>) ist eine von Intel 1998 veröffentlichte Schnittstellen-Definition für Computer-Firmware, für die Intel zugleich eine Referenzimplementierung vorstellte. Ursprünglich wurde die von Intel für die 64-Bit-Itanium-Architektur entwickelte Firmware als Extensible Firmware Interface, kurz EFI, bezeichnet. UEFI hat sich als Nachfolger des PC-BIOS etabliert und bildet als solches die zentrale Schnittstelle zwischen der Plattform-Firmware und dem Betriebssystem.

Dadurch, dass UEFI-Firmware auf IBM-PC-kompatiblen Computern die bisherige Firmware – das BIOS – abgelöst hat, wird UEFI auch oft als „UEFI-BIOS“ sowie dessen Firmware-Setup auch (weiterhin) oft als „BIOS-Setup“ bezeichnet.<ref>Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Ehemals im Vorlage:Referrer (nicht mehr online verfügbar);: Skriptfehler: Ein solches Modul „Text“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>

Wesentliche Merkmale von UEFI sind die Nutzung der GUID-Partitionstabelle, die zum vom BIOS genutzten Master Boot Record teil-kompatibel bleibt, Framebuffer-basierte Grafikunterstützung, Netzwerkfunktionalität, sowie seit UEFI-Version 2.3.1, Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden., eine Funktion, die das Booten auf vorher signierte Bootloader beschränkt und so Schadsoftware oder andere unerwünschte Programme hindern soll, zu starten.

Datei:Efi-simple de.svg
Lage der Schnittstelle

Merkmale

Im Gegensatz zu dem alten PC-BIOS enthält UEFI Schnittstellen und Datentabellen mit Plattforminformationen sowie Boot- und Laufzeitdienste, die dem Betriebssystemlader und in Folge dem Betriebssystem zur Verfügung stehen. Die UEFI-Firmware bietet verschiedene technische Vorteile gegenüber dem BIOS-System:

  • UEFI ist unabhängig vom Typ der CPU, und es können damit verschiedene Arten von Systemen, unter anderem Arm-Architektur und x64, gebootet werden.
  • Es können große Festplatten mit über 2 TB mit einer im Rahmen von UEFI eingeführten GUID-Partitionstabelle (GPT) verwendet werden.<ref name="grub-bios-installation">Vorlage:Cite book/Name: [Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden.] In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. GNU GRUB, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden., archiviert vom Vorlage:Referrer (nicht mehr online verfügbar) am Vorlage:Cite book/URL;.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>
  • Alle Daten und Programme für UEFI werden in Form von herkömmlichen Dateien in einer eigenen VFAT-Partition gehalten. Im Gegensatz zum BIOS braucht UEFI keine Daten oder Treiber wie den Betriebssystemlader in bestimmten fixen und unveränderlichen Speicherbereichen wie dem Master Boot Record (MBR).
  • UEFI ist netzwerkfähig. Im Gegensatz zum älteren BIOS-Standard Preboot Execution Environment (PXE), der im BIOS der Netzwerkkarte entsprechende Treiber benötigt, ist UEFI selbst netzwerkfähig und erlaubt, angelehnt an die Verfahren wie bei PXE, direkt das Booten über Netzwerk.
  • Generell modulares, erweiterbares Design in den Strukturen. Beispielsweise kann man eine der Unix-Shell ähnliche UEFI-Shell im Rahmen des Bootvorganges aufrufen.
  • Im UEFI-Standard sind Verfahren festgelegt, wie bestimmte Daten, beispielsweise die Boot-Reihenfolge von verschiedenen Medien, im NVRAM permanent gespeichert werden.

Geschichte

Maßgeblich für die Neuentwicklung EFI war eine Initiative von Intel, um einen Ersatz für das BIOS zur Verwendung auf der Itanium-Architektur (Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden. 64-Bit, kurz IA-64) zu finden. In dem 1998 gegründeten Intel Boot Initiative (IBI)-Programm wurde die Idee spezifiziert.

Unified EFI (UEFI)

Datei:Logo of the UEFI Forum.svg
UEFI-Logo

Zur Werbung und Weiterentwicklung von EFI wurde 2005 das Unified EFI Forum gegründet. Daran sind außer Intel auch AMD, Microsoft, Hewlett-Packard und viele andere PC- und BIOS-Hersteller beteiligt, sodass die nun als Unified EFI (UEFI) bezeichnete Schnittstelle nicht mehr allein von Intel festgelegt wird. Im Januar 2006 wurde die Version 2.0 der EFI-Spezifikation und deren Quelltext bereits als UEFI freigegeben.

Der Unterschied zwischen EFI und UEFI ist daher nur der Name: vor Version 2.0 hieß die Firmware „EFI“, ab Version 2.0 ist die korrekte Bezeichnung „UEFI“.

Skriptfehler: Ein solches Modul „Vorlage:Anker“ ist nicht vorhanden.BIOS-Nachfolger

Das ursprüngliche PC-BIOS erschien 1981 mit dem ersten IBM PC. Mit Fortschreiten der Entwicklung der IBM-PC-kompatiblen Computer wurde es trotz ständiger Erweiterungen den Anforderungen moderner Hardware und Betriebssysteme nicht mehr gerecht. Insbesondere ist es weder 32-Bit- noch 64-Bit-tauglich im Bezug auf Treiber. Zu Beginn der 2000er Jahre erschienen weitere Provisorien zum Ausgleich dieser Makel den Hardware-Herstellern (wie Intel oder AMD) nicht mehr tragbar.

Auf die x86-Architektur kam EFI in etwa zur selben Zeit wie die Befehlssatzerweiterung „x64“ bzw. „x86-64“, mit der die damals 32-Bit-x86-Architektur „IA-32“ ebenfalls zu einer 64-Bit-Architektur wurde. Dennoch wurde EFI anfänglich nur als 32-Bit-Firmware implementiert, u. a. bei Intel-Macs von Apple, die ab 2006 EFI-Version 1.10 als Firmware nutzten. Ab UEFI 2.0 gibt es offiziell eine 64-Bit-Implementierung auf x86.<ref>Christoph Pfisterer: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar); (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.).Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive )Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>

Um auf x86-Systemen zu bestehender Software kompatibel zu bleiben, war mit dem Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden., kurz CSM, eine BIOS-Kompatibilitätsschicht integriert. Seit ca. 2010 löste UEFI schrittweise das BIOS ab,<ref name="heiseonline_1254437">Vorlage:Heise online</ref> welches daher auch als Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden.<ref>Sebastian Kolar: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Axel Springer SE, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar);: Skriptfehler: Ein solches Modul „Text“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref><ref>Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.</ref> (dt.: Erbe/Hinterlassenschaft/Altlast) bezeichnet wurde. Seit 2020 wird das CSM, der BIOS-Kompatibilitäts-Modus, von den Herstellern weggelassen.<ref name="heiseonline_3890747">Vorlage:Heise online</ref><ref name="heiseonline_6066457">Vorlage:Heise online</ref>

Der eigentliche Nachfolger für das BIOS ist der Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden., der zu den Bedingungen der CPL (Common Public License) freigegeben wird und das Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden. implementiert.<ref name="FirmwareFoundationCodeCPL">Redaktion CHIP: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Ehemals im Vorlage:Referrer (nicht mehr online verfügbar);.Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive )Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>

Secure Boot

Mit der Einführung von Windows 8 im Jahr 2012 wurde das UEFI in der Version 2.3.1 mit einem „Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden.“-Mechanismus verstärkt eingeführt, der das Booten auf vorher signierte Bootloader beschränkt: Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden. ermöglicht den gesicherten Anfang einer unterbrechungsfreien „Vertrauens-Kette“ von der Hardware-Firmware bis zur Benutzeranwendung. Das erhöht die Sicherheit beim Systemstart u. a. weil es Schadsoftware, der die passenden Signaturen fehlen, im Grundsatz nicht mehr möglich ist, in den Boot-Prozess einzugreifen, es verhindert jedoch nicht, dass jedes Kettenglied auch „nicht-vertrauenswürdige“ Software nachladen kann. Beispielsweise existiert mit Shim ein von Microsoft signierter Bootloader, der einen nicht zertifizierten GRUB und über diesen beliebige andere Binaries nachladen kann.

Notwendig wurde Shim, da viele Hersteller von Hauptplatinen in ihren UEFI-Implementierungen ausschließlich Signaturen für Microsoft-Produkte mitliefern und die Installation benutzereigener Signaturen auf ihrer Hardware, z. B. für die Installation eines Linux-Kernels, nicht oder zumindest nicht allein mit den UEFI-Bordmitteln möglich ist. Da die Microsoft-Signaturen in nahezu allen real verfügbaren UEFI-Implementierungen vorhanden sind, nutzen praktisch alle aktuellen Linux-Distributionen Shim, um auf Rechnern mit aktiviertem Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden. zu starten.

Wie Forscher der Mitre Corporation Mitte 2014 bekannt gegeben haben, weist die Intel-Referenzimplementierung von UEFI zudem eine Sicherheitslücke auf, die das dauerhafte Einschleusen von Malware ermöglicht. Genutzt wird hierfür eine fehlerhafte Update-Funktion, durch die es zu Integer-Overflows kommt und Schadcode ausführbar macht. Viele verwenden den Code der Intel-Referenzimplementierung als Basis für ihr UEFI.<ref><templatestyles src="Webarchiv/styles.css" />Skriptfehler: Ein solches Modul „WLink“ ist nicht vorhanden. (Memento vom 22. Dezember 2014 im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref>

2016 wurde außerdem eine Sicherheitslücke im Microsoft-Bootloader bekannt, die eine Umgehung des Schutzes ermöglichte.<ref>Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar);.Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive )Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref><ref>heise online: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Ehemals im Vorlage:Referrer (nicht mehr online verfügbar);.Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive )Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>

UEFI Security Response Team (USRT)

Im Jahr 2017 wurde das UEFI Security Response Team (USRT) gegründet, das als Schnittstelle und Ansprechpartner zwischen IT-Sicherheitsexperten wie beispielsweise sogenannten white hat hackern und den Unternehmen dienen soll, die UEFI-basierte Hardware herstellen. Damit will man den Weg erleichtern und verkürzen, den jemand gehen muss, um die Industrie über eine Sicherheitslücke zu informieren, die er in UEFI gefunden hat, so dass letzten Endes auch die Industrie schneller mit Sicherheitspatches reagieren kann.<ref>UEFI-BIOS bekommt ein Sicherheits-Expertenteam</ref>

Implementierungen

Tianocore EDK2

Mit TianoCore EDK2<ref name="TianoCore">Vorlage:Cite book/Name: [Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden.] Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden., archiviert vom Vorlage:Referrer (nicht mehr online verfügbar) am Vorlage:Cite book/URL;.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> steht eine Referenzimplementierung unter der BSD-Lizenz zur Verfügung. Diese basiert auf einer vorhergehenden Entwicklung von Intel.

Das U-Boot

Im Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden. (Das U-Boot) steht seit 2017<ref name="MarryingU-BootUEFIandGRUB">Vorlage:Cite book/Name: [Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden.] Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden., archiviert vom Vorlage:Referrer (nicht mehr online verfügbar) am Vorlage:Cite book/URL;.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref> die UEFI-API zur Verfügung. Auf der Armv8-A-Architektur nutzen Linux-Distributionen die U-Boot-UEFI-Implementierung zusammen mit GNU GRUB zum Booten (z. B. SUSE Linux<ref name="SuseU-BootGRUB">Andreas Färber, Alexander Graf: [Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden.] (PDF; 122 kB) In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Archiviert vom Vorlage:Referrer (nicht mehr online verfügbar) am 2018-09-11; (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.).Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>). Auch OpenBSD<ref name="OpenBSD63onRPi3">Bijan Ebrahimi: [Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden.] In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden., archiviert vom Vorlage:Referrer (nicht mehr online verfügbar) am 2018-04-19; (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.).Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref> nutzt das UEFI-API, um von U-Boot zu starten.

Alternativen

Für PowerPC- und SPARC-Rechner wurde 1994 auf Unix-Workstations und -Servern der plattform- und prozessorunabhängige Forth-basierte Industriestandard Open Firmware (IEEE-1275) spezifiziert. Wesentliche technische Vorteile von Intels Eigenentwicklung EFI gegenüber Open Firmware, abgesehen von wesentlich gesteigerter Ausführungsgeschwindigkeit (Vergleich zwischen Mac mit Open Firmware und Mac mit EFI des gleichen Jahrgangs), waren zu diesem Zeitpunkt nicht bekannt.

Eine weitere Alternative ist die unter der GPL-Lizenz stehende Firmware coreboot (ehemals LinuxBIOS). Coreboot ist ein Minimalsystem, das lediglich die Hardware soweit initialisiert, dass ein anderes Programm (ein sogenanntes Payload) aufgerufen werden kann, etwa ein Linux-Kernel, ein Bootloader wie GRUB, aber auch alternative Firmware wie ein BIOS (mittels SeaBIOS), Open Firmware oder ein UEFI (mittels TianoCore).

Darüber hinaus existieren, meist für Nischen, weitere Alternativen:

Techniken und Möglichkeiten

Datei:Efi flowchart extended.svg
Ablauf eines Systemstarts mit EFI

Die EFI-Schnittstelle soll die Nachteile des seit den 1980er Jahren verbreiteten BIOS beseitigen und neue Möglichkeiten eröffnen. Dazu gehören laut EFI-Spezifikationen:

  • Einfache Erweiterbarkeit (z. B. für Digital Rights Management)
  • Eingebettetes Netzwerkmodul (zur Fernwartung)
  • Preboot Execution Environment (universelles Netzwerkbootsystem)
  • Unterstützung für hochauflösende Grafikkarten schon beim Start des Computers
  • optional in der Übergangszeit (zwischen 2010 und 2020) eine BIOS-Emulation durch das „Compatibility Support Module“ (CSM), zur Wahrung der Kompatibilität zu vorhandenen Betriebssystemen, die UEFI nicht unterstützen und ein BIOS voraussetzen<ref name="IntelEFIFramework">Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Ehemals im Vorlage:Referrer (nicht mehr online verfügbar); (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.).Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive )Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>
  • eine Shell, über die beispielsweise EFI-Applikationen (*.efi) aufgerufen werden können
  • Treiber können als Modul in das EFI integriert werden, so dass sie nicht mehr vom Betriebssystem geladen werden müssen. Damit sind, wie bei Open Firmware, systemunabhängige Treiber möglich.
  • Das System kann in einem Sandbox-Modus betrieben werden, bei dem Netzwerk- und Speicherverwaltung auf der Firmware laufen anstatt auf dem Betriebssystem.
  • Das EFI bietet eine Auswahlmöglichkeit für die auf dem System installierten Betriebssysteme und startet diese; damit sind (den Betriebssystemen vorgeschaltete) Bootloader überflüssig.
  • Mit der GUID-Partitionstabelle „GPT“ (für Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden.) führt es einen flexibleren Nachfolger für auf dem Master Boot Record basierende Partitionstabellen ein. Die GUID-Partitionstabelle ist notwendig, um von einer Festplatte > 2 TB booten zu können bzw. Partitionen > 2 TB anlegen und verwalten zu können.
    Obwohl GPT mit EFI eingeführt wurde, kann die Partitionstabelle auch von anderen Systemen verwendet werden. U. a. ist es auch mit dem PC-BIOS möglich, von einer GPT-partitionierten Festplatte zu starten, wenn ein geeigneter Bootloader (z. B. GRUB) installiert ist. Allerdings wird das nicht von vielen Betriebssystemen unterstützt: Windows beispielsweise bricht den Startvorgang mit einem Fehler ab, Linux hingegen kann auch im BIOS- oder CSM-Modus auf GPT-Partitionen installiert und genutzt werden.

Marktdurchdringung

Die Etablierung des Extensible Firmware Interface als Ersatz für das BIOS scheiterte im PC-Bereich zunächst am Widerstand von Computer- und BIOS-Herstellern. Nur Apple verwendete ab dem Einstieg in den x86-Markt mit Macs auf Intel-Basis – Intel-Macs – ausschließlich EFI.

Im Februar 2008 sollte das erste „normale“ x86-Mainboard (P35 Neo3 von MSI), welches auf dem P35-Chipsatz von Intel basiert, mit EFI erscheinen.<ref>Thomas Hübner: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Ehemals im Vorlage:Referrer (nicht mehr online verfügbar);.Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive )Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref> Erschienen ist es jedoch nie. MSI plante allerdings die Markteinführung von EFI für P45-Boards im Juli 2008.<ref>ComputerBase: MSI bringt EFI auf P45-Boards im Juli</ref> Anders als diese Nachrichten vermuten ließen, hat MSI die Veröffentlichung eines Mainboards mit EFI-Installation nicht vom Werk aus geplant, sondern hat für die dort genannten Mainboards ein EFI als öffentliche Beta-, also Testversion, herausgebracht.<ref><templatestyles src="Webarchiv/styles.css" />Skriptfehler: Ein solches Modul „WLink“ ist nicht vorhanden. (Memento vom 15. August 2009 im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref> Im Jahr 2009 haben sich verschiedene Hersteller zu UEFI bekannt (u. a. Insyde, Intel und Phoenix). Als Grund hierfür kann die x86-64-Kompatibilität und die verkürzte Ladezeit des jeweiligen Systems angeführt werden.<ref>Intel-Entwicklerforum: Notebook-Firmware bootet kürzer als 1 Sekunde heise.de, 29. September 2009</ref> Ende 2010 lieferte Hersteller Asus erste Mainboards für den Sockel 1155 mit EFI.<ref>Vorlage:Cite book/Name: [Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden.] bit-tech.net, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden., archiviert vom Vorlage:Referrer (nicht mehr online verfügbar) am Vorlage:Cite book/URL;.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Cite book/URLVorlage:Cite book/MeldungVorlage:Cite book/Meldung2Vorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/MeldungVorlage:Cite book/Meldung</ref>

EFI wird hauptsächlich von Intel gefördert und – mit Einschränkungen – auch von Microsoft. Intels Itanium-Systeme liefen von Anfang an ausschließlich mit EFI. Zusammen mit Intel-Hauptprozessoren setzte ab 2006 auch Apple das EFI ein. Windows-Versionen für IA-64-Server mit EFI gibt es seit Windows 2000. Windows Vista (x64) unterstützt seit SP1 UEFI 2.0, ebenso Windows Server 2008 (gleiche Entwicklungsgrundlage wie Vista mit SP1), aber nicht den älteren EFI-Standard 1.3, der bis ca. 2012 auf Intel-Macs verwendet wurde.<ref>Windows Vista Service Pack 1 ist fertig heise.de, am 4. Februar 2008</ref> Ab 2013 wurde Apple-EFI mehr oder weniger zu UEFI 2.0 kompatibel,<ref>Livewings: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. (Internetforum) In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar); (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden., Ab ca. 2013 sind Intel-Mac großteils kompatibel zu UEFI 2.0.).Vorlage:Toter Link/Core (Seite nicht mehr abrufbar. Suche im Internet Archive )Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref><ref>Loner T: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. (Internetforum) In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Apple, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar); (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.): Skriptfehler: Ein solches Modul „Text“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref> allerdings hatte Apple schon ab ca. Ende 2008 bei der Grafikschnittstelle (EFI-Framebuffer) UEFI-2.0-Kompatibilität hergestellt.<ref>Christoph Pfisterer: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. SourceForge, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar); (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.): Skriptfehler: Ein solches Modul „Text“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>

Betriebssysteme

Bei den meisten Betriebssystemen kann ein 64-Bit-Kernel nur 64-Bit-Treiber, inklusive (U)EFI-Treiber, verwenden, sowie ein 32-Bit-Kernel nur Treiber, die ebenfalls in 32-Bit vorliegen. Daher ergibt sich oft, dass aus einer 32-Bit-(U)EFI-Firmware nur ein 32-Bit-Betriebssystem gestartet und aus einer 64-Bit-(U)EFI-Firmware nur ein 64-Bit-Betriebssystem gestartet werden kann (z. B. bei Microsoft Windows und den meisten Linux-Distributionen). Dennoch verhindert ein 32/64-Bit-(U)EFI nicht prinzipiell den Start eines 64/32-Bit-Betriebssystems; beispielsweise beherrscht der Bootloader der verbreiteten Linux-Distribution Fedora den Start eines 64-Bit-Linux auf einem System mit lediglich 32-Bit-UEFI.

Itanium (IA-64)

Die Itanium-Architektur von Intel und HP, auch unter der Abkürzung IA-64 („Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden. 64-Bit“) bekannt, war die erste Computer-Architektur, auf der EFI als Firmware eingesetzt wurde. Daher unterstützen Betriebssysteme, die auf Itanium-Rechnern laufen, zumindest den Teil, der zum Laden des Betriebssystems selbst zum Einsatz kommt. Darunter fallen die IA-64-Versionen von FreeBSD, HP-UX, Linux, NetBSD, OpenVMS und Windows (Windows 2000 bis Server 2008 R2).

Skriptfehler: Ein solches Modul „Vorlage:Anker“ ist nicht vorhanden.x86 (IA-32, x64)

Die x86-Architektur wurde von Intel retronym als IA-32 bezeichnet, was für „Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden. 32-Bit“ steht. Allerdings wurde die Architektur mit der x64-Befehlssatzerweiterung 2003 ebenfalls zur 64-Bit-Architektur.

Skriptfehler: Ein solches Modul „Vorlage:Siehe auch“ ist nicht vorhanden.

Windows

Für Endanwender unterstützt Windows (U)EFI vor allem in den 64-Bit-Varianten ab Windows Vista mit integriertem Service Pack 1 bzw. Windows Server 2008; einige Windows-32-Bit-Versionen unterstützen auch UEFI-32-Bit.<ref>[Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden.] (DOC; 126 kB) In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Microsoft, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden., archiviert vom Vorlage:Referrer (nicht mehr online verfügbar) am 2009-01-29; (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.).Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>

Für den Windows-7-Nachfolger Windows 8 wird UEFI 2.x empfohlen. Systeme mit Systemplatten größer als 2 Terabyte und Systeme mit Arm-Prozessor benötigen UEFI zwingend.<ref>Abschied vom PC-BIOS – Meldung bei der c’t, vom 3. Juni 2011</ref>

Alle Windows-Versionen vor Vista für die x86-Architektur funktionieren nur dann auf (U)EFI-Mainboards, wenn eine BIOS-Kompatibilitätsschicht (CSM) vorhanden ist. Diese wurde auch z. B. von Macintosh-Computern mit Intel-Prozessor, „Intel-Macs“ (ab 2006), bereitgestellt, ist aber auch Bestandteil der meisten aktuellen UEFI-Implementierungen auf PC-Mainboards bis 2020.<ref>Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.</ref><ref>Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.</ref>

Welche Firmware aktuell läuft, lässt sich mit dem Befehl %windir%\system32\bcdedit als Admin abfragen.

Linux

EFI wird auch von Linux unterstützt. Der stabile Zweig des Linux-Kernels bietet ab Version 2.6.25 (2008) auch für die x86-Architektur Unterstützung für EFI.<ref>heise open: Kernel 2.6.25 unterstützt nun auch auf der x86-Architektur den designierten BIOS-Nachfolger EFI</ref>

Seit dem Erscheinen der ersten Itanium-Systeme entwickelt HP den Bootloader elilo. Dieser war zwar anfänglich nur für IA-64 (Itanium) ausgelegt, wurde dann aber auch auf IA-32 (x86) und x86-64 (x64) portiert. GRUB 2 unterstützt EFI-PCs ebenfalls.

Fedora unterstützt ab Version 17 EFI in der Installation und richtet das System entsprechend ein, um mit EFI arbeiten zu können. Debian unterstützt EFI ab Version 7.0 Wheezy mit einem eigenen Bootloader. Der Fedora-Bootloader kann auf einem 64-Bit-fähigen System mit lediglich 32-Bit-UEFI dennoch ein 64-Bit-Linux installieren und starten,<ref name="fedora64on32uefi">Fedora x64 auf 32-Bit-UEFI: c’t Nr. 23/2018 S. 144</ref> was die meisten anderen Linux-Distributionen nicht beherrschen.<ref name="heiseonline_4486560">Vorlage:Heise online</ref>

Skriptfehler: Ein solches Modul „Vorlage:Anker“ ist nicht vorhanden.macOS (Mac OS X)

Die im Januar 2006 vorgestellten und alle nachfolgenden Apple-Macintosh-Rechner mit macOS (das ursprünglich „Mac OS X“ und von 2012 bis 2016 „OS X“ hieß), die auf x86-Prozessoren von Intel basieren, verwenden EFI als Firmware.<ref><templatestyles src="Webarchiv/styles.css" />Skriptfehler: Ein solches Modul „Webarchiv“ ist nicht vorhanden. (Memento vom 3. Januar 2009 im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/Linktext_fehltVorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref> Damit sind sie – zusammen mit einigen Media-Center-PCs wie etwa dem Gateway 610 aus dem Jahr 2003 – die ersten EFI-basierten Massenmarktcomputer. Die ausschließliche Nutzung des EFI ohne die optionale BIOS-Kompatibilitätsschicht CSM verhinderte zunächst das Booten von Windows XP auf Intel-basierten Macintosh-Rechnern. Bald wurde aber durch das Projekt xom eine BIOS-Emulation implementiert, die das Starten von Windows ermöglichte.

Apple rüstete den „BIOS Layer“ (CSM) nach einigen Monaten durch eine Firmware-Aktualisierung nach und bot bis Mitte Oktober 2007 eine kostenlose, „Boot Camp“ genannte Lösung an, die es ermöglichte, Mac OS X und Windows XP auf zwei Partitionen desselben Rechners zu installieren und durch Neustart (Booten) zwischen den Betriebssystem hin- und herzuwechseln („Dualboot-Lösung“). Seit Erscheinen von Mac OS X Leopard (10.5, 2007) ist Boot Camp standardmäßig auf allen Intel-Macs vorinstalliert. Die Beta-Version von Boot Camp, die auch auf Mac OS X Tiger (10.4, 2005) lief, ist inzwischen offiziell nicht mehr verfügbar.

Mit EFi-X erschien im Sommer 2008 nachrüstbare Firmware für PCs, mit der die Installation von OS X von einer unmodifizierten, handelsüblichen Original-DVD auf ausgewählter Hardware anderer Hersteller ermöglicht wird, die sich hauptsächlich aus einer Kombination von Gigabyte-Hauptplatinen mit bestimmten Nvidia- und ATI-Grafikkarten zusammensetzt. Die EFi-X-Firmware ist dabei auf einem USB-Dongle untergebracht, der auf einen internen USB-Steckplatz der Hauptplatine gesteckt wird. Beim Systemstart werden daraufhin eine EFI-Emulation und ein „Multiboot-Manager“ geladen, über den neben OS X auch Windows XP, Vista oder Linux gestartet werden können.<ref>[Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden.] In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Archiviert vom Vorlage:Referrer (nicht mehr online verfügbar) am 2008-06-26; (Skriptfehler: Ein solches Modul „Multilingual“ ist nicht vorhanden.).Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref>

Mittlerweile gibt es auch den Bootloader Chameleon,<ref>Chameleon</ref> mit dem der macOS-Kernel direkt geladen werden kann, oder Clover,<ref>Clover EFI bootloader</ref> welcher ein Macintosh-EFI vollständig softwareseitig emuliert.

Ebenso gibt es Ozmosis-Firmware, die einen Plattform-Treiber für macOS darstellt. Ein Dual-BIOS wie auf Gigabyte-Mainboards wird empfohlen, da dort die Gefahr des „Brickens“ minimiert ist. macOS lässt sich von einem solchen PC direkt starten.

Kritik

EFI wurde dafür kritisiert, mehr Komplexität ins System zu bringen, ohne nennenswerte Vorteile zu bieten,<ref name="kt_linus"><templatestyles src="Webarchiv/styles.css" />Skriptfehler: Ein solches Modul „Webarchiv“ ist nicht vorhanden. (Memento vom 8. Oktober 2006 im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/Linktext_fehltVorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref> und das vollständige Ersetzen durch Open-Source-Alternativen wie OpenBIOS oder coreboot unmöglich zu machen.<ref>Interview: Ronald G Minnich</ref> Es löse nicht eines der langjährigen Probleme des BIOS – nämlich, dass die meiste Hardware zwei unterschiedliche Treiber benötigt.<ref name="gtt_coreboot">Google TechTalks: coreboot (aka LinuxBIOS): The Free/Open-Source x86 Firmware auf YouTube, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden., abgerufen am Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden. (Laufzeit: 65:39 min).Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref> Es sei nicht klar, warum es nützlich sein soll, zwei komplett unterschiedliche Betriebssysteme gleichzeitig in Betrieb zu haben, die im Grunde dieselben Aufgaben erledigen, oder warum ein neues Betriebssystem von Grund auf neu geschrieben werden müsste.<ref name="gtt_coreboot" />

EFI gilt einem Entwickler von coreboot zufolge in sicherheitskritischen Einsatzumgebungen – wie etwa in Banken – als ein mögliches Sicherheitsrisiko, da etwa mit dem implementierten Netzwerkstack die theoretische Möglichkeit bestünde, Daten unbemerkt vom Betriebssystem an eine beliebige Adresse zu senden. Der eigene Netzwerkstack für TCP/IP, der „unterhalb“ vom Betriebssystem direkt und unabhängig auf der Hauptplatine läuft, ermöglicht es, das System zu manipulieren, zu infizieren oder zu überwachen, ohne dass man es betriebssystemseitig kontrollieren oder einschränken könnte. Auch für DRM-Zwecke könnte EFI benutzt werden, um etwa den I/O-Datenstrom auf digitale Wasserzeichen hin zu überwachen. Aus diesen Gründen plädieren einige Anwender für ein quelloffenes System wie coreboot (ehemals LinuxBIOS).<ref name="kt_linus" /><ref>GeekVideo: LinuxBIOS – building a BIOS for fun and not-profit auf YouTube, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden., abgerufen am Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden. (Laufzeit: 4:39 min).Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref><ref><templatestyles src="Webarchiv/styles.css" />Skriptfehler: Ein solches Modul „Webarchiv“ ist nicht vorhanden. (Memento vom 10. Januar 2015 im Internet Archive)Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.Vorlage:Webarchiv/Wartung/Linktext_fehltVorlage:Webarchiv/Wartung/URLSkriptfehler: Ein solches Modul „TemplUtl“ ist nicht vorhanden.</ref>

Programm- und Implementierungsfehler

Fehlerhafte Implementationen von UEFI haben bei mehreren Herstellern zu irreparablen Schäden an Systemen geführt. Im Juni 2013 wurden Notebooks von Samsung beim Bootvorgang mit Linux eingefroren, sobald das Betriebssystem schreibend auf die UEFI-Firmware zugriff. Das Mainboard wurde dadurch unlösbar blockiert.<ref>Skriptfehler: Ein solches Modul „Vorlage:Literatur“ ist nicht vorhanden.</ref> Anfang 2014 trat das gleiche Problem bei Geräten von Lenovo auf sowie Ende 2015 bei Geräten von Asus.<ref>heise.de: Fehlerhafte UEFI-Firmware: Linux killt Thinkpads, 5. Februar 2014</ref><ref>superuser.com: UEFI-Implementation-Issue (can lead to a hard-brick) – ASUS Zenbook UX303LA-R4342H (englisch), 5. Oktober 2015</ref>

Sicherheitslücken

Da im Unterschied zum traditionellen BIOS und manchen konkurrierenden Ansätzen UEFI eine Netzwerkimplementierung enthält, von der ein Teil (das Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden., DXERuntime) im Hintergrund aktiv bleibt, während am Computer bereits das Betriebssystem läuft, besteht ein zusätzliches Risiko, von Schadsoftware angegriffen zu werden. Es gibt dokumentierte Fälle, in denen Programmierfehler oder Fehler beim Paketieren der EFI-Software zu Schwachstellen führten.<ref>UEFI vs. legacy BIOS, osdev.org, zugegriffen 2022-10-10.</ref><ref>Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Ehemals im Vorlage:Referrer (nicht mehr online verfügbar);: Skriptfehler: Ein solches Modul „Text“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref><ref>What’s The Deal With UEFI?, Matthew Carlson, hackaday.com, 2021-11-30.</ref><ref>Lenovo UEFI firmware driver bugs affect over 100 laptop models, bleepingcomputer, 2022-04-19.</ref><ref>CosmicStrand UEFI malware found in Gigabyte, ASUS motherboards, BLEEPINGCOMPUTER, Ionut Ilascu, 2022-05-25.</ref><ref>APT28 Uses LoJax, First UEFI Rootkit Seen in the Wild, BLEEPINGCOMPUTER, Ionut Ilascu, 2018-09-27.</ref> Auch der Skriptfehler: Ein solches Modul „Vorlage:lang“ ist nicht vorhanden. (SMM) kann bei Programmfehlern im UEFI zur Installation von Schadsoftware genutzt werden („BIOS-Rootkits“).<ref name="heiseonline_6346108">Mark Mantel: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. In: Skriptfehler: Ein solches Modul „Vorlage:Internetquelle“ ist nicht vorhanden. Heise online, Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.; ehemals im Vorlage:Referrer (nicht mehr online verfügbar);: Skriptfehler: Ein solches Modul „Text“ ist nicht vorhanden.Skriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden.</ref> Zur Absicherungen gegen gefundene Sicherheitslücken ist man allerdings darauf angewiesen, dass der Hersteller auch Updates bereitstellt, was nicht immer zeitnah geschieht.<ref name="heiseonline_2430455">Vorlage:Heise online</ref><ref name="heiseonline_2442775">Vorlage:Heise online</ref>

Weblinks

Commons: Extensible Firmware Interface – Sammlung von Bildern, Videos und Audiodateien

Vorlage:Wikidata-Registrierung

Einzelnachweise

<references />