EMZETT.
Войти

Прошивка (firmware)

Коротко: Прошивка (firmware) — это программное обеспечение, постоянно встроенное в устройство и управляющее его оборудованием на базовом уровне. Оно хранится в энергонезависимой памяти (флеш) и сохраняется без питания.

Подробнее: Между голым оборудованием и операционной системой любому устройству нужна программа, делающая первые шаги. В ПК это прошивка BIOS/UEFI на материнской плате. Но жёсткие диски, маршрутизаторы, принтеры, клавиатуры, сетевые карты и смартфоны тоже имеют собственную прошивку.

Подробности

  • Задачи: запускать и проверять оборудование, адресовать устройства, загружать операционную систему (процесс загрузки), предлагать простые настройки.
  • Хранение: раньше — ROM с масочным программированием, затем EPROM/EEPROM, сегодня в основном флеш-чипы, которые можно перезаписать обновлением.
  • Прошивка ПК: BIOS (старая) и UEFI (современная). Здесь настраиваются порядок загрузки, Secure Boot и параметры оборудования.
  • Обновление прошивки (flashing): устраняет ошибки и уязвимости, добавляет функции или поддержку оборудования. Его нельзя прерывать отключением питания, иначе устройство может стать непригодным («окирпичиться»). Поэтому у хороших материнских плат есть второй резервный образ (dual BIOS).
  • Прошивка, драйвер и программа: прошивка работает в самом устройстве. Драйвер работает в операционной системе и посредничает между системой и устройством. Приложения работают поверх.
  • Безопасность: прошивка работает очень глубоко и загружается до операционной системы. Вредоносный код там трудно обнаружить (руткиты). Помогают подписи, Secure Boot и регулярные обновления.
  • Открытые альтернативы: coreboot, OpenWrt (маршрутизаторы), Libreboot.

См. также: BIOS, UEFI, Secure Boot, Драйверы