Aracılığıyla paylaş


Güncelleştirmeleri işleme

Tüm üretici yazılımı güncelleştirme paketleri uygulandıktan ve sistem daha sonra yeniden başlatıldıktan sonra, Windows işletim sistemi yükleyicisi tüm üretici yazılımı yük dosyalarını (bu örnekte firmware.bin) fiziksel belleğe yükler. Windows işletim sistemi yükleyicisi, UEFI UpdateCapsule çağrılırken kullanılacak GUID ve bayrakları açıklayan her güncellemenin ilgili ESRT kaydındaki bilgileri kullanarak kapsül başlıklarını oluşturur. Her kapsül başlığının bayraklar alanını ayarladığında, Windows işletim sistemi yükleyicisi her zaman CAPSULE_FLAGS_PERSIST_ACROSS_RESET ve CAPSULE_FLAGS_INITIATE_RESET ayarlar. Sürücü paketi için INF'de kapsül bayrağı belirtildiyse, Windows işletim sistemi yükleyicisi ek olarak DEVICE_FIRMWARE üretici yazılımı türleri için CAPSULE_FLAGS_POPULATE_SYSTEM_TABLE ayarlayabilir. Özel kapsül bayrakları da INF'de belirtilebilir ve belirtildiğinde UEFI UpdateCapsule çağrılırken ek olarak eklenir

ESRT tablo tanımı'deki ESRT örneğine ve Güncelleştirme sürücü paketi yazma'teki üretici yazılımı kaynak güncelleştirme sürücü paketi INF örneğine bakılarak, Windows işletim sistemi yükleyicisinin UpdateCapsule'a geçirmek için oluşturduğu kapsül başlıkları aşağıdaki gibi olacaktır.

Saha Değer Yorum
CapsuleGuid {Sistem Donanımı Yazılımı} İlgili ESRT kaynak girişinin FirmwareClass sınıfından.
Başlık Boyutu ... Başlangıç firmware.bin sayfa hizalamak için doldurulur.
Bayrak 0x50000 Kalıcı olarak devam edin ve sıfırlamayı başlatın.
KapsülGörüntüBoyutu ... Kapsül Başlığı Boyutu + firmware.binboyutu.

Bu örnekte, ESRT tablosunda tanımlanan iki cihazdan yalnızca birinin yeni bir üretici yazılımı kaynak güncelleştirme sürücü paketi yüklediğini unutmayın. İkinci cihaz için Tablo 2'de bir üretici yazılımı kaynak güncelleştirme sürücü paketi yazıldıysa ve ilgili üretici yazılımı kaynak cihazına yüklendiyse, aşağıdaki gibi ikinci bir kapsül üst bilgisi oluşturulur:

Saha Değer Yorum
CapsuleGuid {DEVICE_FIRMWARE} İlgili ESRT kaynak girişinin FirmwareClass'ından.
Başlık Boyutu ... CİHAZ.BIN başlangıcını sayfa hizalamak için dolguyla ayarlandı.
Bayrak 0x50000 İlgili ESRT kaynak girişinin CapsuleFlags'ından 0x8010 ile OR işlemine tabi tutulan sistem tablosunu kalıcı hale getirin, başlatın, sıfırlayın ve doldurun.
KapsülGörüntüBoyutu ... Kapsül Başlık Boyutu + DEVICE.BIN boyutu.

Windows işletim sistemi yükleyicisi bekleyen tüm üretici yazılımı güncelleştirmelerini yükledikten ve bunları tanımlamak için gerekli veri yapılarını oluşturduktan sonra, ExitBootServices'i çağırmadan önce UpdateCapsule çalışma zamanı hizmetini çağırır.

Platform üretici yazılımı, depolama cihazı da dahil olmak üzere tüm cihazlar için özel denetime sahip olduğunda UpdateCapsule, ExitBootServices'den önce çağrılır. UpdateCapsule platform üretici yazılımı uygulaması, bir güncellemeyi hazırlamak veya bir kurtarma geri alımını desteklemek için üretici yazılımı güncelleme yüklerini kalıcı depolama alanına kaydedebilir.

ESRT tablo tanımı

Tak çalıştır cihazı

Güncelleştirme sürücüsü paketi yazma

UEFI ortamından Cihaz G/Ç

sorunsuz kriz önleme ve kurtarma

Üretici yazılımı güncelleme durumu