UEFI - что это? Загрузка, установка, преимущества, особенности настройки. UEFI - Унифицированный расширяемый микропрограммный интерфейс

1. Что такое UEFI?
UEFI (Unified Extensible Firmware Interface) представляет собой замену BIOS, который лучше соответствует требованиям современного разнообразного «железа». По своей сути, UEFI является интерфейсом, который отвечает за предзагрузочное окружение операционной системы.

2. В чем преимущества UEFI перед BIOS?

  • Поддержка носителей объемом >2Тб
  • Более простая подготовка загрузочных носителей, отсутствие необходимости в записи разных загрузочных секторов
  • Наличие собственного менеджера загрузки. Теперь необязательно заводить многоуровневую чехарду загрузчиков, чтобы организовать мультизагрузочную среду, в EFI NVRAM штатно хранятся все записи о имеющихся загрузчиках, и переключение между загружаемыми ОС осуществляется так же, как и между загрузочными носителями.
  • Более защищенная среда загрузки
  • Графический режим конфигурации UEFI, с поддержкой графики и мыши

3. Можно ли обновить мой BIOS на UEFI?
Не совсем. UEFI нельзя прошить вместо BIOS, поскольку он занимает гораздо больше памяти. Но существует такая штука, как DUET. Это загружаемая из BIOS посредством отдельного загрузочного раздела среда UEFI, которая может быть полезна, если вы собираетесь использовать диски объемом >2Тб на своем старом железе с BIOS.

4. Можно ли из UEFI загружаться, как раньше, через загрузочные секторы и MBR-диски?
Да, если в конфигурации UEFI включена поддержка Legacy Boot

5. Что такое GPT?
GUID Partition Table, GPT - стандарт формата размещения таблиц разделов на жестком диске. Он является частью интерфейса EFI. EFI использует GPT там, где BIOS использует MBR.

6. В чем преимущества GPT перед MBR?

  • Поддержка носителей объемом >2.2Тб
  • Отсутствие ограничения на 4 основных раздела, и как следствие-отсутствие необходимости в логических разделах
  • Повышенная безопасность-GPT хранит резервную копию таблицы разделов в конце диска, поэтому в случае неполадок существует возможность восстановления разметки при помощи запасной таблицы.
  • Защита от повреждения устаревшими программами посредством Protective MBR
  • Существует возможность использования старых загрузочных секторов.

7. Где в GPT хранятся аналоги загрузочных секторов?
EFI использует для хранения загрузчиков папку EFI/boot, находящуюся в корне раздела FAT32. По умолчанию должен загружаться файл /EFI/boot/bootx64.efi
Если загружаемый диск размечен в стиле MBR, то наличие файловой системы FAT32 на первом разделе (если их несколько) и файла с загрузчиком, лежащего по дефолтному пути, являются единственными условиями загрузки с этого носителя (CD/DVD тоже поддерживаются). В случае, если диск размечен в стиле GPT, раздел необязательно должен быть первым, но у него должен присутствовать флаг boot (проверить и выставить можно через gparted)

8. Возможно ли сконвертировать диск из MBR в GPT и обратно без потери данных?
Да. Для этого потребуется загрузочный диск/флешка с Gparted. После загрузки с загрузочного носителя откроется окно gparted, в котором в верхнем правом углу будет отображен рабочий диск (обычно это /dev/sda). Необходимо запомнить имя диска, который вы хотите сконвертировать, открыть терминал, и набрать там sudo gdisk /dev/sda где вместо sda, при необходимости, нужно подставить имя вашего диска. Затем нужно ввести команду w и подтвердить запись таблицы GPT на диск. Все, диск преобразован в таблицу GPT. Для обратной конвертации в MBR необходимо таким же образом открыть gdisk для вашего диска, и последовательно набрать команду r, затем g, после чего подтвердить запись новой таблицы при помощи команды w.

9. Что такое UEFI Shell?
Это среда работы с окружением EFI (терминалоподобная), позволяющая на ходу запускать efi-совместимые загрузчики, выполнять простейшие операции с файлами, а также оперировать встроенным менеджером загрузки.

10. Как редактировать/удалить/добавить пункты загрузки в загрузочное меню UEFI?
Качаем UEFI Shell, копируем его в файл /EFI/boot/bootx64.efi на FAT32 флешку, и загружаемся с нее. После удачной загрузки шелла должно появиться приглашение командной строки
Shell>
Выше приглашения должен отобразиться список имеющихся подключенных дисков (fs0:, fs1:, BLK0, и тому подобное). Чтобы еще раз вызвать этот список в случае необходимости, воспользуйтесь командой
map fs*
Из полного имени диска можно почерпнуть некоторую информацию о диске. Например:
PciRoot(0x0)/Pci(0x1,0x1)/Ata(0x0)/HD(1,MBR,0x27212721,0x3F,0x13FA6D9)
отсюда
Ata(0x0)-интерфейс подключения диска, а также порт контроллера
HD-это жесткий диск
1-количество разделов на диске
MBR-схема разметки

Найдя таким образом необходимый диск, нужно перейти в него
fs0:
затем при помощи старых добрых досовских команд dir и cd нужно нащупать и перейти в каталог с загрузочными efi-файлами. Обычно это /EFI/boot/. Затем, находясь в этом каталоге, можно, введя имя файла загрузчика, сразу же загрузиться в него. Чтобы добавить нужный файл в список загрузочных записей, желательно сначала считать уже имеющиеся записи при помощи команды
bcfg boot dump
Затем, чтобы добавить загрузочный файл в этот список, нужно ввести
bcfg boot add N filename.efi «label»
Где N-порядковый номер записи (если на ее месте что-то было-этот пункт перезапишется)
filename.efi-имя файла с загрузчиком
label-имя, под которым эта запись будет отображаться в списке
Можно снова просмотреть список загрузочных записей через
bcfg boot dump
и убедиться, что все на месте. Можно перезагружаться и проверять.
Для удаления записи из списка используется команда
bcfg boot rm N
где N-номер записи

11. Что такое Secure Boot?
Спецификация Secure Boot разработана Microsoft в рамках проекта UEFI и позволяет защитить загрузочную среду от вмешательства в загрузочные файлы путем контроля подписей загружаемых файлов на предмет их соответствия белому списку ключей, зашитых в uefi как доверенные. «Побочным эффектом» такой защиты от руткитов является невозможность установки ОС, отличной от Windows 8 (на данный момент только она поддерживает Secure Boot), а также исключает возможность запуска с старых mbr дисков и загрузочных CD-дисков/флешек.

12. Как отключить Secure Boot?


13. Как сделать UEFI-совместимую флешку с дистрибутивом ОС?
В большинстве случае все очень просто:

  1. Отформатируйте флешку в файловую систему FAT32
  2. Скопируйте на нее все содержимое iso-образа дистрибутива

Но в случае с ОС Windows Vista/7 понадобится предварительно подготовить дистрибутив, т.к. они изначально не содержат EFI-файлов в нужных местах. Сразу небольшая оговорка–windows поддерживает работу с uefi только в 64-битных редакциях.

14. Как узнать, что загрузочная флешка сделана правильно, и будет грузиться в UEFI-режиме?
Если все сделано правильно, то в списке загрузочных носителей должно появиться два устройства с одинаковым именем, но разными префиксами, UEFI: и USB: . Через первый осуществляется загрузка в UEFI режиме, через второй-Legacy загрузка из загрузочного сектора.

15. Что такое Fast Boot Mode?
Режим быстрой загрузки, при котором управление практически сразу передаётся операционной системе, ещё до готовности к работе оборудования, инициализацию которого проводит сама ОС. Fast Boot исключает задержки, вызванные двойной инициализацией устройств. В «классическом» режиме после получения управления операционная система инициализирует повторно уже ранее инициализированные BIOS устройства. С учётом того, что инициализация некоторых типов устройств является достаточно длительным процессом, выигрыш в скорости очевиден. При включении Fast Boot управление передаётся системе раньше, чем производится инициализация USB, что приводит к недоступности USB-накопителей и клавиатуры до старта установленной на диск системы. Так как Microsoft предъявляет достаточно жёсткие требования ко времени, в которое должна уложиться прошивка при включенном режиме Fast Boot, а инициализация USB-устройств может занимать секунды, к моменту старта системы USB-устройства остаются неинициализированными. В этом случае проявляется обратная сторона медали — пользователь компьютера с USB-клавиатурой не может прервать процесс начальной загрузки и инициировать установку другой системы, так как клавиатура остаётся нерабочей до момента запуска ОС. Более того, инициализация чипа i8042 тоже требует времени и на некоторых ноутбуках производители прошивки оставляют неинициализированными встроенную клавиатуру с интерфейсом PS/2.

Extensible Firmware Interface

Extensible Firmware Interface (EFI) - интерфейс между операционной системой и микропрограммами, управляющими низкоуровневыми функциями оборудования, его основное предназначение: корректно инициализировать оборудование при включении системы и передать управление загрузчику операционной системы . EFI предназначен для замены BIOS - интерфейса, который традиционно используется всеми IBM PC-совместимыми персональными компьютерами. Первая спецификация EFI была разработана Intel , позднее от первого названия отказались и последняя версия стандарта носит название Unified Extensible Firmware Interface (UEFI). В настоящее время разработкой UEFI занимается Unified EFI Forum.

История

Изначально EFI создавалась для первых систем Intel-HP Itanium в начале 2000-х годов. Ограничения PC-BIOS (16-битный исполняемый код, адресуемая память 1 Мбайт, аппаратные ограничения IBM PC/AT и т. д.) были очевидно недопустимы в больших серверных платформах, для использования в которых планировался Itanium. Изначально назывался - Intel Boot Initiative (Загрузочная Инициатива Intel ), позже было переименовано в EFI.

Спецификация EFI 1.02 была выпущена Intel 12 декабря 2000 года. (Версия 1.01 имела проблемы в юридическом плане, связанные с торговой маркой, и была быстро изъята).

Спецификация EFI 1.10 была выпущена 1 декабря 2002 года. Она включала модель драйвера EFI, а также несколько незначительных улучшений по сравнению с версией 1.02.

В 2005 году Intel внесла эту спецификацию в UEFI Forum, который теперь ответственен за развитие и продвижение EFI. EFI был переименован в Unified EFI (UEFI), чтобы отразить это изменение, при этом большая часть документации использует оба термина.

UEFI Forum выпустил спецификацию 2.1 UEFI 7 января 2007 года. Она добавила и улучшила криптографию, установление подлинности сети и архитектуру пользовательского интерфейса.

Текущая спецификация UEFI версии 2.3.1 была представлена в апреле 2011 года.

Интерфейс, определённый спецификацией EFI, включает таблицы данных, содержащие информацию о платформе, загрузочные и runtime-сервисы, которые доступны для загрузчика операционной системы (ОС) и самой ОС. Некоторые существующие расширения BIOS, типа ACPI и SMBIOS , также присутствуют в EFI, поскольку не требуют 16-разрядного runtime-интерфейса.

Сервисы

EFI определяет «загрузочные сервисы», которые включают поддержку текстовой и графической консоли на различных устройствах, шин, блоков и файловых сервисов, и runtime-сервисы, например дата, время и энергонезависимая память.

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

В дополнение к стандартным, архитектурно-зависимым драйверам устройств, спецификация EFI предусматривает независимую от платформы среду драйверов, названную EFI Byte Code (EBC). От системного встраиваемого ПО (firmware) спецификацией UEFI требуется иметь интерпретатор для любых образов EBC, которые загружены или могут быть загружены в среду. В этом смысле EBC подобен Open Firmware , независимому от аппаратных средств встраиваемому ПО, используемому в компьютерах Apple Macintosh и Sun Microsystems SPARC .

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

Менеджер загрузки

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

Поддержка дисков

В дополнение к стандартной схеме разметки дисков - Master boot record (MBR), EFI имеет поддержку GUID Partition Table (GPT), которая свободна от характерных для MBR ограничений. Спецификация EFI не включает описание для файловых систем, однако реализации EFI обычно поддерживают FAT32 как файловую систему.

Оболочка EFI

Сообщество EFI создало открытую среду оболочки (shell environment). Пользователь для выполнения некоторых операций может загрузить оболочку EFI (EFI shell) вместо того, чтобы загружать ОС. Оболочка - приложение EFI; она может постоянно находиться в ПЗУ платформы или на устройстве, драйверы для которого находятся в ПЗУ.

Оболочка может использоваться для выполнения других приложений EFI, таких как настройка, установка ОС, диагностика, утилиты конфигурации и обновления прошивок. Она также может использоваться, чтобы проиграть CD или DVD-носители не загружая ОС, при условии, что приложения EFI поддерживают эти возможности. Команды оболочки EFI также позволяют копировать или перемещать файлы и каталоги в поддерживаемых файловых системах, загружать и выгружать драйверы. Также оболочкой может использоваться полный TCP/IP-стек.

Оболочка EFI поддерживает сценарии в виде файлов.nsh , аналогичных пакетным файлам в DOS .

Названия команд оболочки часто наследуются от интерпретаторов командной строки (COMMAND.COM или Unix shell). Оболочка EFI может рассматриваться как функциональная замена интерпретатора командной строки и текстового интерфейса BIOS.

Расширения

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

Реализация

Intel Platform Innovation Framework для EFI

Intel Platform Innovation Framework для EFI («инновационный инструментарий Intel») - ряд спецификаций, разработанных Intel совместно с EFI. Если EFI определяет интерфейс между ОС и firmware, то инструментарий определяет структуры, используемые для создания встраиваемого ПО на более низком уровне, чем интерфейс между ОС и firmware.

В частности, инструментарий включает все шаги, необходимые для инициализации компьютера после включения. Эти внутренние возможности встраиваемого ПО не определены как часть спецификации EFI, но включены в спецификацию инициализации платформы (Platform Initialization Specification), разработанную UEFI. Инструментарий был проверен на платформах XScale, Itanium и IA-32 .

Совместимость с ОС для платформы x86, требующими для работы интерфейса «legacy BIOS», достигается с помощью модуля поддержки совместимости (CSM). CSM включает 16-битную программу (CSM16), реализуемую изготовителем BIOS , и слой, связывающий CSM16 с инструментарием.

Intel разработал эталонную реализацию для инструментария под кодовым названием «Tiano». Tiano - полная, legacy-free реализация встраиваемого ПО, обеспечивающая поддержку EFI. Tiano не включает 16-битную часть CSM, но обеспечивает интерфейсы, требуемые для дополнений, реализуемых производителями BIOS. Intel не предоставляет полную реализацию Tiano для конечных пользователей.

Часть Tiano была выпущена в виде исходных текстов TianoCore проекта как EFI Developer Kit (EDK). Эта реализация включает EFI и некоторый код инициализации аппаратных средств, но не раскрывает полностью особенностей непосредственно встраиваемого ПО. Несколько лицензий использовались для этого кода, включая BSD license и Eclipse Public License .

Продукты, основанные на EFI, UEFI и спецификациях инструментария, доступны через независимых производителей BIOS, например, American Megatrends (AMI) и Insyde Software. Некоторые реализации производителей полностью основаны на Tiano, в то время как другие, соответствуют спецификациям, но не основываются на эталонной реализации Intel.

Платформы, использующие EFI или инструментарий

Все системы Itanium или Itanium 2, которые выпускаются с EFI-совместимым встраиваемым ПО, должны соответствовать спецификации DIG64.

5 апреля 2006 года Apple выпустила пакет Boot Camp , который позволяет создать диск с драйверами Windows XP, а также содержит неразрушающий инструмент разметки дисков, позволяющий установить Windows XP совместно с Mac OS X. Также было выпущено обновление встраиваемого ПО, которое добавило поддержку BIOS для данной реализации EFI. Последующие модели Macintosh были выпущены с обновлённым встраиваемым ПО. Теперь все современные компьютеры Macintosh могут загружать BIOS -совместимые ОС, такие как Windows XP, Vista и Windows 7.

Большое количество системных плат фирмы Intel выпускается с встраиваемым ПО на основе инструментария (например, DP35DP). Так, в течение 2005 было выпущено более одного миллиона систем Intel. Новые мобильные телефоны, настольные компьютеры и серверы, использующие инструментарий, начали производить в 2006 году. Например, все системные платы, которые построены на наборе системной логики Intel 945, используют инструментарий. Однако производимое встраиваемое ПО обычно не включает поддержку EFI и ограничено поддержкой BIOS.

С 2005 года EFI начал применяться в не-ПК архитектурах, таких, как встраиваемые системы на ядре XScale.

EDK включает цель NT32, которая позволяет встраиваемому ПО EFI и приложениям EFI выполняться в приложениях Windows.

В 2008 году компания MSI выпустила линейку системных плат на чипсете Intel P45 с поддержкой EFI,

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

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

EFI поддерживает графические меню и некоторые возможности, например, осуществленные Aptio или Great Wall UEFI.

Критика

EFI критиковался за то, что он привёл к усложнению системы, не давая существенных преимуществ , из-за отказа от альтернативных реализаций BIOS с полностью открытыми исходными текстами - OpenBIOS и coreboot .

В сентябре 2011 года Matthew Garrett предупредил о том, что условия сертификации компьютеров как совместимых с Microsoft Windows 8, могут привести к появлению компьютеров, на которые невозможно будет установить какую‐либо другую операционную систему. Microsoft заявила, что поставщики могут реализовать возможность добавления других подписей, и позже сделала это обязательным требованием сертификации, однако для устройств на ARM (ранее речь могла идти о мобильных устройствах с ОС Windows Phone , но как раз в те дни Qualcomm объявила о планах выпуска субноутбуков с поддержкой Windows 8) требование противоположное: отключение «безопасной загрузки» (и, соответственно, установка других ОС) должно быть невозможным.

Отличия в процессе загрузки BIOS и UEFI

При разработке UEFI участники форума с самого начала установили четкие рамки для каждого процесса. Процедуру загрузки (PI, Platform Initialization - инициализация платформы)материнской платы, основанной на UEFI, также можно разделить на несколько этапов. Первым из них, следующим непосредственно за включением компьютера,является Pre-EFI Initialization (PEI): система загружает модули инициализации процессора, памяти и чипсета и выполняет их. Затем осуществляется переход в окружение исполнения драйверов (DXE). В этот момент производится активация остальных компонентов, причем одновременно нескольких.

В UEFI можно интегрировать большое количество драйверов, не привязанных к определенной системе. Это значит, что производителям достаточно написать всего одну версию драйвера для всех платформ. Благодаря инициализации драйверов на этом раннем этапе запуска можно получить доступ к сетевой плате, в том числе функциям загрузки по сети или удаленного обслуживания. Кроме того, при активной графической подсистеме можно наслаждаться привлекательно оформленным меню UEFI.

Наибольший выигрыш во времени запуска достигается благодаря тому, что отпадает необходимость в поиске загрузчика на всех устройствах: загрузочный диск назначается в UEFI на этапе установки ОС. Ускорение старта системы не единственное достоинство UEFI. В отдельном EFI-разделе можно хранить множество приложений. Так, еще до загрузки самой ОС можно запустить программу диагностики, антивирусное ПО или утилиту управления системой.

Давно назревший переход на платформу UEFI постоянно откладывался. Теперь это в прошлом, и во многом - благодаря жестким дискам емкостью 3 Тбайт, которые уже доступны в продаже. BIOS ПК, используя классическую MBR винчестера, способна получать доступ только к 2 32 секторам размером 512 байт, то есть максимум к 2 Тбайт (2,2 ТБ) дискового пространства. Seagate использует секторы большего размера с целью сделать всю емкость доступной хотя бы после старта Windows. При этом компьютер на основе BIOS не сможет загрузиться с такого диска. UEFI же работает с таблицей разделов GUID (GPT, GUID Partition Table), в которой размер адреса составляет 64 бита, и поддерживает до 2 64 секторов, то есть способен обращаться к девяти зеттабайтам (9 млрд. терабайт).

Еще одна особенность UEFI - Безопасный протокол загрузки. Он позволяет установить один или несколько подписанных ключей в прошивку системы. После включения, “безопасной загрузки” UEFI предотвращает загрузку исполняемых файлов или драйверов, если они не подписаны одним из заранее установленных ключей. Другой набор ключей (Pkek) позволяет поддерживать связь между ОС и прошивкой. ОС вместе с набором ключей соответствия Pkek, которые организует связь с установлеными в прошивку ключами, может добавлять дополнительные ключи в так называемый “белый список” в прошивке. Естественно, помимо этого она может добавить ключи в “черный список”. Бинарники, которые отметились в черном списке ключей, естественно не будут срабатывать при загрузке.

Windows 8 совместно с UEFI 2.3.1 закрывают дыру в безопасности текущей схемы BIOS, которая позволяет любому загрузчику, в том числе содержащему руткит, загружаться раньше операционной системы. В отличие от BIOS, UEFI будет позволять загружаться только подтверждённым загрузчикам ОС в случае, если разрешена безопасная загрузка. Это означает, что вредоносное ПО в загрузчиках находиться больше не сможет. Microsoft утверждала, что возможность отключить безопасную загрузку UEFI у пользователей все же будет, если поставщики материнских плат реализуют эту функцию. Это позволит устанавливать на персональные компьютеры GNU/Linux и любые другие операционные системы, включая старые Windows. Но здесь уже начинает страдать защита и к тому же Windows 8 работать уже не будет. Позже эта возможность была запрещена для мобильных устройств.

См. также

Примечания

  1. Dong Wei. Beyond BIOS (foreword). Intel Press, 2006. ISBN 978-0-9743649-0-2
  2. Информация о Unified EFI Forum
  3. Информация о драйвере FAT для EFI (требует регистрации)
  4. Информация об оболочке EFI
  5. Intel Platform Innovation Framework для EFI на сайте Intel
  6. Universal Binary Programming Guidelines, Second Edition: Extensible Firmware Interface (EFI) Apple Computer
  7. Framework Overview Intel
  8. Information about EFI on Intel boards
  9. Overview of the Intel Platform Innovation Framework
  10. HP Printers
  11. http://fr.msi.com/img/NEWS/P45-Leaflet_back.pdf
  12. EFI version of Grub (Debian Linux) - Retrieved on 1 May 2008.
  13. x86 EFI boot stub
  14. Образы ядра Linux и первоначального системного окружения должны или располагаться на системном разделе EFI, или данная реализация EFI должна быть способна прочесть их с используемой данной инсталляцией Linux файловой системы
  15. Microsoft Pre-OS Video
  16. Extensible Firmware Interface Microsoft Windows Server TechCenter
  17. Microsoft bombshell: no EFI support for Vista
  18. Mary Jo Foley. Vista SP1 beta 1 to launch in mid-July . ZDNet (8 июля 2007). Архивировано из первоисточника 2 марта 2012. Проверено 20 июля 2007.
  19. Intel shows PC booting Windows with UEFI firmware

Персонального компьютера, несмотря на постоянные обновления, «двойные» реализации и прочие новшества, по сути, так и оставался наиболее устаревшим компонентом современных компьютеров. Начиная с самых первых ПК в BIOS ничего кардинально не менялось. Его долгое время всерьез не трогали производители, опасаясь за то, что нарушится преемственность базовых функций, необходимых для правильного функционирования старых операционных систем.

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

Рассказ о том, что такое UEFI, лучше начать с истории возникновения данной технологии.

История UEFI начинается в середине 90-х годов. Уже тогда для мощных серверных платформ было недостаточно возможностей стандартного BIOS. Поэтому для первых систем Intel-HP Itanium была разработана новая технология, которая получила название Intel Boot Initiative. Немного позже название было сменено на EFI или Extensible Firmware Interface.

Первой официальной спецификацией стала EFI 1.02, которая появилась на свет 12 декабря 2000 года. В начале 2002 года появилась спецификация 1.10. А уже в 2005 году был сформирован альянс компаний под названием Unified EFI Forum или UEFI Forum, а сама технология сменила название с EFI на UEFI. Сейчас разработкой UEFI занимается UEFI Forum, в состав, которого входят такие компании как AMD, Apple, Dell, HP, American Megatrends, IBM, Intel, Lenovo, Insyde Software, Microsoft и Phoenix Technologies. Последней спецификацией UEFI является спецификация под номером 2.3.1, которая была опубликована альянсом UEFI Forum в апреле 2011 года.

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

Очевидно, что UEFI это новый шаг в развитии персональных компьютеров. Но, какие реальные преимущества представляет использование данной технологии вместо старого доброго BIOS?

  • UEFI позволяет выполнять загрузку операционной системы с жестких дисков большого объема. Используя BIOS нельзя загрузить операционную систему с объемом больше 2 Тб.
  • UEFI не зависит от архитектуры процессора и может использоваться как с x86 процессорами, так и с процессорами на базе архитектуры ARM. В то время как BIOS поддерживает только .
  • UEFI позволяет использовать графическую оболочку с поддержкой мышки, которая намного удобней аскетичного интерфейса BIOS. При этом, оболочка UEFI позволяет выполнять многие задачи без использования операционной системы. Например, подключаться к локальной сети выходить в интернет.
  • UEFI позволяет загружать операционную систему значительно быстрее. Благодаря параллельному тестированию компонентов компьютера, время, которое проходит от момента включения компьютера до момента начала работы операционной системы может быть уменьшено до 2-х секунд.
  • UEFI оснащена менеджером загрузки и позволяет пользователю выбирать какую операционную систему он хочет загрузить. При этом исчезает необходимость использования специального механизма для выбора операционной системы внутри самого загрузчика операционной системы.
  • UEFI оснащена новыми способами защиты от вредоносных программ.

Как только мы включаем компьютер, в нем немедленно начинает работать миниатюрная операционная система, которую мы знаем как BIOS. Она занимается тестированием устройств, памяти, загрузкой операционных систем, распределением ресурсов аппаратуры. Многие функции этого набора программ (их объем обычно около 256-512 Кб) позволяют поддерживать старые операционные системы вроде MS-DOS, предоставляя им множество возможностей. Со времен PC/AT-8086 BIOS менялся очень мало, а ко времени запуска первых Пентиумов его развитие почти остановилось. Собственно, менять в нем стало нечего, кроме двойного BIOS, поддержки сетевых средств и возможности перепрошивки. А вот минусов стало много: стартовый вход в реальный режим процессора, 16-разрядная адресация и 1 Мб доступной памяти, невозможность иметь «ремонтную» консоль. И, конечно, вечная проблема поддержки жестких дисков. Даже сейчас гарантированно поддерживаются диски до 2,2 Тб, не более.

Компания Intel еще в 2005 года решила поменять BIOS на EFI/UEFI (Unified Extensible Firmware Interface). Система EFI - более продвинутая базовая операционная система. На некоторых платформах Unix и Windows UEFI уже давно работает, но массового перехода пока не свершилось, несмотря на благие намерения. А они таковы:

  • Наличие пресловутой консоли для ремонта системных параметров и установки ОС;
  • Раздел EFI даёт возможность совершать некоторые действия, не загружая ОС (просмотр фильмов, запуск музыки);
  • Вход в Интернет и, следовательно, наличие установленных драйверов сети, стека TCP/IP и т.д.);
  • Присутствие графического режима и пользовательских скриптов;
  • Поддержка гигантских по объему дисков;
  • Хранение UEFI на разделах нового формата (GPT);
  • Полная поддержка всей аппаратуры с момента старта.

UEFI может использовать универсальную исполняющую машину вроде JVM для использования аппаратно-независимого кода, а это открывает огромные горизонты для создания «загрузочного» ПО.

Существует и критика этой технологии. В частности, внедрение ее может привести к отсечению от рынка операционных систем новых игроков: для этого всегда найдется в коде какая-нибудь технологическая лазейка. Как, например, невозможность загружать ОС Windows 98 из современных BIOS. Но, что хуже, придется забыть о миллионах программ MS-DOS и других систем, которые опирались в своей работе на функции BIOS. Возможно, они еще будут эмулироваться, но в этом есть сомнения. А среди них наверняка есть и важные программы, которые некому будет переписывать. Впрочем, все это решаемые вопросы – хотя бы за счет виртуальных операционных систем. Но вот то, что появятся новые виды вирусов – это точно, и мы сможем увидеть это довольно скоро.

С выходом Windows 8 производители стали активнее внедрять преемника BIOS - интерфейс UEFI, который за время своего существования уже успел доставить немало неприятностей. Мы расскажем как, несмотря на это, воспользоваться его преимуществами.

Массовый переход на UEFI (Unified Extensible Firmware Interface) уже начался. Microsoft требует использовать этот интерфейс на всех компьютерах, которые будут поставляться с Windows 8. Точнее говоря, речь идет об UEFI с функцией Secure Boot. При этом без проблем работать на подобных ПК может только «восьмерка»: ни Windows XP, ни «семерку» не удастся установить на UEFI-машину без дополнительных манипуляций.

С флеш-накопителя Linux Live или Windows загрузиться тоже не получится. Что именно может произойти, если попытаться запуститься с установочной флешки на ноутбуке Sony VAIO, показано на картинке вверху. И на этом проблемы с UEFI не заканчиваются. Каждый производитель аппаратных компонентов по своему усмотрению конфигурирует UEFI, тем самым создавая для пользователя ненужные трудности. Лэптоп IdeaPad от Lenovo и вовсе не смог распознать тот же самый флеш-накопитель в качестве загрузочного носителя. При этом Lenovo не в чем упрекнуть: дело в том, что загрузочная флешка отформатирована в файловой системе NTFS, а UEFI не поддерживает загрузку с таких носителей. Если подключить этот же накопитель к ноутбуку EliteBook от HP, то он загрузится без проблем и позволит выполнить установку Windows. Проблема же заключается в том, что все данные, имевшиеся на диске EliteBook, после установки оказались бы удаленными.

Каждый конфигурирует по-своему

Вы в замешательстве? Ничего удивительного: UEFI с функцией Secure Boot устанавливает новые правила инсталляции и загрузки операционных систем, а производители аппаратных средств по-своему трактуют эти правила, что создает для пользователя дополнительные сложности. Поэтому в рамках данной статьи мы поставили перед собой цель устранить неразбериху вокруг UEFI. На примере ноутбуков от основных производителей мы расскажем, как работает UEFI, какая роль отводится функции Secure Boot, как обойти расставляемые новым интерфейсом «ловушки» и что нужно для того, чтобы использовать загрузочные флеш-накопители, не опасаясь никаких разрушительных последствий.

Как работает UEFI

UEFI загружается строго в соответствии с установленными правилами. Если ОС не поддерживает UEFI, активируется режим эмуляции BIOS. Процесс загрузки ПК на основе BIOS достаточно прост: после нажатия кнопки включения запускается BIOS, которая проверяет состояние оборудования и загружает микропрограммное обеспечение — простые драйверы для отдельных аппаратных компонентов. После этого BIOS выполняет поиск загрузчика ОС и активирует его. Тот в свою очередь загружает операционную систему или выводит на экран список доступных ОС.

Компьютеры на базе UEFI загружаются аналогичным образом лишь до момента поиска параметров загрузки. После этого все происходит иначе. UEFI имеет собственный загрузчик ОС с интегрированными менеджерами запуска установленных систем. Для него на диске создается небольшой раздел (100–250 Мбайт), отформатированный в файловой системе FAT32, который называется Extensible Firmware Interface System Partition (системный раздел расширяемого микропрограммного интерфейса, ESP). На нем находятся драйверы аппаратных компонентов, к которым может получать доступ запущенная операционная система. Общее правило таково: за исключением DVD, UEFI может загружаться только с носителя, отформатированного в файловой системе FAT32.

UEFI - сложный механизм

У ESP есть свои преимущества: благодаря драйверам UEFI и загрузчику ОС, Windows запускается быстрее и более адекватно реагирует на критические ошибки драйверов. Но интерфейс UEFI накладывает и ограничения: он позволяет устанавливать ОС только на жесткие диски, которые размечены по стандарту GPT. Последний не поддерживается ни одной версией BIOS, так как, в отличие от традиционной схемы разметки (MBR), использует адреса секторов длиной 64 бита. Помимо Windows 8 интерфейс UEFI поддерживают только 64-битные версии Windows Vista и 7, а также Linux с ядром 3.2 и выше. Более того, для ПК, сертифицированных для работы с «восьмеркой», компания Microsoft предписывает использование опции Secure Boot. В этом режиме UEFI запускает лишь подтвержденные загрузчики ОС, которые содержат драйверы с цифровой подписью Microsoft.

Наряду с Windows 8 только загрузчик Shim (Linux) обладает драйверами с необходимыми для Secure Boot подписями. В других ОС они отсутствуют. Поэтому, если вы захотите установить на подобном компьютере помимо «восьмерки» еще и Windows 7 или Vista, необходимо открыть меню UEFI и отключить Secure Boot. Если в качестве второй ОС вы выберете несовместимую с UEFI, вам потребуется задействовать модуль поддержки совместимости (Compatibility Support Module, CSM), который можно включить в UEFI. К сожалению, производители используют различные версии UEFI, и иногда сложно понять, как отключить Secure Boot и перейти в режим эмуляции BIOS. Эти вопросы мы и рассмотрим далее.

Процесс загрузки ПК на основе UEFI

В зависимости от конфигурации, UEFI либо самостоятельно загружает компьютер, либо переходит в режим эмуляции стандартной BIOS. Только после этого запускается менеджер загрузки Windows.

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

Включение режима эмуляции BIOS Полная неразбериха: способ перехода в режим эмуляции BIOS зависит от версии UEFI. На Sony VAIO (1) необходимо активировать опцию «Legasy», на ASUS Zenbook (2) — «Launch CSM».

Настройка UEFI

Каждый производитель использует в ноутбуках и ультрабуках свою версию UEFI. При этом он открывает доступ не ко всем нужным функциям. Зачастую при загрузке ПК или лэптопа на дисплей не выводится название кнопки, с помощью которой можно вызвать меню настроек UEFI. Мы предлагаем поступить следующим образом: в интерфейсе Metro перейдите в меню «Параметры | Изменение параметров компьютера» на боковой панели и активируйте пункт «Общие | Особые варианты загрузки». После перезапуска появится менеджер загрузки ОС, который позволит открыть меню UEFI. Исключением является UEFI от HP, где данная опция отсутствует. Здесь поможет следующее: во время загрузки удерживайте нажатой клавишу «Esc». В любом случае необходимо вначале осведомиться, какая кнопка позволяет войти в меню UEFI. Если вы измените режим загрузки на CSM или Legasy BIOS, чтобы загрузиться с аварийной флешки, после операции восстановления необходимо вновь переключиться с CSM на UEFI, иначе Windows 8 не запустится. Но и здесь есть исключения: Aptio Setup Utility на компьютерах ASUS активирует UEFI автоматически при отсутствии совместимого с BIOS загрузочного носителя, поэтому достаточно просто отсоединить флешку.

Отключение Secure Boot потребуется в том случае, если помимо «восьмерки» вы захотите установить 64-битную версию Windows Vista или 7. Иногда поддерживается так называемый гибридный режим, как в устройствах от HP, при котором UEFI может загружаться со всех загрузочных носителей и при необходимости переключаться в режим BIOS. В широко распространенной версии UEFI InsydeH2O это зависит от того, предусмотрел ли производитель ноутбука возможность отключения Secure Boot или нет. В Acer Aspire S7 данная функция недоступна, и для ее деактивации нужно переключиться с UEFI в режим BIOS и обратно.