Возможно, вы слышали, что аббревиатуры BIOS и UEFI используются повсюду, особенно при установке операционных систем.
И вы, возможно, знаете, что означают эти сокращения (Unified Extensible Firmware Interface и Basic Input / Output System соответственно). Но вы когда-нибудь задумывались, как они используются в компьютерной системе?
Давайте проясним эти термины и их значения.
Процедура загрузки
Итак, как загружается компьютер? Давайте пойдем шаг за шагом:
Вы нажимаете кнопку питания на своем ноутбуке / настольном компьютере.
Процессор запускается, но для работы ему нужны инструкции. Поскольку на этом этапе основная память пуста, процессор начинает загрузку инструкций с микросхемы встроенного программного обеспечения на материнской плате и начинает выполнение инструкций.
Код прошивки выполняет самопроверку включения питания (POST), инициализирует оставшееся оборудование, обнаруживает подключенную периферию (мышь, клавиатуру, флешку и т. Д.) и проверяет, все ли подключенные устройства исправны. Под конец всей диагностики происходит "писк" со встроенного динамика. По частоте звука, можно определить в каком сегменте системы произошла ошибка. Например: если один писк, потом еще один, но длинный - это проблема с ОЗУ.
Наконец, код прошивки циклически перебирает все устройства хранения и ищет загрузчик на диске. Если загрузчик найден, то прошивка передает ему управление компьютером.
Итак, теперь, когда загрузчик загружен, его задача - загрузить остальную часть операционной системы. GRUB является одним из таких загрузчиков, который способен загружать unix-подобные операционные системы, а также способен загружать ОС Windows. Загрузчик доступен только в первом секторе диска, который составляет 512 байт. Учитывая сложность современных операционных систем, некоторые из этих загрузчиков, как правило, выполняют многоступенчатую загрузку, когда основной загрузчик загружает загрузчик второго этапа в среде, которая не ограничена 512 байтами.
Затем загрузчик загружает ядро в память. Затем Unix-подобные операционные системы запускают init процесс (главный процесс, из которого разветвляются / выполняются другие процессы) и, наконец, инициализируют runlevel.
В Windows wininit.exe загружается вместе с некоторыми другими процессами, такими как services.exe для управления службами, lsass.exe cервис проверки подлинности локальной системы безопасности (аналогично runlevel) и lsm.exe для управления локальными сеансами.
После всего этого и после инициализации некоторых других драйверов загружается графический интерфейс пользователя (GUI), и вам будет представлен экран входа в систему.
Теперь вернемся к нашей первоначальной теме
BIOS:
BIOS означает базовую систему ввода / вывода (basic input output system), прошивку, о которой мы говорили в приведенной выше процедуре загрузки. Она установлена прямо на отдельном кристалле на материнской плате.
Он хранится в EPROM чипе, что позволяет вносить изменения в прошику.
Он предоставляет множество вспомогательных функций, которые позволяют считывать загрузочные сектора подключенного хранилища и выводить данные на экран. Вы можете получить доступ к BIOS на начальных этапах процедуры загрузки, нажав del, F2 или F10 (выбор клавиши зависит от производителя).
UEFI:
UEFI расшифровывается как Unified Extensible Firmware Interface. Он выполняет ту же работу, что и BIOS, но с одним основным отличием: он хранит все данные об инициализации и запуске в файле .efi, вместо того, чтобы сохранять их в прошивке.
Этот файл .efi хранится в специальном разделе, называемом EFI System Partition (ESP) на жестком диске. Этот раздел ESP также содержит загрузчик.
UEFI был разработан для преодоления многих ограничений старого BIOS, в том числе:
UEFI поддерживает диски размером до 9 зеттабайт, тогда как BIOS поддерживает только 2,2 терабайта.
UEFI обеспечивает более быстрое время загрузки.
UEFI поддерживает отдельные драйверы.
UEFI обеспечивает безопасность закрузки ОС. "Безопасная загрузка" - предотвращает загрузку компьютера из неавторизованных / неподписанных приложений. Это помогает предотвратить руткиты, но также препятствует двойной загрузке, поскольку другие ОС рассматриваются как неподписанные приложения.
UEFI работает в 32-битном или 64-битном режиме, тогда как BIOS работает в 16-битном режиме. Таким образом, UEFI может предоставлять графический интерфейс (навигация с помощью мыши), в отличие от BIOS, который позволяет осуществлять навигацию только с помощью клавиатуры.
Наглядно можно предоставить различия в таком виде:
Всем спасибо за прочтение!