Udostępnij przez


Tworzenie pakietu aktualizacji oprogramowania układowego

Każdy pakiet aktualizacji oprogramowania układowego zawiera jeden plik binarny zawierający cały ładunek oprogramowania układowego (na przykład firmware.bin) oraz wykaz zabezpieczeń używany przez system Windows do sprawdzania poprawności firmware.bin. Aby uzyskać więcej informacji na temat katalogów zabezpieczeń i sterowników, zobacz Pliki katalogu i Podpisy cyfrowe oraz Tworzenie pliku katalogu dla pakietu sterowników PnP .

Pakiety aktualizacji oprogramowania układowego muszą być w stanie aktualizować co najmniej jeden z następujących typów oprogramowania układowego:

  • Oprogramowanie układowe systemu UEFI.

  • Oprogramowanie układowe dla jednego urządzenia w systemie.

Zaleca się, aby każdy pakiet aktualizacji oprogramowania układowego był przeznaczony dla pojedynczego zasobu oprogramowania układowego (oprogramowania układowego UEFI lub jednego urządzenia), ale może istnieć sytuacja, w której korzystne jest posiadanie pojedynczego pakietu aktualizacji oprogramowania układowego, który aktualizuje zarówno oprogramowanie układowe systemu, jak i co najmniej jedno urządzenie.

Urządzenie nie może być objęte więcej niż jednym pakietem aktualizacji oprogramowania układowego. Jeśli urządzenie jest objęte pakietem aktualizacji oprogramowania układowego, który zawiera również oprogramowanie układowe systemu, nie może być objęte przez drugi pakiet aktualizacji oprogramowania układowego przeznaczony tylko dla urządzenia.

  1. Aby umożliwić pakietowi aktualizacji oprogramowania układowego ukierunkowanie aktualizacji oprogramowania układowego na odpowiedni sprzęt systemowy, system Windows przedstawia wystąpienie urządzenia dla każdego wpisu w ESRT, gdzie takie wystąpienie urządzenia uwidacznia identyfikator sprzętu, który identyfikuje go jako należący do wpisu ESRT.

  2. Po zainstalowaniu pakietu aktualizacji oprogramowania układowego jest on przetwarzany przez system Windows jako pakiet sterowników. System Windows skopiuje ładunek oprogramowania układowego każdego pakietu aktualizacji do bezpiecznej lokalizacji w katalogu System, przygotuje system do wykonania aktualizacji oprogramowania układowego i wyzwoli system w celu ponownego uruchomienia systemu.

    System Windows nie obsługuje zależności między pakietami sterowników. W związku z tym podczas tworzenia nowego pakietu aktualizacji oprogramowania układowego należy przestrzegać następujących wymagań:

    • Pakiet aktualizacji oprogramowania układowego musi być możliwy do pomyślnej instalacji samodzielnie, bez zależności od oprogramowania układowego urządzenia, systemu lub innych pakietów aktualizacji oprogramowania układowego.

    • Zaleca się, aby każdy pakiet aktualizacji był przeznaczony dla jednego urządzenia w systemie lub do oprogramowania układowego systemu UEFI (zdefiniowanego w narzędziu ESRT).

    • Każdy pakiet aktualizacji musi zawierać jeden plik binarny aktualizacji oprogramowania układowego (na przykład firmware.bin).

  3. Ładunek aktualizacji oprogramowania układowego w każdym pakiecie aktualizacji musi być zawarty w jednym pliku binarnym. Po ponownym uruchomieniu systemu moduł ładujący systemu operacyjnego ładuje każdy plik binarny aktualizacji oprogramowania układowego dla każdego pakietu aktualizacji oprogramowania układowego do pamięci fizycznej i tworzy tablicę wskaźników do każdego pliku ładunku aprowizowanego do instalacji (specyfikacja UEFI 2.3.1 odnosi się do tej tablicy jako CapsuleHeaderArray).

  4. Ta tablica jest przekazywana w wywołaniu funkcji EFI UpdateCapsule(). Funkcja UpdateCapsule() jest używana jako skrzynka pocztowa, przekazując ładunek aktualizacji oprogramowania układowego każdego pakietu sterowników do oprogramowania układowego platformy.

  5. Każda kapsuła (ładunek aktualizacji oprogramowania układowego) jest identyfikowana przez identyfikator oprogramowania układowego określony przez wpis ESRT dla zasobu oprogramowania układowego.

  6. Po otrzymaniu każdego pakietu aktualizacji oprogramowania układowego, żądanie aktualizacji jest przetwarzane i stosowane, jeśli ma zastosowanie.

    Każdy wpis w CapsuleHeaderArray jest pojedynczym, ciągłym blokiem danych zawierającym dane aktualizacji oprogramowania układowego z pakietu sterowników dla jednego urządzenia w systemie. Dla każdego docelowego zasobu oprogramowania układowego ładunek aktualizacji oprogramowania układowego musi zawierać obraz oprogramowania układowego i wszystkie informacje wymagane przez platformę do weryfikacji.

    Ładunek oprogramowania układowego dla wszystkich pakietów sterowników aktualizacji oprogramowania układowego jest przekazywany do oprogramowania układowego platformy za pośrednictwem usługi UEFI UpdateCapsule. Ze względu na to, że zintegrowane urządzenia będą pochodzić od różnych dostawców IHV, system OEM (i ewentualnie producent SoC) będzie musiał pracować bezpośrednio z tymi dostawcami, aby upewnić się, że aktualizacje oprogramowania układowego urządzenia są tworzone odpowiednio dla danego systemu. Ponadto system OEM musi mieć pewność, że wpisy ESRT zezwalają na stosowanie pakietów UpdateCapsule do odpowiednich systemów.

    Na przykład kilka OEM może wybrać ten sam model urządzenia Mobile Broadband (MBB) dla swoich systemów. Mimo że urządzenie MBB jest identyczne w każdym systemie, każdy OEM musi współpracować z mbB IHV, aby utworzyć pakiet aktualizacji oprogramowania układowego dostosowany do ich systemu. Ten poziom dostosowywania aktualizacji oprogramowania układowego urządzenia jest niezbędny do rozwiązywania zmiennych w systemach OEM.

    • Adresowanie urządzenia może się różnić w zależności od soC wybranej przez producenta OEM i sposobu połączenia urządzenia z soC.

    • System OEM może sprzedawać system wielu operatorom sieci komórkowej (MNO) na potrzeby odsprzedaży użytkownikom. Urządzenie MBB musi być zgodne z MNO, wymagając, aby oprogramowanie układowe było dostosowane i certyfikowane według wymagań określonego MNO.

    • System może być sprzedawany na wielu rynkach na całym świecie, z których każdy ma różne przepisy RF i przydziały częstotliwości radiowej. Oprogramowanie układowe urządzenia MBB może wymagać dostosowania w celu spełnienia tych wymagań rynkowych.

    Każda jednostka OEM musi dokładnie rozważyć takie wymagania specyficzne dla urządzenia i podjąć niezbędne kroki, aby upewnić się, że oprogramowanie układowe urządzenia może być odpowiednio ukierunkowane i aktualizowane. Wymaga to starannego zarządzania wpisami ESRT w celu zapewnienia prawidłowego wdrożenia oprogramowania układowego urządzenia.

  7. Po utworzeniu pakietu aktualizacji należy przesłać go do firmy Microsoft w celu certyfikacji i podpisywania.

Aktualizacje firmware systemu i urządzenia za pośrednictwem pakietu sterowników firmware

Wypełnianie tabeli ESRT

Dostosowywanie oprogramowania układowego dla różnych regionów geograficznych

certyfikowanie i podpisywanie pakietu aktualizacji

Instalowanie aktualizacji