Windows UEFI-Firmwareupdateplattform
Windows unterstützt eine Plattform zum Installieren von System- und Gerätefirmwareupdates über Treiberpakete, die mit der UEFI-Funktion UpdateCapsule verarbeitet werden. Diese Plattform bietet eine konsistente, zuverlässige Firmwareupdateerfahrung und verbessert die Auffindbarkeit wichtiger Systemfirmwareupdates für Endbenutzer.
Der Leitfaden zur UEFI-Firmwareupdateplattform richtet sich an SoC-Anbieter und OEMs, die Hardwareplattformen erstellen, auf denen Windows ausgeführt wird. Die UEFI-Firmwareupdateplattform wird von den folgenden Betriebssystemversionen unterstützt:
Windows 8
Windows 8.1
Windows 10-Desktopeditionen (Home, Pro, Enterprise und Education)
Unterstützung für UEFI-Firmwareupdates in Windows 10
Alle Systeme, auf denen Windows 10 für Desktopeditionen ausgeführt werden, sollten UEFI-Firmwareupdates implementieren, indem sie dem updateCapsule-basierten Updateprozess folgen, der in diesem Abschnitt der Dokumentation beschrieben wird.
Übersicht über die UEFI-Firmwareupdateplattform
Es gibt zwei Arten von Firmware, die über Windows gewartet werden können: Systemfirmware und Gerätefirmware. Die Systemfirmware ist für die Bereitstellung kritischer Start- und Laufzeitdienste für das gesamte System verantwortlich, und die Gerätefirmware ist einem bestimmten Gerät zugeordnet, das in ein System integriert ist. Eine solche Gerätefirmware arbeitet in der Regel mit einem Gerätetreiber zusammen, sodass das Betriebssystem das Gerät für Dienste und Anwendungen auf Betriebssystemebene verfügbar machen kann.
Updates der Systemfirmware
Systemfirmwareupdates für UEFI-basierte Systeme werden als Gerätetreiberpakete (INFs) bereitgestellt. Windows verwendet die von der Plattform bereitgestellten Informationen, um sicherzustellen, dass das Updatepaket nur für die entsprechenden Systeme gilt. Ein Firmwareupdatepaket enthält eine Binärdatei, die das Systemfirmwareimage enthält. Nachdem sich das Firmwareupdatepaket auf dem System des Endbenutzers befindet, verwendet Windows die UEFI UpdateCapsule-Funktion, um die Firmwarenutzlast zur Verarbeitung an die Plattformfirmware zu übergeben.
Die Bereitstellung des Updates als Treiberpaket ermöglicht es dem Firmwareupdateprozess, sich an vielen vorhandenen Bereitstellungs- und Wartungstools auszurichten, und gewährleistet eine einfache Erstellung von Updatepaketen für Hardwareanbieter.
Obwohl das Firmwareupdate als Treiberpaket bereitgestellt wird, bedeutet dies nicht, dass das Update als tatsächlicher Treiber geschrieben wird. Das Treiberpaket enthält eine INF-Datei und eine Binärdatei, die das System- oder Gerätefirmwareimage enthält.
Gerätefirmwareupdates
Zum Aktualisieren der Gerätefirmware kann die Gerätefirmware einer der folgenden beiden Kategorien zugewiesen werden:
UEFI-aktualisierbare Gerätefirmware.
Diese Gerätefirmware kann mithilfe eines Gerätetreiberpakets mit demselben Mechanismus wie die Systemfirmware aktualisiert werden. Ein Gerätefirmwareupdate wird als Firmwareupdatepaket verteilt. Nachdem sich das Firmwareupdatepaket auf dem System des Endbenutzers befindet, verwendet Windows die UEFI UpdateCapsule-Funktion, um die Gerätefirmwarenutzlast zur Verarbeitung an die Plattformfirmware zu übergeben. Dieser Prozess ist identisch mit der Händigung der Nutzlast von Systemfirmwareupdates durch Windows und wird unten erläutert.
Es wird empfohlen, die Gerätefirmware mithilfe eines separaten Firmwareupdatetreiberpakets zu aktualisieren. Die Gerätefirmware kann jedoch auch mit der Systemfirmware als Teil eines einzelnen Firmwareupdatetreiberpakets aktualisiert werden.
UEFI sollte nicht zum Aktualisieren von Peripheriegeräten verwendet werden. UEFI erfordert, dass Geräte während des Neustarts vorhanden sind, um ein Firmwareupdate anzuwenden, das mit (externen, wechselbaren) Peripheriegeräten nicht garantiert werden kann.
Treiber-aktualisierbare Gerätefirmware.
Diese Gerätefirmware kann vom Gerätetreiber während der normalen Windows-Betriebssystemlaufzeit aktualisiert werden. Das Aktualisieren der Gerätefirmware mit normalen Windows-Betriebssystemtreibern wird in diesem Dokument nicht behandelt.
Systemanforderungen für Windows-Firmwareupdates
Damit ein System mit dem Updatemechanismus der Windows-Firmware kompatibel ist, muss es die folgenden Anforderungen erfüllen:
Das System muss UpdateCapsule und QueryCapsuleCapabilities implementieren, wie in Abschnitt 8.5.3 der UEFI-Spezifikation 2.8 definiert.
UpdateCapsule wird verwendet, um die Firmwareupdatenutzlast zwischen Windows und der Plattformfirmware zu übergeben.
Plattformfirmware muss von Windows initiierte Firmwareupdates unterstützen.
Die Systemfirmware und einige Klassen der Gerätefirmware müssen mithilfe dieses Prozesses aktualisierbar sein. Der Firmwarecode erkennt eine an UpdateCapsule übergebene Firmwareupdatenutzlast und initiiert den Updateprozess. Die Implementierung befindet sich im Besitz des Partners.
Muss eine Firmwareressource in der EFI-Systemressourcentabelle (ESRT) angeben.
Mit der Firmwareressource kann Windows ein Gerät instance mit einer Hardware-ID anzeigen, die verwendet wird, um das Update der System- oder Gerätefirmware auf die entsprechenden Systeme und Geräte zu richten. Außerdem wird die aktuelle Firmwareversion beschrieben und status für vorherige Updates bereitgestellt.
Es gibt einen einzelnen Eintrag für Systemfirmwareupdates. Alle Geräte mit aktualisierbarer Firmware müssen über eine im ESRT angegebene Ressource verfügen, es sei denn, die Firmware eines Geräts wird im Rahmen eines Systemfirmwareupdates aktualisiert.
Weitere Informationen finden Sie unter ESRT-Tabellendefinition.