Драйверы
Коротко: Драйвер — это программа, сообщающая операционной системе, как управлять конкретным устройством (видеокарта, принтер, сетевая карта). Без драйвера система не может использовать устройство или использует лишь ограниченно.
Подробнее: Каждое устройство говорит на своём «языке» (команды, регистры). Операционная система предлагает приложениям единый интерфейс (например, «напечатать эту страницу»). Драйвер переводит между ними. Обычно он работает с высокими привилегиями в режиме ядра, поэтому ошибки драйверов особенно опасны.
Подробности
Виды:
- Драйверы устройств в операционной системе: файлы Windows
.sys, модули ядра Linux (.ko), kext/DriverKit в macOS. - Драйверы прошивки (драйверы UEFI): работают в прошивке до операционной системы и позволяют, например, загружаться с SSD NVMe или использовать сетевую загрузку (PXE).
- Классовые драйверы: общие драйверы для типов устройств (USB-накопители, HID вроде мыши и клавиатуры), работающие без ПО производителя.
- Драйверы производителей: больше функций и производительности (NVIDIA, AMD, Intel).
- Виртуальные драйверы: для программных устройств (VPN-адаптеры, виртуальные диски).
Установка и поддержание драйверов:
- Центр обновления Windows автоматически доставляет многие драйверы. Для видеокарт стоит использовать драйвер производителя.
- Диспетчер устройств (
devmgmt.msc): устройство с жёлтым предупреждающим знаком означает отсутствующий или неисправный драйвер. - Откатите старый драйвер («Предыдущий драйвер»), если обновление вызывает проблемы.
- Устанавливайте драйверы только из надёжного источника.
Безопасность и стабильность:
- Драйверы подписаны. Windows в 64-битном режиме загружает только подписанные драйверы ядра.
- Уязвимости в подписанных, но неисправных драйверах используются для атак («bring your own vulnerable driver»). Microsoft ведёт список блокировки.
- Ошибки драйверов приводят к синим экранам (например,
DRIVER_IRQL_NOT_LESS_OR_EQUAL). - Linux поставляет многие драйверы прямо в ядре, поэтому много оборудования работает сразу.
См. также: Прошивка (firmware), Архитектура системы, Интерфейсы