Чем отличается BIOS от UEFI — какой из них лучше?
- TryHarder
- 16-июл-2023, 10:17
UEFI (изначально просто EFI) был представлен как усовершенствование по сравнению с устаревшим BIOS. Он принес с собой несколько улучшений и является основным интерфейсом встроенного программного обеспечения в текущем сценарии. Однако существуют ситуации, когда по-прежнему используется устаревшая загрузка.
В этой статье я подробно рассмотрю обе прошивки, чтобы помочь вам разобраться в них и решить, какую из них вам следует использовать.
Устаревший BIOS (базовая система ввода-вывода) - это традиционная прошивка, которая взаимодействует с аппаратными компонентами и предоставляет службы времени выполнения для загрузки операционной системы. Впервые он был использован в 1975 году, и некоторые устройства используют его даже сегодня.
Устаревший BIOS использует список загрузочных устройств, хранящихся в CMOS, для поиска целевой ОС. CMOS хранит все настройки BIOS и список загрузочных устройств, упорядоченный в зависимости от приоритета загрузки.
Процесс загрузки включает в себя следующие шаги:
Устаревший BIOS позволяет процессору работать только в 16-разрядном реальном режиме и может обрабатывать адресацию памяти объемом 1 МБ.
У него есть ограничение на количество функций или процессов, которые он может обрабатывать. В результате в нем отсутствует поддержка защиты памяти, виртуальной памяти, подкачки, многозадачности и так далее.
UEFI был представлен как EFI в 1990-х годах и пришел на смену устаревшему BIOS в 2000-х годах. На самом деле это спецификация open boot, принадлежащая форуму UEFI. Он определяет текущую прошивку, которая взаимодействует с аппаратными устройствами и загружает операционную систему.
Прошивка UEFI хранит список допустимых загрузочных разделов (служебный раздел EFI), а не загружаемые устройства. Этот раздел расположен на диске с таблицей разделов GUID (GPT) и содержит программные файлы EFI (с .efi
расширением), которые загружают ОС.
Во время выполнения последующей операции прошивка UEFI проверит все загрузочные носители на вашем компьютере и найдет допустимый GPT. UEFI не нуждается в стандартном загрузчике, поскольку прошивка может напрямую сканировать GPT-диск, чтобы найти необходимый системный раздел EFI, содержащий .efi
файлы.
UEFI напрямую пытается загрузиться только с одного устройства, чтобы сократить время загрузки, затрачиваемое на проверку наличия других загрузочных устройств. Если вы включили поддержку модуля поддержки совместимости (CSM), а прошивка не может найти такой файл или раздел, она использует устаревший метод для поиска загрузочных файлов.
UEFI позволяет процессору работать в 32- или 64-разрядном режиме и предлагает адресацию памяти объемом до нескольких гигабайт для более быстрого доступа к памяти. Он поддерживает подкачку и виртуальную память, многозадачность и так далее.
Теперь, когда мы знаем, что представляют собой UEFI и Legacy BIOS, давайте взглянем на индивидуальные различия между этими интерфейсами.
Устаревший соответствует схеме разделов с главной загрузочной записью (MBR), а UEFI соответствует схеме разделов с таблицей разделов GUID (GPT).
MBR поддерживает максимальную таблицу разделов в 2 терабайта (ТБ). Это означает, что он может определить только 2 ТБ или 2048 ГБ места на диске. Если вы используете диск любого размера, ваша система отобразит оставшееся пространство как нераспределенное. Вы не можете отформатировать это пространство для создания другого раздела.
GPT допускает максимальный объем таблицы разделов 9,7 Зеттабайт или 9,7 миллиарда ТБ. Таким образом, вы можете использовать все доступные в настоящее время диски в системе на основе GPT.
Кроме того, MBR предлагает максимум 4 физических раздела. Последний раздел можно разделить на 23 логических раздела. Они вместе с остальными 3 физическими разделами составляют в общей сложности максимум 26 разделов. Это число значительно ниже, чем у таблицы разделов GPT, которая поддерживает 128 разделов.
Вы можете наблюдать одно из основных различий между UEFI и устаревшим BIOS в интерфейсе встроенного программного обеспечения. Большинство материнских плат предоставляют удобный интерфейс настроек встроенного программного обеспечения UEFI, в котором вы можете перемещаться с помощью мыши.
Когда была впервые представлена устаревшая BIOS, перемещаться по ней можно было только с помощью клавиатуры. Память устаревшей BIOS обычно недостаточно велика для хранения расширенных данных графического интерфейса пользователя, драйверов мыши и всего остального, что уже присутствует внутри. Таким образом, только несколько материнских плат имеют устаревший BIOS, который обеспечивает функциональность мыши или улучшенный интерфейс.
Хотя может показаться, что UEFI требует больше шагов в процессе загрузки, все шаги высоко оптимизированы и, следовательно, не занимают много времени.
Прошивка UEFI также может напрямую вызывать загрузчик EFI, поскольку она получает всю необходимую информацию из таблицы GPT непосредственно во время процесса POST.
Устаревшему BIOS необходимо выяснить, где находится MBR, и проверить его табличные данные, чтобы определить местоположение загрузчика после завершения публикации.
Таким образом, загрузка UEFI происходит быстрее, если сравнивать ее с процессом загрузки legacy.
UEFI boot имеет множество функций безопасности для защиты целостности вашей системы. Он запускает необходимые процессы загрузки только после проверки всех блоков кода на наличие действительной цифровой подписи.
Он также интегрирует такие функции, как безопасная загрузка и TPM, которые предотвращают загрузку с неавторизованных носителей операционной системы. Фактически, он даже предоставляет возможности защиты от вредоносных программ до операционной системы для обнаружения и блокирования угроз в драйверах устройств.
Эти функции не поддерживаются в устаревшем BIOS, что делает его более уязвимым для внешних угроз.
Интерфейс UEFI также отслеживает текущий режим загрузки для восстановления. В случае сбоя или чего-то подобного он может автоматически просканировать и восстановить прошивку. Он также предлагает более простой способ сброса или восстановления вашей операционной системы в случае системного сбоя.
Если эти сбои происходят при использовании устаревшего BIOS, вам необходимо загрузиться с внешнего установочного носителя, чтобы получить доступ к некоторым функциям восстановления.
Наряду с доступностью, UEFI предлагает больше с точки зрения масштабируемости. Благодаря всей документации и тому факту, что эта платформа унифицирована для различных устройств, Microsoft или другим разработчикам ОС проще добавлять дополнительные функции. Эта платформа также сделана более совместимой с любыми будущими разработками.
Код устаревшего BIOS отличается в зависимости от устройств, и более вероятно, что разработчикам потребуется изменить весь код или алгоритмы для реализации некоторых новых функций.
Старое компьютерное оборудование было разработано на основе устаревшего BIOS, в то время как более новое оборудование больше подходит для UEFI.
Прошивка UEFI большинства материнских плат также имеет встроенную поддержку CSM или Legacy. Если вы включите такую опцию в BIOS, вы сможете использовать UEFI и на очень старом оборудовании, и в операционных системах.
Поскольку Legacy и MBR являются более старыми технологиями, новые операционные системы, такие как Windows 11, с ними работать не будут. Для запуска этой ОС вам необходимо загрузить свой компьютер в режиме UEFI и установить операционную систему Windows 11 на GPT-накопитель.
Все кодирование устаревшего BIOS выполнялось с использованием ассемблерного программирования, а блоки кода были отдельными для разных материнских плат. У них нет какой-либо общедоступной документации, поэтому другим разработчикам потребовалось много работы для создания процессов до ОС, совместимых с устаревшими системами.
Однако UEFI - это общедоступный и массивный фреймворк, имеющий реализацию с открытым исходным кодом EDK2. Он также использует свой собственный язык со смесью C и assembly в качестве основы. Таким образом, эта платформа более доступна для программистов.
Поскольку UEFI был разработан для преодоления ограничений устаревшего BIOS, нельзя отрицать, что это предпочтительная прошивка. Она обладает большим количеством функций и обеспечивает лучшую производительность и безопасность.
Если у вас более старое компьютерное оборудование, которое не поддерживает UEFI, вы должны использовать устаревший BIOS. Но кроме этого, я не могу припомнить ни одной ситуации, когда вам не следовало бы выбирать UEFI.