Поделиться через


Ввод-вывод устройства из среды UEFI

Когда загрузчик ОС Windows вызывает функцию UpdateCapsule, выполняется каждая капсула, содержащаяся в CapsuleHeaderArray. Порядок выполнения капсулы зависит от реализации встроенного ПО UEFI, и капсула не может делать никаких предположений относительно порядка ее выполнения относительно других капсул или принимать какие-либо зависимости от других капсул. Каждая капсула представляет собой автономные полезные данные, состоящие из исполняемого кода UEFI для управления обновлением и образа встроенного ПО.

При вызове капсулы исполняемый код, содержащийся в капсуле, отвечает за открытие канала связи с целевым устройством. Соответствующий канал будет зависеть от топологии устройства системы, возможностей целевого устройства, а также служб загрузки UEFI и драйверов, предоставляемых конкретной реализацией UEFI. Разработчикам капсул может потребоваться проконсультироваться с поставщиком BIOS UEFI о вариантах, доступных в целевой среде UEFI. Как правило, связь устанавливается путем использования драйвера устройства UEFI для данного устройства. Этот драйвер позволяет коду обновления капсулы привязаться к устройству через известный путь устройства с использованием соответствующего протокола.

После установления связи код управления обновлениями записывает образ встроенного ПО на целевое устройство. После завершения обновления соответствующий код состояния возврата записывается в запись ресурса встроенного ПО устройства в ESRT. Затем код управления обновлениями возвращает управление функции UpdateCapsule.

Дополнительные сведения о функции UpdateCapsule, структуре капсулы и драйверах и протоколах служб загрузки UEFI см. в спецификации UEFI.

Определение таблицы ESRT

Устройство plug and play

Создание пакета драйвера обновления

Обработка обновлений

Простое предотвращение и восстановление кризисов

Состояние обновления встроенного ПО