Jump to content

УЕФИ

(Перенаправлено из Протокола вывода графики )

Единый расширяемый интерфейс прошивки
Аббревиатура УЕФИ
Статус Опубликовано
Год начался 2006 [а]
Последняя версия 2.10
29 августа 2022 г.
Организация Форум UEFI
Сопутствующие стандарты ACPI , инициализация платформы UEFI
Предшественник совместимый с IBM PC BIOS,
Домен Прошивка
Веб-сайт УЭФИ .org
Меню выбора порядка загрузки на Lenovo ThinkPad T470 с UEFI
Реализация UEFI обычно хранится в NOR на основе EEPROM , расположенном на материнской плате . Они могут использовать разные протоколы ввода-вывода, но SPI является наиболее распространенным.

Единый расширяемый интерфейс прошивки ( UEFI , / ˈ juː ɪ f / или как аббревиатура) [б] спецификация , определяющая архитектуру платформы, микропрограммы используемой для загрузки аппаратного обеспечения компьютера, и ее интерфейс взаимодействия с операционной системой . Примерами прошивок, реализующих данную спецификацию, являются AMI Aptio , Phoenix SecureCore , TianoCore EDK II , InsydeH2O . UEFI заменяет BIOS , который присутствовал в загрузочном ПЗУ всех персональных компьютеров , совместимых с IBM PC . [1] [2] хотя он может обеспечить обратную совместимость с BIOS при использовании загрузки CSM . Intel разработала оригинальную спецификацию расширяемого интерфейса прошивки ( EFI ). Некоторые методы и форматы данных EFI повторяют методы Microsoft Windows . [3] [4] В 2005 году UEFI прекратил поддержку EFI 1.10 (последняя версия EFI).

UEFI не зависит от платформы и языка программирования, но C. для эталонной реализации TianoCore EDKII используется

В отличие от своего предшественника BIOS, который является стандартом де-факто, первоначально созданным IBM как проприетарное программное обеспечение, UEFI является открытым стандартом, поддерживаемым отраслевым консорциумом .

Первоначальная мотивация для EFI возникла во время ранней разработки первых систем Intel–HP Itanium в середине 1990-х годов. Ограничения BIOS (такие как 16-битный реальный режим , адресная память 1 МБ, [5] программирование на языке ассемблера и аппаратное обеспечение PC AT ) стали слишком ограничительными для более крупных серверных платформ, на которые ориентировался Itanium. [6] Попытки решить эти проблемы начались в 1998 году и первоначально назывались Intel Boot Initiative . [7] Позже он был переименован в Extensible Firmware Interface (EFI). [8] [9]

Первая реализация UEFI с открытым исходным кодом , Tiano, была выпущена Intel в 2004 году. С тех пор Tiano был заменен EDK. [10] и ЭДК2 [11] и сейчас поддерживается сообществом TianoCore. [12]

В июле 2005 года Intel прекратила разработку спецификации EFI версии 1.10 и представила ее на Unified EFI Forum , который разработал спецификацию как Unified Extensible Firmware Interface (UEFI). Исходная спецификация EFI по-прежнему принадлежит Intel, которая предоставляет лицензии исключительно для продуктов на основе EFI, но спецификация UEFI принадлежит UEFI Forum. [6] [13]

Версия 2.0 спецификации UEFI была выпущена 31 января 2006 года. В нее добавлены криптография и безопасность.

Версия 2.1 спецификации UEFI была выпущена 7 января 2007 года. В нее добавлена ​​сетевая аутентификация и архитектура пользовательского интерфейса («Инфраструктура человеческого интерфейса» в UEFI).

В октябре 2018 года компания Arm анонсировала Arm ServerReady — программу сертификации соответствия требованиям для размещения стандартных готовых операционных систем и гипервизоров на серверах на базе Arm. Программа требует, чтобы встроенное ПО системы соответствовало базовым требованиям к загрузке сервера (SBBR). SBBR требует соответствия UEFI, ACPI и SMBIOS . В октябре 2020 года Arm объявила о расширении программы на рынок периферийных устройств и Интернета вещей . Новое имя программы — Arm SystemReady . Arm SystemReady определила спецификацию базовых требований к загрузке ( BBR ), которая в настоящее время предоставляет три рецепта, два из которых связаны с UEFI: 1) SBBR: требует соответствия UEFI, ACPI и SMBIOS, подходящего для операционных сред корпоративного уровня, таких как Windows, Red Hat Enterprise. Linux и VMware ESXi; и 2) EBBR: требуется соответствие набору интерфейсов UEFI, как определено в Требованиях к встроенной базовой загрузке ( EBBR ), подходящих для встроенных сред, таких как Yocto. Многие дистрибутивы Linux и BSD поддерживают оба рецепта.

В декабре 2018 года Microsoft анонсировала Project Mu, ответвление TianoCore EDK2, используемое в Microsoft Surface и Hyper-V продуктах . Проект продвигает идею « Прошивка как услуга» . [14]

Последняя спецификация UEFI, версия 2.10, была опубликована в августе 2022 года. [15]

Преимущества

[ редактировать ]

Интерфейс, определенный спецификацией EFI, включает таблицы данных, содержащие информацию о платформе, а также службы загрузки и выполнения, доступные загрузчику ОС и ОС. Прошивка UEFI обеспечивает несколько технических преимуществ по сравнению с BIOS: [16]

  • Возможность загрузки диска, содержащего большие разделы (более 2 ТБ ) с таблицей разделов GUID (GPT). [17] [с] [18]
  • Гибкая предоперационная среда, включая сетевые возможности, графический интерфейс, многоязычность
  • 32-битная (например, IA-32 , ARM32 ) или 64-битная (например, x64 , AArch64 ) среда до ОС
  • на языке Си Программирование
  • Программирование на Python с использованием интерпретатора Python для оболочки UEFI
  • Модульная конструкция
  • Обратная и прямая совместимость

Совместимость

[ редактировать ]

Совместимость процессоров

[ редактировать ]

Начиная с версии 2.5 существуют привязки процессоров для Itanium, x86, x86-64, ARM (AArch32) и ARM64 (AArch64). [19] только процессоры с прямым порядком байтов . Поддерживаются [20] Неофициальная поддержка UEFI для POWERPC64 находится в стадии разработки путем внедрения TianoCore поверх OPAL. [21] уровень абстракции OpenPOWER, работающий в режиме прямого порядка байтов. [22] Подобные проекты существуют для MIPS [23] и RISC-V . [24] Начиная с UEFI 2.7, привязки процессоров RISC-V официально установлены для 32-, 64- и 128-битных режимов. [25]

Стандартный BIOS ПК ограничен режимом 16-битного процессора и 1 МБ адресуемой памяти, что является результатом конструкции, основанной на IBM 5150 , в которой использовался 16-битный процессор Intel 8088 . [6] [26] Для сравнения, режим процессора в среде UEFI может быть либо 32-битным ( IA-32 , AArch32), либо 64-битным ( x86-64 , Itanium и AArch64). [6] [27] 64-битные реализации прошивки UEFI поддерживают длинный режим , который позволяет приложениям в среде предварительной загрузки использовать 64-битную адресацию для получения прямого доступа ко всей памяти машины. [28]

UEFI требует, чтобы размер прошивки и загрузчика операционной системы (или ядра) соответствовали; то есть 64-битная реализация прошивки UEFI может загружать только загрузчик или ядро ​​64-битной операционной системы (ОС) (если не используется устаревшая загрузка на основе CSM), и то же самое относится и к 32-битной версии. После перехода системы от «Служб загрузки» к «Службам выполнения» управление берет на себя ядро ​​операционной системы. На этом этапе ядро ​​может изменить режимы процессора, если пожелает, но это запрещает использование служб времени выполнения (если ядро ​​снова не переключится обратно). [29] : разделы 2.3.2 и 2.3.4 Начиная с версии 3.15, ядро ​​Linux поддерживает загрузку 64-битных ядер на 32-битных реализациях встроенного ПО UEFI, работающих на процессорах x86-64 , с поддержкой передачи обслуживания UEFI от загрузчика UEFI в качестве требования. [30] Протокол передачи обслуживания UEFI дедуплицирует код инициализации UEFI между ядром и загрузчиками UEFI, оставляя инициализацию выполняться только загрузочной заглушкой UEFI ядра Linux . [31] [32]

Совместимость дисковых устройств

[ редактировать ]

В дополнение к стандартной схеме разделов диска ПК, в которой используется основная загрузочная запись (MBR), UEFI также работает со схемой разделов таблицы разделов GUID (GPT), которая свободна от многих ограничений MBR. В частности, MBR ограничивает количество и размер разделов диска (до четырех основных разделов на диск и до 2 ТБ (2 × 2 40 байт ) на диск) ослаблены. [33] В частности, GPT допускает максимальный размер диска и раздела 8 ЗиБ (8 × 2 70 байты) . [34] [35]

Поддержка GPT в Linux включается включением опции CONFIG_EFI_PARTITION (Поддержка разделов EFI GUID) во время настройки ядра. [36] Эта опция позволяет Linux распознавать и использовать GPT-диски после того, как встроенное ПО системы передает контроль над системой Linux.

Для обратной совместимости Linux может использовать GPT-диски в системах на базе BIOS как для хранения данных, так и для загрузки, поскольку и GRUB 2 , и Linux поддерживают GPT. Такая настройка обычно называется BIOS-GPT . [37] [ ненадежный источник? ] Поскольку GPT включает в себя защитную MBR, компьютер на базе BIOS может загружаться с диска GPT, используя загрузчик с поддержкой GPT, хранящийся в области кода начальной загрузки защитной MBR . [35] В случае GRUB такая конфигурация требует, чтобы загрузочный раздел BIOS для GRUB встраивал свой код второго этапа из-за отсутствия пробела после MBR в разделенных GPT дисках (который перехватывается первичным заголовком GPT и таблицей первичных разделов GPT). ). 1 МБ Обычно размер , глобальный уникальный идентификатор (GUID) этого раздела в схеме GPT: 21686148-6449-6E6F-744E-656564454649 и используется GRUB только в настройках BIOS-GPT. С точки зрения GRUB, в случае разделения MBR такого типа раздела не существует. Этот раздел не требуется, если система основана на UEFI, поскольку в этом случае встраивание кода второго этапа не требуется. [17] [35] [37]

Системы UEFI могут получать доступ к GPT-дискам и загружаться непосредственно с них, что позволяет Linux использовать методы загрузки UEFI. Загрузка Linux с GPT-дисков в системах UEFI предполагает создание системного раздела EFI (ESP), который содержит приложения UEFI, такие как загрузчики, ядра операционной системы и служебное программное обеспечение. [38] [39] [40] [ ненадежный источник? ] Такая установка обычно называется UEFI-GPT , при этом рекомендуется, чтобы ESP имел размер не менее 512 МБ и был отформатирован в файловой системе FAT32 для максимальной совместимости. [35] [37] [41] [ ненадежный источник? ]

В целях обратной совместимости некоторые реализации UEFI также поддерживают загрузку с дисков с разделами MBR через модуль поддержки совместимости (CSM), который обеспечивает совместимость с устаревшей BIOS. [42] В этом случае загрузка Linux в системах UEFI аналогична загрузке устаревших систем на базе BIOS.

Microsoft Windows

[ редактировать ]

64-разрядные версии Windows Vista SP1 и более поздних версий, а также 64-разрядные версии Windows 8 , 8.1 , 10 и 11 могут загружаться с GPT-диска размером более 2 ТБ .

Пример переменных UEFI

EFI определяет два типа служб: службы загрузки и службы времени выполнения . Службы загрузки доступны только до тех пор, пока прошивка владеет платформой (т. е. до того, как ExitBootServices() вызов), и они включают в себя текстовые и графические консоли на различных устройствах, а также шинные, блочные и файловые службы. Службы времени выполнения по-прежнему доступны во время работы операционной системы; они включают в себя такие службы, как дата, время и доступ к NVRAM .

Службы протокола вывода графики (GOP)
Протокол вывода графики (GOP) предоставляет услуги во время выполнения; см. также раздел «Графические функции» ниже. Операционной системе разрешено напрямую записывать данные в кадровый буфер, предоставляемый GOP, во время режима выполнения. [43]
UEFI карты памяти Службы
SMM -услуги
ACPI -сервисы
SMBIOS Службы
Службы Devicetree (для RISC-процессоров)
Переменные услуги
Переменные UEFI позволяют хранить данные, в частности энергонезависимые. Некоторые переменные UEFI являются общими для встроенного ПО платформы и операционных систем. Пространства имен переменных идентифицируются идентификаторами GUID, а переменные представляют собой пары ключ/значение. Например, переменные UEFI можно использовать для хранения сообщений о сбоях в NVRAM после сбоя, чтобы операционная система могла их получить после перезагрузки. [44]
Службы времени
UEFI предоставляет службы времени. аппаратные часы реального времени на местное время или UTC. Службы времени включают поддержку полей часового пояса и перехода на летнее время, которые позволяют установить [45] На машинах, использующих часы реального времени PC-AT, по умолчанию аппаратные часы по-прежнему должны быть установлены на местное время для совместимости с Windows на базе BIOS. [4] если не используются последние версии и запись в реестре Windows не указывает на использование UTC.

Приложения

[ редактировать ]
Взаимодействие между менеджером загрузки EFI и драйверами EFI

Помимо загрузки ОС, UEFI может запускать приложения UEFI , которые находятся в виде файлов в системном разделе EFI . Их можно выполнить из оболочки UEFI, диспетчера загрузки встроенного ПО или других приложений UEFI. Приложения UEFI можно разрабатывать и устанавливать независимо от производителей оригинального оборудования (OEM).

Типом приложения UEFI является загрузчик ОС, такой как GRUB , rEFInd , Gummiboot и Windows Boot Manager , который загружает некоторые файлы ОС в память и выполняет их. Кроме того, загрузчик ОС может предоставлять пользовательский интерфейс, позволяющий выбрать другое приложение UEFI для запуска. Такие утилиты, как UEFI Shell, также являются приложениями UEFI.

Протоколы

[ редактировать ]

EFI определяет протоколы как набор программных интерфейсов, используемых для связи между двумя двоичными модулями. Все драйверы EFI должны предоставлять услуги другим через протоколы. Протоколы EFI аналогичны вызовам прерываний BIOS .

Драйверы устройств

[ редактировать ]

В дополнение к стандартным драйверам устройств, зависящим от архитектуры набора команд , EFI предоставляет независимый от ISA драйвер устройства , хранящийся в энергонезависимой памяти в виде байт-кода EFI или EBC . В системной прошивке имеется интерпретатор изображений EBC. В этом смысле EBC аналогичен Open Firmware , независимой от ISA прошивке, используемой, среди прочего, в PowerPC на базе компьютерах Apple Macintosh и Sun Microsystems SPARC .

Некоторые драйверы EFI, зависящие от архитектуры (не байт-код EFI), для некоторых типов устройств могут иметь интерфейсы для использования ОС. Это позволяет ОС использовать EFI для драйверов для выполнения основных графических и сетевых функций до загрузки драйверов, специфичных для операционной системы, и в случае их загрузки.

В других случаях драйвером EFI могут быть драйверы файловой системы, позволяющие загрузку с дисковых томов других типов. Примеры включают efifs для 37 файловых систем (на основе кода GRUB2 ), [46] используется Rufus для цепной загрузки NTFS ESP. [47]

Графические возможности

[ редактировать ]

Спецификация EFI 1.0 определила протокол UGA (универсальный графический адаптер) как способ поддержки графических функций. UEFI не включил UGA и заменил его на GOP (протокол вывода графики) . [48]

В UEFI 2.1 определена «инфраструктура пользовательского интерфейса» (HII) для управления пользовательским вводом, локализованными строками, шрифтами и формами (в смысле HTML ). Они позволяют производителям оригинального оборудования (OEM) или независимым поставщикам BIOS (IBV) разрабатывать графические интерфейсы для конфигурации перед загрузкой. UEFI использует UTF-16 по умолчанию для кодирования строк.

Большинство ранних реализаций прошивки UEFI были консольными. Сегодня многие реализации встроенного ПО UEFI основаны на графическом интерфейсе.

Системный раздел EFI

[ редактировать ]

Системный раздел EFI, часто сокращенно ESP, представляет собой раздел устройства хранения данных , который используется на компьютерах, соответствующих спецификации UEFI. Доступ к прошивке UEFI при включении компьютера сохраняет приложения UEFI и файлы, необходимые для запуска этих приложений, включая загрузчики операционной системы . Поддерживаемые схемы таблиц разделов включают MBR и GPT , а также тома El Torito на оптических дисках. [29] : раздел 2.6.2 Для использования в ESP UEFI определяет конкретную версию файловой системы FAT , которая поддерживается как часть спецификации UEFI и независимо от исходной спецификации FAT, включая файловые системы FAT32 , FAT16 и FAT12 . [29] : раздел 12.3 [49] [50] [51] ESP также предоставляет место для загрузочного сектора в рамках обратной совместимости BIOS. [42]

Загрузка

[ редактировать ]

Загрузка UEFI

[ редактировать ]

В отличие от устаревшего BIOS ПК, UEFI не полагается на загрузочные сектора , а вместо этого определяет менеджер загрузки как часть спецификации UEFI. При включении компьютера менеджер загрузки проверяет конфигурацию загрузки и на основе своих настроек затем запускает указанный загрузчик ОС или ядро ​​операционной системы (обычно загрузчик [52] ). Конфигурация загрузки определяется переменными, хранящимися в NVRAM , включая переменные, указывающие пути файловой системы к загрузчикам ОС или ядрам ОС.

Загрузчики ОС могут автоматически обнаруживаться с помощью UEFI, что позволяет легко загружать со съемных устройств, таких как USB-накопители . Это автоматическое обнаружение основано на стандартизированных путях к файлам загрузчика ОС, причем путь варьируется в зависимости от архитектуры компьютера . Формат пути к файлу определяется как <EFI_SYSTEM_PARTITION>\EFI\BOOT\BOOT<MACHINE_TYPE_SHORT_NAME>.EFI ; например, путь к файлу загрузчика ОС в системе x86-64 : \efi\boot\bootx64.efi , [29] и \efi\boot\bootaa64.efi на архитектуре ARM64.

Процесс загрузки

Загрузка систем UEFI с дисков с разделами GPT обычно называется загрузкой UEFI-GPT . Несмотря на то, что спецификация UEFI требует полной поддержки таблиц разделов MBR, [29] некоторые реализации встроенного ПО UEFI немедленно переключаются на загрузку CSM на основе BIOS в зависимости от типа таблицы разделов загрузочного диска, эффективно предотвращая выполнение загрузки UEFI из системного раздела EFI на дисках с разделами MBR. [42] Такая схема загрузки обычно называется UEFI-MBR .

Диспетчер загрузки также часто имеет текстовый пользовательский интерфейс, позволяющий пользователю выбрать нужную ОС (или утилиту настройки) из списка доступных вариантов загрузки.

Загрузка CSM

[ редактировать ]

Чтобы обеспечить обратную совместимость, реализации встроенного ПО UEFI на компьютерах класса ПК могут поддерживать загрузку в устаревшем режиме BIOS с дисков, разделенных MBR, через модуль поддержки совместимости (CSM) , который обеспечивает совместимость с устаревшим BIOS. В этом сценарии загрузка выполняется так же, как и в устаревших системах на базе BIOS, игнорируя таблицу разделов и полагаясь на содержимое загрузочного сектора . [42]

Загрузка в стиле BIOS с дисков, разделенных MBR, обычно называется BIOS-MBR , независимо от того, выполняется ли она в системах UEFI или устаревших системах на базе BIOS. Кроме того, возможна загрузка устаревших систем на базе BIOS с GPT-дисков, и такая схема загрузки обычно называется BIOS-GPT .

Модуль поддержки совместимости устаревшие операционные системы и некоторые устаревшие дополнительные ПЗУ , которые не поддерживают UEFI. позволяет использовать [53] Он также предоставляет необходимые устаревшего режима управления системой функции (SMM), называемые CompatibilitySmm , в качестве дополнения к функциям, предоставляемым UEFI SMM. Примером такой устаревшей функциональности SMM является обеспечение устаревшей поддержки USB для клавиатуры и мыши путем эмуляции их классических PS/2 . аналогов [53]

В ноябре 2017 года Intel объявила, что планирует прекратить поддержку CSM для клиентских платформ к 2020 году. [54]

В июле 2022 года «Лаборатория Касперского» опубликовала информацию о рутките, предназначенном для последовательной загрузки вредоносного кода на компьютерах с чипсетом Intel H81 и модулем поддержки совместимости затронутых материнских плат. [55]

В августе 2023 года Intel объявила, что планирует прекратить поддержку CSM для серверных платформ к 2024 году. [56]

На сегодняшний день все компьютеры на базе платформ Intel больше не поддерживают CSM.

Сетевая загрузка

[ редактировать ]

Спецификация UEFI включает поддержку загрузки по сети через среду Preboot eXecution Environment (PXE). загрузки PXE Сетевые протоколы включают интернет-протокол ( IPv4 и IPv6 ), протокол пользовательских дейтаграмм (UDP), протокол динамической конфигурации хоста (DHCP), тривиальный протокол передачи файлов (TFTP) и iSCSI . [29] [57]

Образы ОС можно удаленно хранить в сетях хранения данных (SAN), используя интерфейс малых компьютерных систем Интернета (iSCSI) и Fibre Channel over Ethernet (FCoE) в качестве поддерживаемых протоколов для доступа к SAN. [29] [58] [59]

В версии 2.5 спецификации UEFI добавлена ​​поддержка доступа к загрузочным образам через HTTP . [60]

Безопасная загрузка

[ редактировать ]
Пример активной безопасной загрузки, обнаруженной менеджером rEFInd загрузки

Спецификация UEFI определяет протокол, известный как Secure Boot , который может защитить процесс загрузки, предотвращая загрузку драйверов UEFI или загрузчиков ОС, которые не подписаны приемлемой цифровой подписью . Механические детали того, как именно должны быть подписаны эти драйверы, не уточняются. [61] Когда безопасная загрузка включена, она изначально переводится в режим «настройки», который позволяет записать в прошивку открытый ключ, известный как «ключ платформы» (PK). После записи ключа Secure Boot переходит в «пользовательский» режим, в котором прошивкой могут быть загружены только драйверы UEFI и загрузчики ОС, подписанные ключом платформы. Дополнительные «ключи обмена ключами» (KEK) могут быть добавлены в базу данных, хранящуюся в памяти, чтобы разрешить использование других сертификатов, но они все равно должны иметь соединение с частной частью ключа платформы. [62] Безопасную загрузку также можно перевести в «Пользовательский» режим, при котором в систему можно добавить дополнительные открытые ключи, не соответствующие закрытому ключу. [63]

Безопасная загрузка поддерживается Windows 8 и 8.1 , Windows Server 2012 и 2012 R2, Windows 10 , Windows Server 2016 , 2019 и 2022 , а также Windows 11 , VMware vSphere 6.5. [64] и ряд дистрибутивов Linux, включая Fedora (начиная с версии 18), openSUSE (начиная с версии 12.3), RHEL (начиная с версии 7), CentOS (начиная с версии 7). [65] ), Debian (начиная с версии 10), [66] Ubuntu (начиная с версии 12.04.2), Linux Mint (начиная с версии 21.3)., [67] [68] и ОС AlmaLinux (начиная с версии 8.4 [69] ). По состоянию на январь 2024 г. Поддержка FreeBSD находится на стадии планирования. [70]

оболочка UEFI

[ редактировать ]
Пример сеанса оболочки UEFI 2.2

UEFI предоставляет среду оболочки , которую можно использовать для выполнения других приложений UEFI, включая загрузчики UEFI . [40] Помимо этого, команды, доступные в оболочке UEFI, можно использовать для получения другой различной информации о системе или прошивке, включая получение карты памяти ( memmap), изменение переменных менеджера загрузки ( bcfg), запуск программ разбиения на разделы ( diskpart), загрузка драйверов UEFI и редактирование текстовых файлов ( edit). [71] [ ненадежный источник? ] [72] [73]

Исходный код оболочки UEFI можно загрузить из Intel проекта TianoCore UDK/EDK2. [74] Также доступен готовый ShellBinPkg. [75] Shell v2 лучше всего работает в системах UEFI 2.3+ и в этих системах рекомендуется использовать вместо Shell v1. Shell v1 должен работать во всех системах UEFI. [71] [76] [77]

системы Методы, используемые для запуска оболочки UEFI, зависят от производителя и модели материнской платы . Некоторые из них уже предоставляют прямую возможность настройки прошивки для запуска, например, скомпилированную версию оболочки x86-64 необходимо сделать доступной как <EFI_SYSTEM_PARTITION>/SHELLX64.EFI. Некоторые другие системы имеют уже встроенную оболочку UEFI, которую можно запустить с помощью соответствующих комбинаций клавиш. [78] [ ненадежный источник? ] [79] Для других систем решением является либо создание соответствующего USB-накопителя, либо добавление вручную ( bcfg) вариант загрузки, связанный с скомпилированной версией оболочки. [73] [78] [80] [ ненадежный источник? ] [81] [ ненадежный источник? ]

Ниже приведен список команд, поддерживаемых оболочкой EFI. [72]

Расширения

[ редактировать ]

Расширения UEFI можно загрузить практически с любого энергонезависимого запоминающего устройства, подключенного к компьютеру. Например, производитель оригинального оборудования (OEM) может распространять системы с системным разделом EFI на жестком диске, что добавит дополнительные функции к стандартной прошивке UEFI, хранящейся в ПЗУ материнской платы .

UEFI-капсула

[ редактировать ]

UEFI Capsule определяет интерфейс обновления прошивки для ОС, который позиционируется как современный и безопасный. [82] Windows 8 , Windows 8.1 , Windows 10 , [83] и Fwupd для Linux поддерживают UEFI Capsule.

Аппаратное обеспечение

[ редактировать ]

Как и BIOS , UEFI инициализирует и тестирует аппаратные компоненты системы (например, обучение памяти, обучение каналу PCIe, обучение каналу USB), а затем загружает загрузчик с запоминающего устройства или через сетевое соединение . В системах x86 прошивка UEFI обычно хранится во флэш-чипе NOR материнской платы. [84]

Машины UEFI могут иметь один из следующих классов, которые использовались для облегчения перехода на UEFI: [85]

  • Класс 0: устаревший BIOS
  • Класс 1: UEFI с интерфейсом CSM и без внешнего интерфейса UEFI. Единственные интерфейсы UEFI являются внутренними встроенного ПО.
  • Класс 2: UEFI с CSM и внешними интерфейсами UEFI, например. Загрузка UEFI.
  • Класс 3: UEFI без интерфейса CSM и с внешним интерфейсом UEFI.
  • Класс 3+: класс UEFI 3 с включенной безопасной загрузкой. [86]

Начиная с процессоров Intel Core 10-го поколения, Intel больше не предоставляет Legacy Video BIOS для iGPU ( Intel Graphics Technology ). Для загрузки Legacy с этими процессорами требуется Legacy Video BIOS, который по-прежнему может предоставляться видеокартой. [ нужна ссылка ]

Этапы загрузки

[ редактировать ]

SEC – Фаза безопасности

[ редактировать ]

Это первый этап загрузки UEFI, но ему может предшествовать двоичный код, специфичный для платформы. (например, Intel ME , AMD PSP ЦП , микрокод ). Он состоит из минимального кода, написанного на языке ассемблера для конкретной архитектуры. Он инициализирует временную память (часто кэш ЦП в виде ОЗУ или встроенную SRAM SoC, CAR) и служит программным корнем доверия системы с возможностью проверки PEI перед передачей.

PEI — инициализация перед EFI

[ редактировать ]

Второй этап загрузки UEFI состоит из диспетчера с учетом зависимостей, который загружает и запускает модули PEI (PEIM) для выполнения задач ранней инициализации оборудования, таких как инициализация основной памяти (инициализация контроллера памяти и DRAM ) и операций восстановления прошивки. Кроме того, он отвечает за обнаружение текущего режима загрузки и обработку многих операций ACPI S3. В случае возобновления ACPI S3 он отвечает за восстановление многих аппаратных регистров в состояние перед спящим режимом. PEI также использует CAR.

DXE — среда выполнения драйвера

[ редактировать ]

Этот этап состоит из модулей C и диспетчера, учитывающего зависимости. Теперь, когда основная память доступна, процессор, набор микросхем, материнская плата и другие устройства ввода-вывода инициализируются в DXE и BDS.

BDS – выбор загрузочного устройства

[ редактировать ]

BDS является частью DXE. [87] [88] На этом этапе инициализируются загрузочные устройства, драйверы UEFI или дополнительные ПЗУ устройств PCI выполняются в соответствии с конфигурацией системы и обрабатываются параметры загрузки.

TSL – переходная нагрузка системы

[ редактировать ]

Это этап между выбором загрузочного устройства и передачей ОС. На этом этапе можно войти в оболочку UEFI или выполнить приложение UEFI, например загрузчик ОС.

РТ – Время выполнения

[ редактировать ]

UEFI переключается на операционную систему (ОС) после ExitBootServices() выполняется. UEFI-совместимая ОС теперь отвечает за выход из служб загрузки, запуская прошивку для выгрузки всего ненужного кода и данных, оставляя только код/данные служб времени выполнения, например SMM и ACPI . [89] Типичная современная ОС предпочитает использовать собственные программы (например, драйверы ядра ) для управления аппаратными устройствами.

Если используется устаревшая ОС, CSM обработает этот вызов, гарантируя, что система совместима с ожиданиями устаревшего BIOS.

Использование

[ редактировать ]

Реализации

[ редактировать ]
Microsoft Surface UEFI, UEFI, используемый на всех моделях Surface, выпущенных после 2015 года.

Реализация EFI от Intel — это Intel Platform Innovation Framework под кодовым названием Tiano . Tiano работает на процессорах Intel XScale , Itanium , IA-32 и x86-64 и является проприетарным программным обеспечением, хотя часть кода была выпущена под лицензией BSD или Eclipse Public License (EPL) как TianoCore EDK II . TianoCore можно использовать в качестве полезной нагрузки для coreboot . [90]

Реализация UEFI компанией Phoenix Technologies получила название SecureCore Technology (SCT). [91] American Megatrends предлагает собственную реализацию прошивки UEFI, известную как Aptio. [92] в то время как Insyde Software предлагает InsydeH2O, [93] и Byosoft предлагает ByoCore.

В декабре 2018 года Microsoft выпустила версию с открытым исходным кодом своей реализации UEFI на базе TianoCore EDK2 из линейки Surface Project Mu . [94]

Реализация UEFI API была введена в универсальный загрузчик ( Das U-Boot ) в 2017 году. [95] В ARMv8 с архитектурой дистрибутивах Linux для загрузки используется реализация U-Boot UEFI в сочетании с GNU GRUB (например, SUSE Linux [96] ), то же самое справедливо и для OpenBSD. [97] Для загрузки из iSCSI iPXE можно использовать как приложение UEFI, загружаемое с помощью U-Boot. [98]

Платформы

[ редактировать ]

рабочие станции и серверы Intel Первые Itanium , выпущенные в 2000 году, использовали EFI 1.02.

системы Hewlett-Packard Первые Itanium 2 , выпущенные в 2002 году, реализовали EFI 1.10; они могли загружать Windows , Linux , FreeBSD и HP-UX ; OpenVMS добавила возможность UEFI в июне 2003 года.

В январе 2006 года компания Apple Inc. выпустила свои первые компьютеры Macintosh на базе процессоров Intel . В этих системах использовалась EFI вместо открытой прошивки , которая использовалась в предыдущих системах на базе PowerPC. [99] 5 апреля 2006 года Apple впервые выпустила Boot Camp , который создает диск с драйверами Windows и инструмент неразрушающего разбиения на разделы, позволяющий устанавливать Windows XP или Vista без переустановки Mac OS X (теперь macOS). Также было выпущено обновление прошивки, которое добавило совместимость с BIOS к реализации EFI. Последующие модели Macintosh поставлялись с более новой прошивкой. [100]

В 2005 году более миллиона систем Intel были поставлены с реализацией Intel UEFI. [101] [ не удалось пройти проверку ] Новые мобильные, настольные и серверные продукты, использующие реализацию UEFI от Intel, начали поставляться в 2006 году. Например, платы, использующие набор микросхем серии Intel 945, используют реализацию встроенного ПО UEFI от Intel.

С 2005 года EFI также реализуется на архитектурах, отличных от ПК, например, во встроенных системах на базе ядер XScale . [101]

EDK (EFI Developer Kit) включает в себя целевой объект NT32, который позволяет запускать прошивку EFI и приложения EFI в приложении Windows . Но EDK NT32 не допускает прямого доступа к оборудованию. Это означает, что целевой объект EDK NT32 может выполнять только часть приложений и драйверов EFI.

В 2008 году все больше систем x86-64 стали использовать UEFI. Хотя многие из этих систем по-прежнему позволяют загружать только операционные системы на базе BIOS через модуль поддержки совместимости (CSM) (таким образом, они не кажутся пользователю основанными на UEFI), другие системы начали разрешать загрузку операционных систем на основе UEFI. Например, сервер IBM x3450, материнские платы MSI с ClickBIOS, ноутбуки HP EliteBook.

В 2009 году IBM поставила машины System x (x3550 M2, x3650 M2, iDataPlex dx360 M2) и BladeCenter HS22 с поддержкой UEFI. Dell поставляла серверы PowerEdge T610, R610, R710, M610 и M710 с поддержкой UEFI. Другие коммерчески доступные системы упоминаются в официальном документе UEFI. [102]

В 2011 году крупные производители (такие как ASRock , Asus , Gigabyte и MSI ) выпустили несколько материнских плат, ориентированных на потребителя, с использованием чипсета Intel 6-й серии LGA 1155 и чипсетов AMD 9-й серии AM3+ с UEFI. [103]

С выпуском Windows 8 в октябре 2012 года сертификационные требования Microsoft теперь требуют, чтобы компьютеры имели встроенное ПО, реализующее спецификацию UEFI. Кроме того, если компьютер поддерживает функцию « Подключенный режим ожидания » в Windows 8 (которая позволяет устройствам управлять питанием так же, как смартфоны , с почти мгновенным выходом из режима ожидания), то встроенное ПО не может содержать модуль поддержки совместимости ( ЦСМ). Таким образом, системы, поддерживающие Connected Standby, не способны загружать устаревшие операционные системы BIOS. [104] [105]

В октябре 2017 года Intel объявила, что к 2020 году откажется от поддержки устаревшего BIOS для ПК из всех своих продуктов в пользу UEFI Class 3. [106] К 2019 году все компьютеры на базе платформ Intel больше не будут поддерживать устаревшую версию BIOS для ПК.

Операционные системы

[ редактировать ]

Операционная система, которую можно загрузить с (U)EFI, называется операционной системой с поддержкой (U)EFI, что определяется спецификацией (U)EFI. Здесь термин «загрузка с (U)EFI» означает непосредственную загрузку системы с использованием загрузчика операционной системы (U)EFI, хранящегося на любом устройстве хранения данных. Местоположение по умолчанию для загрузчика операционной системы: <EFI_SYSTEM_PARTITION>/BOOT/BOOT<MACHINE_TYPE_SHORT_NAME>.EFI, где может быть краткое название типа машины IA32, X64, IA64, ARM или AA64. [29] Некоторые поставщики операционных систем могут иметь собственные загрузчики. Они также могут изменить местоположение загрузки по умолчанию.

  • Ядро Linux может использовать EFI во время загрузки с начала 2000-х годов. [107] используя загрузчик elilo EFI или, с недавних пор, EFI-версии GRUB . [108] Grub+Linux также поддерживает загрузку из таблицы разделов GUID без UEFI. [17] В дистрибутив Ubuntu добавлена ​​поддержка безопасной загрузки UEFI начиная с версии 12.10. [109] Кроме того, ядро ​​Linux может быть скомпилировано с возможностью запуска в качестве загрузчика EFI самостоятельно с помощью функции загрузчика EFI.
  • HP-UX использует (U)EFI в качестве механизма загрузки в системах IA-64 с 2002 года.
  • OpenVMS использует EFI в IA-64 с момента его первоначальной оценочной версии в декабре 2003 года, а в производственных версиях — с января 2005 года. [110] OpenVMS на x86-64 также использует UEFI для загрузки операционной системы. [111]
  • Apple использует EFI для своей линейки компьютеров Mac на базе процессоров Intel . Mac OS X v10.4 Tiger и Mac OS X v10.5 Leopard реализуют EFI v1.10 в 32-битном режиме даже на новых 64-битных процессорах, но полная поддержка появилась в OS X v10.8 Mountain Lion . [112]
  • Версии Itanium для Windows 2000 (Advanced Server Limited Edition и Datacenter Server Limited Edition; на основе предварительной версии кода Windows Server 2003 ) реализовали EFI 1.10 в 2002 году. 64-разрядная версия Windows XP , Windows 2000 Advanced Server Limited Edition (предварительная версия) выпуск Windows Server 2003) и Windows Server 2003 для IA-64 , все из которых предназначены для семейства процессоров Intel Itanium , реализуют EFI, требование платформы согласно спецификации DIG64 . [113]
  • Microsoft представила UEFI для операционных систем Windows x64 с Windows Vista SP1 [114] и Windows Server 2008 только UGA (универсальный графический адаптер) 1.1 или Legacy BIOS INT 10h , однако поддерживается ; Протокол вывода графики (GOP) не поддерживается. Таким образом, компьютеры под управлением 64-разрядных версий Windows Vista SP1 , Windows Vista SP2 , Windows 7 , Windows Server 2008 и Windows Server 2008 R2 совместимы с UEFI Class 2. [115] [116] 32-битный UEFI изначально не поддерживался, поскольку поставщики не были заинтересованы в выпуске собственной 32-битной прошивки UEFI из-за массового статуса 64-битных вычислений . [117] В Windows 8 наконец-то появились дополнительные оптимизации для систем UEFI, включая поддержку протокола вывода графики (GOP). [118] более быстрый запуск, поддержка 32-битного UEFI и поддержка безопасной загрузки. [119] [120] Microsoft начала требовать UEFI для запуска Windows с Windows 11 . [121] с выпусками IoT Enterprise Windows 11, начиная с версии 24H2, освобождены от этого требования. [122]
  • 5 марта 2013 года Фонд FreeBSD предоставил грант разработчику, стремящемуся добавить поддержку UEFI в ядро ​​и загрузчик FreeBSD . [123] Изменения изначально хранились в отдельной ветке исходного кода FreeBSD, но были объединены с основным исходным кодом 4 апреля 2014 г. (версия 264095); изменения также включают поддержку в установщике. [124] Поддержка загрузки UEFI для amd64 впервые появилась во FreeBSD 10.1, а для Arm64 — в FreeBSD 11.0. [125]
  • Oracle Solaris 11.1 и более поздние версии поддерживают загрузку UEFI для систем x86 с микропрограммой UEFI версии 2.1 или более поздней. GRUB 2 используется в качестве загрузчика на x86. [126]
  • OpenBSD 5.9 [127] представила поддержку загрузки UEFI для 64-битных систем x86 с использованием собственного специального загрузчика, OpenBSD 6.0 расширила эту поддержку, включив в нее ARMv7. [128]
  • ArcaOS поддерживает загрузку UEFI начиная с версии 5.1. [129] Поддержка UEFI в ArcaOS эмулирует определенные функции BIOS , от которых зависит операционная система (в частности, прерывания INT 10H и INT 13H ). [130] [131]

С виртуализацией

[ редактировать ]
  • Виртуальные машины HP Integrity обеспечивают загрузку UEFI на серверах HP Integrity. Он также предоставляет виртуализированную среду UEFI для гостевых ОС, поддерживающих UEFI.
  • Intel размещает проект открытой прошивки виртуальной машины на SourceForge. [132]
  • Программное обеспечение VMware Fusion 3 для Mac OS X может загружать виртуальные машины Mac OS X Server с использованием UEFI.
  • VMware Workstation до версии 11 неофициально поддерживает UEFI, но включается вручную путем редактирования файла .vmx. [133] VMware Workstation версии 11 и выше поддерживает UEFI независимо от того, основана ли физическая хост-система на UEFI. В VMware Workstation 14 (и, соответственно, Fusion 10) добавлена ​​поддержка функции безопасной загрузки UEFI. [134] [135]
  • Гипервизор VMware ESXi 5.0 официально поддерживает UEFI. В версии 6.5 добавлена ​​поддержка безопасной загрузки. [136] [137]
  • VirtualBox реализует UEFI начиная с версии 3.1, [138] но ограничено операционными системами Unix/Linux и Windows 8 и более поздних версий (не работает с Windows Vista x64 и Windows 7 x64). [139] [140]
  • QEMU / KVM можно использовать с прошивкой открытой виртуальной машины (OVMF), предоставляемой TianoCore . [141]
  • Второе поколение виртуальной машины Microsoft Hyper-V поддерживает виртуализированный UEFI. [142]
  • Экранированные виртуальные машины Google Cloud Platform поддерживают виртуализированный UEFI для включения безопасной загрузки. [143]

Разработка приложений

[ редактировать ]

Комплект разработки приложений EDK2 (EADK) позволяет использовать стандартные функции библиотеки C в приложениях UEFI. EADK можно бесплатно загрузить из проекта Intel TianoCore UDK/EDK2 SourceForge . Например, порт интерпретатора Python доступен как приложение UEFI с помощью EADK. [144] Начиная с UDK2015 разработка переехала на GitHub. [145]

Минималистичная программа на языке C « привет, мир », написанная с использованием EADK, выглядит похожей на свой обычный аналог на языке C :

#include <Uefi.h>
#include <Library/UefiLib.h>
#include <Library/ShellCEntryLib.h>

EFI_STATUS EFIAPI ShellAppMain(IN UINTN Argc, IN CHAR16 **Argv)
{
    Print(L"hello, world\n");
    return EFI_SUCCESS;
}

Многочисленные активисты за цифровые права протестовали против UEFI. Рональд Г. Миннич , соавтор coreboot , и Кори Доктороу , активист цифровых прав, раскритиковали UEFI как попытку лишить пользователя возможности по-настоящему управлять компьютером. [146] [147] Это не решает давнюю проблему BIOS, связанную с необходимостью использования двух разных драйверов — одного для встроенного ПО и одного для операционной системы — для большинства аппаратных средств. [148]

Проект с открытым исходным кодом TianoCore также предоставляет UEFI. [149] В TianoCore отсутствуют специализированные драйверы, инициализирующие функции набора микросхем, которые вместо этого предоставляются coreboot , одним из многих вариантов полезной нагрузки которого является TianoCore. Разработка coreboot требует сотрудничества производителей чипсетов для предоставления спецификаций, необходимых для разработки драйверов инициализации.

Безопасная загрузка

[ редактировать ]
Примеры пользовательских открытых ключей Secure Boot
MokManager, часть загрузчика Shim

В 2011 году Microsoft объявила, что компьютеры, сертифицированные для работы с ее операционной системой Windows 8, должны поставляться с зарегистрированным открытым ключом Microsoft и включенной безопасной загрузкой. ) обвинили компанию После этого объявления критики и сторонники свободного программного обеспечения/открытого исходного кода (включая Free Software Foundation в попытке использовать функцию безопасной загрузки UEFI, чтобы помешать или полностью предотвратить установку альтернативных операционных систем, таких как Linux . Microsoft отрицает, что требование безопасной загрузки было предназначено для использования в качестве формы блокировки , и уточнила свои требования, заявив, что системы на базе x86, сертифицированные для Windows 8, должны позволять безопасной загрузке переходить в пользовательский режим или отключаться, но не в системах. с использованием архитектуры ARM . [63] [150] Windows 10 позволяет OEM-производителям решать, могут ли пользователи их систем x86 управлять безопасной загрузкой. [151]

Другие разработчики выразили обеспокоенность по поводу юридических и практических вопросов реализации поддержки безопасной загрузки в системах Linux в целом. Бывший Red Hat разработчик Мэтью Гарретт отметил, что условия GNU General Public License версии 3 могут препятствовать использованию GNU GRand Unified Bootloader без раскрытия разработчиком дистрибутива закрытого ключа (однако Фонд свободного программного обеспечения с тех пор уточнил свою позицию, заверив, что ответственность за предоставление ключей лежала на производителе оборудования), [152] [109] и что опытным пользователям также будет сложно создавать собственные ядра , которые могли бы работать с включенной безопасной загрузкой, без их самоподписания. [150] Другие разработчики предположили, что можно предоставить подписанные сборки Linux с другим ключом, но отметили, что будет сложно убедить OEM-производителей поставлять свои компьютеры с необходимым ключом вместе с ключом Microsoft. [2]

В нескольких основных дистрибутивах Linux разработаны различные реализации безопасной загрузки. Сам Гаррет разработал минимальный загрузчик, известный как shim, который представляет собой предварительно скомпилированный подписанный загрузчик, позволяющий пользователю индивидуально доверять ключам, предоставляемым дистрибутивами Linux. [153] Ubuntu 12.10 использует более старую версию оболочки. [ который? ] предварительно настроен для использования с собственным ключом Canonical , который проверяет только загрузчик и позволяет загружать неподписанные ядра; разработчики считали, что практика подписания только загрузчика более осуществима, поскольку доверенное ядро ​​эффективно защищает только пространство пользователя , а не предзагрузочное состояние, для которого Secure Boot предназначен для дополнительной защиты. Это также позволяет пользователям создавать свои собственные ядра и использовать собственные модули ядра без необходимости перенастройки системы. [109] [154] [155] Canonical также поддерживает собственный закрытый ключ для подписи установок Ubuntu, предварительно загруженных на сертифицированные OEM-компьютеры, на которых установлена ​​операционная система, а также планирует обеспечить соблюдение требований безопасной загрузки, требуя как ключа Canonical, так и ключа Microsoft (по соображениям совместимости). ) для включения в их прошивку. Fedora также использует прокладку, [ который? ] но требует, чтобы и ядро, и его модули были также подписаны. [154]

Спорным является вопрос о том, необходимо ли также подписывать ядро ​​операционной системы и его модули; хотя спецификации UEFI этого не требуют, Microsoft утверждает, что их контрактные требования требуют этого, и что она оставляет за собой право отозвать любые сертификаты, используемые для подписи кода, который может быть использован для компрометации безопасности системы. [155] В Windows, если включена безопасная загрузка, все драйверы ядра должны иметь цифровую подпись; Драйверам, отличным от WHQL, может быть отказано в загрузке. В феврале 2013 года другой разработчик Red Hat попытался представить исправление для ядра Linux, которое позволило бы анализировать подпись Microsoft с использованием аутентичного кода с использованием главного ключа X.509 , встроенного в PE- файлы, подписанные Microsoft. Однако это предложение подверглось критике со стороны создателя Linux Линуса Торвальдса , который напал на Red Hat за поддержку контроля Microsoft над инфраструктурой безопасной загрузки. [156]

26 марта 2013 года испанская группа разработчиков бесплатного программного обеспечения Hispalinux подала официальную жалобу в Европейскую комиссию , утверждая, что требования Microsoft по безопасной загрузке для OEM-систем были «обструкционными» и антиконкурентными . [157]

На конференции Black Hat в августе 2013 года группа исследователей безопасности представила серию эксплойтов в реализациях UEFI конкретных поставщиков, которые можно использовать для использования Secure Boot. [158]

В августе 2016 года сообщалось, что два исследователя безопасности обнаружили ключ безопасности «золотой ключ», который Microsoft использует для подписи операционных систем. [159] Технически ключ не был раскрыт, однако был обнаружен пригодный для использования двоичный файл, подписанный ключом. Это позволяет любому программному обеспечению работать так, как будто оно действительно подписано Microsoft, и подвергает риску атаки руткитов и буткитов . Это также делает невозможным исправление ошибки, поскольку любое исправление может быть заменено (понижено) на (подписанный) пригодный для использования двоичный файл. Microsoft ответила заявлением, что уязвимость существует только в архитектуре ARM и устройствах Windows RT , и выпустила два патча; однако исправления не устраняют (и не могут) устранить уязвимость, для устранения которой потребуется замена ключей в прошивке конечного пользователя. [ нужна ссылка ]

1 марта 2023 года исследователи из фирмы ESET Cybersecurity сообщили о «первом действующем бутките UEFI в обход UEFI Secure Boot» под названием «BlackLotus» в результатах публичного анализа, описывающих теорию, лежащую в основе его механики, использующую патчи, которые «не (( и не может) устранить уязвимость». [160] [161]

Многие дистрибутивы Linux теперь поддерживают безопасную загрузку UEFI, например RHEL (RHEL 7 и новее), CentOS (CentOS 7 и новее). [162] ), Ubuntu , Fedora , Debian (Debian 10 и более поздние версии ). [163] ), OpenSUSE , SUSE Linux . [164]

Проблемы с прошивкой

[ редактировать ]

Возросшая популярность прошивки UEFI в устройствах также привела к ряду технических проблем, в которых виноваты их соответствующие реализации. [165]

После выпуска Windows 8 в конце 2012 года было обнаружено, что некоторые модели компьютеров Lenovo с безопасной загрузкой имели встроенное ПО, которое было жестко закодировано и позволяло загружать только исполняемые файлы с именами « Windows Boot Manager » или « Red Hat Enterprise Linux », независимо от любых других параметр. [166] Другие проблемы возникли у нескольких моделей ноутбуков Toshiba с Secure Boot, у которых отсутствовали определенные сертификаты, необходимые для правильной работы. [165]

В январе 2013 года была опубликована ошибка, связанная с реализацией UEFI на некоторых ноутбуках Samsung , из-за которой они блокировались после установки дистрибутива Linux в режиме UEFI. Хотя первоначально обвинялись в потенциальных конфликтах с модулем ядра, предназначенным для доступа к системным функциям ноутбуков Samsung (что также побудило сопровождающих ядра отключить модуль в системах UEFI в качестве меры безопасности), Мэтью Гарретт обнаружил, что ошибка на самом деле была вызвана сохранением слишком большого количества UEFI. переменные в память и что ошибка также может возникнуть в Windows при определенных условиях. В заключение он определил, что нарушивший модуль ядра вызвал запись дампов сообщений ядра в прошивку, тем самым вызвав ошибку. [44] [167] [168]

См. также

[ редактировать ]

Примечания

[ редактировать ]
  1. ^ Первоначально началось в 1998 году как Intel Boot Initiative, а затем как Extensible Firmware Interface (EFI), который был признан устаревшим в 2005 году и заменен UEFI.
  2. ^ Исторически также пишется как Unified EFI, когда UEFI был недавно представленным преемником EFI.
  3. ^ Поддержка больших дисков и такие функции, как расширенный интерфейс конфигурации и питания (ACPI) и BIOS управления системой (SMBIOS), были впоследствии реализованы в системах на базе BIOS.
  1. ^ Кинни, Майкл (1 сентября 2000 г.). «Решение проблем с загрузкой BIOS с помощью EFI» (PDF) . стр. 47–50. Архивировано из оригинала (PDF) 23 января 2007 года . Проверено 14 сентября 2010 г.
  2. ^ Jump up to: а б «MS отрицает, что безопасная загрузка исключает Linux» . Регистр. 23 сентября 2011 года . Проверено 24 сентября 2011 г.
  3. ^ Часы реального времени IBM PC должны работать в UT . Cl.cam.ac.uk. Проверено 30 октября 2013 г.
  4. ^ Jump up to: а б Гаррет, Мэтью (19 января 2012 г.). «EFI и Linux: будущее уже здесь, и оно ужасно» . linux.conf.au 2012 . Архивировано из оригинала 13 ноября 2021 года . Проверено 2 апреля 2012 г.
  5. ^ «Карта памяти (x86) — OSDev Wiki» . wiki.osdev.org . Проверено 11 декабря 2020 г.
  6. ^ Jump up to: а б с д «Внедрение Emulex UEFI обеспечивает ведущие в отрасли функции для систем IBM» (PDF) . Эмулекс . Проверено 14 сентября 2010 г.
  7. ^ Extensible Firmware Interface (EFI) и Unified EFI (UEFI) , Intel, заархивировано из оригинала 5 января 2010 г.
  8. ^ Вэй, Донг (2006), «предисловие», Beyond BIOS , Intel Press, ISBN  978-0-9743649-0-2
  9. ^ «1.10 Обзор технических характеристик» , Расширяемый интерфейс встроенного ПО , Intel
  10. ^ «GitHub — tianocore/Edk: Git-зеркало EDK» . Гитхаб . 19 марта 2019 г.
  11. ^ «GitHub — tianocore/Tianocore.github.io: веб-сайт Tianocore» . Гитхаб . 8 августа 2019 г.
  12. ^ «Что такое ТианоКор?» .
  13. ^ О программе , Единый форум EFI, Вопрос: Какова связь между EFI и UEFI? О: Спецификация UEFI основана на спецификации EFI 1.10, опубликованной Intel, с исправлениями и изменениями, управляемыми Unified EFI Forum. Intel по-прежнему владеет авторскими правами на спецификацию EFI 1.10, но предоставила ее на Форум, чтобы Форум мог ее развивать. Будущих версий спецификации EFI не будет, но клиенты, получившие лицензию, по-прежнему смогут использовать ее в соответствии с условиями лицензии Intel. Лицензия на унифицированную спецификацию EFI исходит от форума, а не от Intel.
  14. ^ «Microsoft объявляет о Project Mu, выпуске ядра UEFI с открытым исходным кодом» . 20 декабря 2018 г.
  15. ^ «Спецификация унифицированного расширяемого интерфейса встроенного ПО (UEFI), версия 2.10» (PDF) . www.uefi.org . Август 2022 года . Проверено 16 января 2023 г.
  16. ^ «UEFI и Windows» . Майкрософт. 15 сентября 2009 года . Проверено 14 сентября 2010 г.
  17. ^ Jump up to: а б с «Установка» . 3.4 Установка биоса . ГНУ GRUB . Проверено 25 сентября 2013 г.
  18. ^ «Незагрузочные диски могут использовать таблицу разделов GPT даже без биоса UEFI» .
  19. ^ Спецификация UEFI 2.4, раздел 2.3.
  20. ^ Спецификация UEFI 2.3.1, раздел 1.8.1.
  21. ^ «GitHub — andreiw/ppc64le-edk2: TianoCore UEFI для OPAL/PowerNV (PPC64/PowerPC64 Little-Endian)» . Гитхаб . 3 мая 2021 г.
  22. ^ «Tianocore для OpenPOWER» . Безопасность прошивки . 12 октября 2015 г.
  23. ^ контаис (3 сентября 2015 г.). «ЭФИ-МИПС» . СоурсФордж .
  24. ^ «lowRISC · lowRISC» .
  25. ^ «Спецификация унифицированного расширяемого интерфейса встроенного ПО, версия 2.7» (PDF) . Май 2017.
  26. ^ Хардвидж, Бен (1 июня 2010 г.). «Объяснение LBA — решение проблемы 3 ТБ?» . бит-тек . Проверено 18 июня 2010 г.
  27. ^ Ричардсон, Брайан (10 мая 2010 г.). «Спросите специалиста по BIOS: «Почему UEFI» » . Блог Intel об архитектуре. Архивировано из оригинала 9 октября 2010 года . Проверено 18 июня 2010 г.
  28. ^ Симпсон, Гэри. «Импульс UEFI — взгляд AMD» . АМД. Архивировано из оригинала (PPTX) 4 января 2014 года . Проверено 20 сентября 2014 г.
  29. ^ Jump up to: а б с д и ж г час «Спецификации UEFI (версия 2.4 и старше)» (PDF) . Unified EFI, Inc., июнь 2013 г. Проверено 25 сентября 2013 г.
  30. ^ «Ядро Linux 3.15, раздел 1.3. 64-битные ядра EFI можно загрузить с 32-битной прошивки» . kernelnewbies.org . 8 июня 2014 года . Проверено 15 июня 2014 г.
  31. ^ «x86, efi: протокол передачи» . LWN.net . 19 июля 2012 года . Проверено 15 июня 2014 г.
  32. ^ «Документация ядра Linux: Documentation/efi-stub.txt» . ядро.орг . 1 февраля 2014 года . Проверено 15 июня 2014 г.
  33. ^ «Часто задаваемые вопросы: ограничения разделов диска» (PDF) . Форум УЕФИ . Проверено 5 декабря 2019 г.
  34. ^ «Часто задаваемые вопросы: ограничения разделов диска» (PDF) . Форум УЕФИ. Архивировано из оригинала (PDF) 22 марта 2013 года . Проверено 9 июня 2010 г.
  35. ^ Jump up to: а б с д Смит, Родерик В. (3 июля 2012 г.). «Воспользуйтесь преимуществами больших дисков с помощью GPT и Linux» . ИБМ . Проверено 25 сентября 2013 г.
  36. ^ «блок/разделы/Kconfig (3.11.1)» . CONFIG_EFI_PARTITION (строка № 247) . ядро.орг . Проверено 25 сентября 2013 г.
  37. ^ Jump up to: а б с "ГРАБ" . системы БИОС . Арч Линукс . Проверено 25 сентября 2013 г.
  38. ^ «GRUB и процесс загрузки в системах x86 на базе UEFI» . redhat.com . Проверено 14 ноября 2013 г.
  39. ^ «Загрузка UEFI 64-разрядной версии Redhat Enterprise Linux 6» . fpmurphy.com . Сентябрь 2010 года . Проверено 14 ноября 2013 г.
  40. ^ Jump up to: а б «Загрузчики UEFI» . Archlinux.org . Проверено 25 сентября 2013 г.
  41. ^ «Единый расширяемый интерфейс прошивки: системный раздел EFI» . Archlinux.org . Проверено 25 сентября 2013 г.
  42. ^ Jump up to: а б с д «Загрузка системы UEFI из таблицы разделов MBR и устаревшего GRUB» . Форумы Arch Linux. Июнь 2012. Архивировано из оригинала 8 декабря 2023 года . Проверено 6 октября 2013 г.
  43. ^ «Что такое efifb? — Документация по ядру Linux» . www.kernel.org . Проверено 24 ноября 2020 г.
  44. ^ Jump up to: а б «Ошибка Samsung UEFI: ноутбук заблокирован из Windows» . Х. ​Проверено 27 февраля 2013 г.
  45. ^ Спецификация UEFI, раздел 7.3.
  46. ^ «Бесплатные драйверы EFI» .
  47. ^ Батард, Пит (13 марта 2020 г.). "pbatard/uefi-ntfs" . Гитхаб .
  48. ^ «Часто задаваемые вопросы по драйверам встраиваемой графики Intel: BIOS и встроенное ПО» . Интел . Проверено 19 мая 2014 г.
  49. ^ «Спецификация UEFI версии 2.5, раздел 12.3 Формат файловой системы» (PDF) . uefi.org . Апрель 2015. С. 536, 537 . Проверено 29 мая 2015 г. Файловая система, поддерживаемая расширяемым интерфейсом встроенного ПО, основана на файловой системе FAT. EFI определяет конкретную версию FAT, которая явно документирована и доступна для тестирования. Соответствие спецификации EFI и связанным с ней справочным документам — единственное определение FAT, которое необходимо реализовать для поддержки EFI. Чтобы отличить файловую систему EFI от чистой FAT, был определен новый тип файловой системы разделов.
  50. ^ «Техническая записка TN2166: Секреты GPT» . разработчик.apple.com . 6 ноября 2006 г. Проверено 6 мая 2015 г.
  51. ^ «UEFI — OSDev Wiki» . wiki.osdev.org . Проверено 26 сентября 2020 г.
  52. ^ «ЭФИСТУБ — АрхВики» . wiki.archlinux.org . Проверено 27 октября 2020 г.
  53. ^ Jump up to: а б «Инновационная платформа платформы Intel® для EFI» (PDF) . Спецификация модуля поддержки совместимости (версия 0.97) . Интел. 4 сентября 2007 г. Проверено 6 октября 2013 г.
  54. ^ «БИОС ПК будет отключен к 2020 году, поскольку Intel планирует перейти на чистый UEFI» . Арс Техника . Проверено 29 мая 2018 г.
  55. ^ «CosmicStrand: обнаружение сложного руткита прошивки UEFI» . Securelist от Касперского . Проверено 4 августа 2022 г.
  56. ^ «Удаление устаревшей поддержки загрузки для платформ Intel. Технические рекомендации» .
  57. ^ «Руководство по установке Red Hat Enterprise Linux 6» . 30.2.2. Настройка загрузки PXE для EFI . Красная шляпа . Проверено 9 октября 2013 г.
  58. ^ Эль-Хадж-Махмуд, Самер (июль 2013 г.). «Достижения в области сетевых технологий до ОС в UEFI 2.4» (PDF) . Хьюлетт-Паккард . Проверено 29 мая 2019 г.
  59. ^ Рачерла, Сангам; Эрденбергер, Сильвио; Раджагопал, Хариш; Рут, Кай (январь 2014 г.). Конвергенция систем хранения данных и сетей с использованием FCoE и iSCSI (PDF) (2-е изд.). Красные книги IBM . Проверено 20 апреля 2022 г.
  60. ^ «Новая поддержка загрузки HTTP UEFI в UEFI 2.5» . прошивкаsecurity.com . 9 мая 2015 года . Проверено 13 августа 2015 г.
  61. ^ «Обзор безопасной загрузки» . Майкрософт. 10 декабря 2014 года . Проверено 18 февраля 2016 г.
  62. ^ Эдж, Джейк. «UEFI и «безопасная загрузка» » . LWN.net . Проверено 9 сентября 2012 года .
  63. ^ Jump up to: а б «Безопасная загрузка Windows 8: споры продолжаются» . Мир ПК . Проверено 9 сентября 2012 года .
  64. ^ «Безопасная загрузка для ESXi 6.5 — гарантия гипервизора» . Блог VMware vSphere . 4 мая 2017 г. Проверено 18 августа 2017 г.
  65. ^ HowTos/UEFI — CentOS Wiki
  66. ^ Ларабель, Майкл (30 апреля 2018 г.). «Debian добивается прогресса в поддержке UEFI SecureBoot в 2018 году» . Фороникс . Фороникс Медиа . Проверено 23 мая 2018 г.
  67. ^ Гаррет, Мэтью (27 декабря 2012 г.). «Поддержка распространения безопасной загрузки» . Mjg59.dreamwidth.org . Проверено 20 марта 2014 г.
  68. ^ «Безопасная загрузка Linux Mint» . Линукс Минт . Проверено 12 января 2024 г.
  69. ^ «8.4 | AlmaLinux Wiki» . wiki.almalinux.org . Проверено 10 апреля 2024 г.
  70. ^ «Безопасная загрузка» . FreeBSD Wiki . FreeBSD . Проверено 16 июня 2015 г.
  71. ^ Jump up to: а б «Единый расширяемый интерфейс прошивки» . Оболочка UEFI . Арч Линукс . Проверено 25 сентября 2013 г.
  72. ^ Jump up to: а б «Оболочки EFI и сценарии» . Интел . Проверено 25 сентября 2013 г.
  73. ^ Jump up to: а б «Спецификация оболочки UEFI, версия 2.0, ошибка A» (PDF) . Unified EFI, Inc. Май 2012 г. Проверено 25 сентября 2013 г.
  74. ^ «EDK2: ShellPkg» . Гитхаб . Проверено 18 марта 2020 г.
  75. ^ «tianocore/edk2: релизы» . Гитхаб .
  76. ^ «Архив электронной почты: edk2-devel» . [edk2] Включение оболочки UEFI в ISO-дистрибутив Linux . СоурсФордж . 2012 . Проверено 25 сентября 2013 г.
  77. ^ «TianoCore на SourceForge» . Часто задаваемые вопросы по Шеллу . Интел . Проверено 25 сентября 2013 г.
  78. ^ Jump up to: а б «Единый расширяемый интерфейс прошивки» . Запускаем UEFI Shell . Арч Линукс . Проверено 25 сентября 2013 г.
  79. ^ «Основные инструкции по использованию EFI для настройки сервера на серверных платах Intel® и серверных системах Intel®» (PDF) . Интел . 2008 год . Проверено 25 сентября 2013 г.
  80. ^ «Единый расширяемый интерфейс прошивки» . bcfg . Арч Линукс . Проверено 25 сентября 2013 г.
  81. ^ «Примеры GRUB EFI» . Асус . Арч Линукс . Проверено 25 сентября 2013 г.
  82. ^ «Подписанное капсульное обновление» . tianocore-docs.github.io .
  83. ^ барризолотой. «Платформа обновления встроенного ПО Windows UEFI — драйверы Windows» . docs.microsoft.com . Проверено 25 сентября 2020 г.
  84. ^ «Начало работы | Технология микрочипов» . www.microchip.com . Проверено 24 декабря 2020 г.
  85. ^ Барри, Питер; Кроули, Патрик (2012). Современные встраиваемые вычисления: проектирование связанных, всеобъемлющих, мультимедийных систем . Уолтем, Массачусетс: Издательство Morgan Kaufmann . п. 169. ИСБН  978-0-12-394407-8 . OCLC   810455404 .
  86. ^ «Intel отказывается от совместимости с UEFI BIOS в 2020 году» . Твикеры (на голландском языке) . Проверено 30 декабря 2022 г.
  87. ^ «Поток загрузки PI · tianocore/Tianocore.github.io Wiki» . Гитхаб .
  88. ^ «Инжиниринговые услуги» (PDF) .
  89. ^ «Унифицированный расширяемый интерфейс встроенного ПО (UEFI) — документация по ядру Linux» . www.kernel.org . Архивировано из оригинала 25 октября 2020 года . Проверено 7 ноября 2020 г. .
  90. ^ «TianoCore — coreboot» . Проверено 25 мая 2012 г.
  91. ^ «SecureCore Тиано™» . Феникс Технологии. Архивировано из оригинала 6 сентября 2010 года . Проверено 14 сентября 2010 г.
  92. ^ «Aptio®: комплексное решение для продукта UEFI» (PDF) . Американские мегатренды, Inc. Проверено 2 мая 2018 г.
  93. ^ «Почему США?» . Компания Insyde Software . Проверено 2 мая 2018 г.
  94. ^ «Microsoft объявляет о «Проекте Mu» как альтернативе TianoCore UEFI с открытым исходным кодом» . Фороникс . Проверено 20 декабря 2018 г.
  95. ^ «Соединение U-Boot UEFI и GRUB» (PDF) . Проверено 12 сентября 2018 г.
  96. ^ «UEFI поверх U-Boot» (PDF) . Архивировано из оригинала (PDF) 11 сентября 2018 года . Проверено 12 сентября 2018 г.
  97. ^ «Установка OpenBSD 6.3 на Raspberry 3» . Архивировано из оригинала 21 ноября 2018 года . Проверено 12 сентября 2018 г.
  98. ^ «Загрузка iSCSI с помощью U-Boot и iPXE» . Архивировано из оригинала 31 июля 2020 года . Проверено 18 мая 2020 г.
  99. ^ Компьютер Apple. « Руководство по универсальному двоичному программированию, второе издание: расширяемый интерфейс прошивки (EFI). Архивировано 24 июля 2008 г. на Wayback Machine ».
  100. ^ Переход Apple от открытой прошивки к расширяемому интерфейсу прошивки , mactech, 2007.
  101. ^ Jump up to: а б «Инновационная платформа платформы Intel®: обзор UEFI» . Интел . Проверено 14 сентября 2010 г.
  102. ^ Оценка UEFI с использованием коммерческих платформ и решений (PDF) , UEFI, май 2011 г., заархивировано из оригинала (PDF) 22 марта 2012 г.
  103. ^ Предварительный обзор материнской платы Asus P67 .
  104. ^ «Требования к сертификации оборудования Windows для клиентских и серверных систем» . Майкрософт. Январь 2013 г. System.Fundamentals.Firmware.CS.UEFISecureBoot.ConnectedStandby... Платформы должны быть UEFI класса три (определение см. в разделе UEFI Industry Group, Оценка UEFI с использованием коммерческих платформ и решений, версия 0.3) без модуля поддержки совместимости. установленный или устанавливаемый. Эмуляция BIOS и устаревшая загрузка ПК/AT должны быть отключены.
  105. ^ «Microsoft: все, что вам нужно знать о Windows 8 на ARM» . Журнал ПК . Архивировано из оригинала 6 сентября 2013 года . Проверено 30 сентября 2013 г.
  106. ^ Ричардсон, Брайан (30 октября 2017 г.). « Барьеры «последней мили» на пути удаления устаревшего BIOS» (PDF) . Проверено 22 ноября 2017 г. .
  107. Объявление о выпуске 3.5pre1, сделанное сопровождающим Бреттом Джонсоном 27 февраля 2004 г.
  108. ^ EFI-версия Grub , Debian GNU/Linux , получено 1 мая 2008 г.
  109. ^ Jump up to: а б с «Ubuntu будет использовать GRUB 2 для реализации безопасной загрузки» . H онлайн . Проверено 28 октября 2012 г.
  110. ^ История выпусков OpenVMS , HP, заархивировано из оригинала 5 января 2009 г. , получено 16 сентября 2008 г.
  111. ^ «Состояние порта на x86-64» (PDF) . vmssoftware.com . 6 октября 2017 г. Архивировано из оригинала (PDF) 22 сентября 2020 г. . Проверено 9 сентября 2020 г.
  112. ^ REFIt — Windows Vista и EFI , SourceForge, заархивировано из оригинала 5 сентября 2008 г. , получено 31 мая 2008 г.
  113. ^ «Расширяемый интерфейс встроенного ПО», Windows Server TechCenter , Microsoft, заархивировано из оригинала 30 августа 2006 г.
  114. ^ Рекомендации по внедрению унифицированного расширяемого интерфейса прошивки (UEFI)
  115. ^ Эрсек, Ласло (январь 2015 г.). «Отчет о состоянии открытой прошивки виртуальной машины (OVMF)» . KVM-проект Linux . Проверено 13 ноября 2022 г.
  116. ^ Загрузитесь в режиме UEFI или устаревшем режиме BIOS.
  117. ^ «Поддержка унифицированного расширенного интерфейса прошивки в Windows Vista» . Майкрософт. 26 октября 2006 г. Проверено 12 июня 2010 г. Microsoft определила, что поставщики не будут заинтересованы в производстве собственной 32-битной прошивки UEFI из-за текущего состояния основных 64-битных вычислений и стоимости платформы. Поэтому Microsoft изначально не предоставляла поддержку 32-битных реализаций UEFI.
  118. ^ Базовый драйвер дисплея Microsoft
  119. ^ «Microsoft рекламирует невероятное время загрузки Windows 8» . Проверено 9 сентября 2011 г.
  120. ^ Бродкин, Джон (21 сентября 2011 г.). «Безопасная загрузка Windows 8 может усложнить установку Linux» . Арс Техника . Проверено 23 сентября 2011 г.
  121. ^ «Ознакомьтесь со спецификациями, функциями и требованиями к компьютеру Windows 11» . Майкрософт .
  122. ^ «Минимальные системные требования для Windows IoT Enterprise» . Microsoft Learn . 22 мая 2024 г. Проверено 7 июня 2024 г.
  123. ^ «FreeBSD получит поддержку UEFI» . Х. ​Проверено 7 марта 2013 г.
  124. ^ «UEFI — FreeBSD Wiki» . FreeBSD.org . Проверено 19 июня 2014 г.
  125. ^ "UEFI(8)" . www.freebsd.org . Проверено 11 января 2021 г.
  126. ^ «Oracle Solaris 11.1 — что нового» (PDF) . oracle.com . Проверено 4 ноября 2013 г.
  127. ^ «ОпенБСД 5.9» . www.openbsd.org . Проверено 11 сентября 2016 г.
  128. ^ «ОпенБСД 6.0» . www.openbsd.org . Проверено 11 сентября 2016 г.
  129. ^ Провен, Лиам (4 сентября 2023 г.). «ArcaOS 5.1 дает устаревшей OS/2 обновленную версию UEFI для XXI века» . Регистр . Проверено 4 сентября 2023 г.
  130. ^ «Загрузка ArcaOS на оборудовании UEFI (демонстрация)» . youtube.com . 8 августа 2019 года . Проверено 22 сентября 2020 г.
  131. ^ Сандерс, Джеймс (13 августа 2019 г.). «В современном дистрибутиве OS/2 ArcaOS добавлена ​​поддержка загрузки через UEFI» . techrepublic.com . Архивировано из оригинала 21 октября 2019 года . Проверено 4 сентября 2023 г.
  132. ^ Открытая прошивка виртуальной машины , SourceForge, заархивировано из оригинала 6 октября 2011 г.
  133. ^ «Прошивка EFI для рабочей станции VMWare | Сообщества VMware» . Сообщества.vmware.com. 3 октября 2012 года . Проверено 28 февраля 2014 г.
  134. ^ «Использование прошивки EFI/UEFI на виртуальной машине VMware | Сообщества VMware» . Сообщества.vmware.com. 6 декабря 2014 года . Проверено 18 января 2016 г.
  135. ^ «Анонс VMware Workstation 14 — VMware Workstation Zealot» . VMware Workstation Zealot . 22 августа 2017 года . Проверено 2 августа 2018 г.
  136. ^ «Что нового в vSphere 5.0» . Vmware.com . Проверено 28 февраля 2014 г.
  137. ^ «Примечания к выпуску VMware vSphere 6.5» . pubs.vmware.com . Проверено 13 января 2017 г.
  138. ^ 3.1 Журнал изменений , VirtualBox, заархивировано из оригинала 28 сентября 2010 г.
  139. ^ Билет 7702 , VirtualBox
  140. ^ «Заявление старшего инженера-программиста Oracle», Форум , VirtualBox
  141. ^ «Тестирование безопасной загрузки с помощью KVM» . Проект Федора . Проверено 28 февраля 2014 г.
  142. ^ «Что нового в Hyper-V для Windows Server 2012 R2» . MicrosoftTechNet . Проверено 24 июня 2013 г.
  143. ^ «Экранированные виртуальные машины» . Проверено 16 февраля 2019 г.
  144. ^ «TianoCore на SourceForge: Комплект разработки приложений EDK2 (EADK)» . Интел . Проверено 25 сентября 2013 г.
  145. ^ «Тианокоре: УДК» . Гитхаб .
  146. ^ «Интервью: Рональд Дж. Минних» . Фосдем. 6 февраля 2007 года . Проверено 14 сентября 2010 г.
  147. ^ Доктороу, Кори (27 декабря 2011 г.), Грядущая война в области вычислений общего назначения , получено 25 сентября 2013 г.
  148. ^ «coreboot (он же LinuxBIOS): бесплатная прошивка x86 с открытым исходным кодом» . Ютуб. 31 октября 2008 года . Проверено 14 сентября 2010 г.
  149. ^ «Добро пожаловать» , TianoCore , SourceForge, заархивировано из оригинала 23 апреля 2012 г.
  150. ^ Jump up to: а б «Блокирует ли Microsoft загрузку Linux на оборудовании ARM?» . Компьютерный мир Великобритании . Проверено 6 марта 2012 г.
  151. ^ «Windows 10 сделает блокировку безопасной загрузки альтернативной ОС реальностью» . Арс Техника . 20 марта 2015 года . Проверено 21 марта 2015 г.
  152. ^ «Рекомендации Фонда свободного программного обеспечения для распространения свободных операционных систем с учетом безопасной загрузки — Фонд свободного программного обеспечения — совместная работа над свободным программным обеспечением» . Фонд свободного программного обеспечения . Проверено 18 марта 2020 г.
  153. ^ «Переход на Linux на ПК с Windows 8» . ЗДНет . Проверено 26 февраля 2013 г.
  154. ^ Jump up to: а б «Ubuntu подробно описывает свои планы безопасной загрузки UEFI» . Еженедельные новости Linux . Проверено 11 сентября 2012 г.
  155. ^ Jump up to: а б «Торвальдс говорит, что в ядре Linux нет поддержки сертификатов Microsoft» . Х. ​Проверено 26 февраля 2013 г.
  156. ^ «Линус Торвальдс: Я не променяю Linux на «глубокую глотку Microsoft» » . Арс Техника. 26 февраля 2013 года . Проверено 26 февраля 2013 г.
  157. ^ «Эксклюзив: группа Open Software подала жалобу на Microsoft в ЕС» . Рейтер. 26 марта 2013 года . Проверено 26 марта 2013 г.
  158. ^ «Демо-эксплойты исследователей, позволяющие обойти безопасную загрузку Windows 8» . Мир ИТ . Архивировано из оригинала 5 августа 2013 года . Проверено 5 августа 2013 г.
  159. ^ МЕНДЕЛЬСОН, Том (12 августа 2016 г.). «Проблема с безопасной загрузкой: Microsoft утечка ключа бэкдора, прошивка широко открыта [Обновлено]» . Арс Техника . Проверено 12 августа 2016 г. .
  160. ^ Смолар, Мартин (1 марта 2023 г.). «Буткит BlackLotus UEFI: миф подтвержден» . welivesecurity.com . Проверено 1 марта 2023 г.
  161. ^ Гудин, Дэн (6 марта 2023 г.). «Скрытое вредоносное ПО UEFI, обходящее безопасную загрузку, включенное из-за неисправимой уязвимости Windows» . Арс Техника . Проверено 6 марта 2023 г.
  162. ^ «HowTos/UEFI — CentOS Wiki» . Wiki.centos.org . Проверено 10 ноября 2020 г.
  163. ^ «SecureBoot — Debian Wiki» . wiki.debian.org . Проверено 10 ноября 2020 г.
  164. ^ «SUSE Linux Enterprise Server 15 SP1: Глава 13. UEFI (унифицированный расширяемый интерфейс встроенного ПО) (Руководство администратора)» . document.suse.com . Проверено 10 ноября 2020 г.
  165. ^ Jump up to: а б «Linux на ПК с Windows 8: некоторый прогресс, но все равно неприятности» . ЗДНет . Проверено 26 февраля 2013 г.
  166. ^ «Lenovo UEFI хочет загружать только Windows, RHEL» . Фороникс . Проверено 26 февраля 2013 г.
  167. ^ «Linux оправдан в деле о смерти UEFI ноутбука Samsung» . Бит-тек . Проверено 26 февраля 2013 г.
  168. ^ «Загрузка Linux с использованием UEFI может привести к поломке ноутбуков Samsung» . Х. ​Проверено 26 февраля 2013 г.

Дальнейшее чтение

[ редактировать ]
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 96baccc95e75eaea7b0f1d19b53b2d07__1722976980
URL1:https://arc.ask3.ru/arc/aa/96/07/96baccc95e75eaea7b0f1d19b53b2d07.html
Заголовок, (Title) документа по адресу, URL1:
UEFI - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)