Андрей Смирнов
Время чтения: ~6 мин.
Просмотров: 4

Что такое дайвинг

Дра́йвер (англ. driver, мн. ч. дра́йверы[1]) — компьютерное программное обеспечение, с помощью которого другое программное обеспечение (операционная система) получает доступ к аппаратному обеспечению некоторого устройства. Обычно с операционными системами поставляются драйверы для ключевых компонентов аппаратного обеспечения, без которых система не сможет работать. Однако для некоторых устройств (таких, как видеокарта или принтер) могут потребоваться специальные драйверы, обычно предоставляемые производителем устройства.

В общем случае драйвер не обязан взаимодействовать с аппаратными устройствами, он может их только имитировать (например, драйвер принтера, который записывает вывод из программ в файл), предоставлять программные сервисы, не связанные с управлением устройствами (например, /dev/zero в Unix, который только выдаёт нулевые байты), либо не делать ничего (например, /dev/null в Unix и NUL в DOS/Windows).

Подход к построению драйверов

Операционная система управляет некоторым «виртуальным устройством», которое понимает стандартный набор команд. Драйвер переводит эти команды в команды, которые понимает непосредственно устройство. Эта идеология называется «абстрагирование от аппаратного обеспечения». Впервые в отечественной вычислительной технике подобный подход появился в серии ЕС ЭВМ, а такого рода управляющее программное обеспечение называлось канальным программным обеспечением.

Драйвер состоит из нескольких функций, которые обрабатывают определенные события операционной системы. Обычно это 7 основных событий:

  • Загрузка драйвера. Тут драйвер регистрируется в системе, производит первичную инициализацию и т. п.
  • Выгрузка. Драйвер освобождает захваченные ресурсы — память, файлы, устройства и т. п.
  • Открытие драйвера. Начало основной работы. Обычно драйвер открывается программой как файл, функциями fopen() в UNIX-подобных системах или CreateFile() в Win32.
  • Чтение/Запись: программа читает или записывает данные из/в устройство, обслуживаемое драйвером.
  • Закрытие: операция, обратная открытию, освобождает занятые при открытии ресурсы и уничтожает дескриптор файла.
  • Управление вводом-выводом (англ. IO Control, IOCTL). Зачастую драйвер поддерживает интерфейс ввода-вывода, специфичный для данного устройства. С помощью этого интерфейса программа может послать специальную команду, которую поддерживает данное устройство. Например, для SCSI-устройств можно послать команду GET_INQUIRY, чтобы получить описание устройства. В Win32-системах управление осуществляется через API-функцию DeviceIoControl(), в UNIX-подобных — с помощью ioctl().

Драйверы видеокарт

  • Драйверы видеокарт с открытым исходным кодом

Интеграция драйверов

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

Сначала производители платформ поставляли набор отдельных драйверов для операционных систем, собранный на один носитель (обычно компакт-диск), затем появились установочные пакеты, называвшиеся 4-in-1 и One touch, и позволявшие упростить установку драйверов в систему. При этом, как правило, можно выбрать либо полностью автоматическую установку всех драйверов, либо выбрать вручную нужные. Однако единого, устоявшегося термина долго не было.

Современный термин — Board Support Package (или «пакет поддержки платформы»), описывающий такие наборы драйверов устройств. Помимо собственно драйверов, он может, как и прочие установочные пакеты, содержать модули операционной системы и программы.

Виртуальные драйверы

Виртуальные драйверы устройств представляют собой особый вариант драйверов. Они используются для эмуляции аппаратного устройства, особенно в средах виртуализации, например, когда программа DOS запускается на компьютере с Microsoft Windows или когда гостевая операционная система работает на хостинге Xen.

См. также

  • Модуль ядра
  • DDK
  • DriverPack Solution

Примечания

  1. Вариант драйвера́ разговорный и профессиональный. Обсуждение на Gramota.ru. Архивная копия от 8 ноября 2011 на Wayback Machine

Ссылки

  • Пишем драйверы OpenSolaris (рус.) — статья о драйверах в OpenSolaris
  • klife — Introduction to Linux Device Drivers
  • Solaris Device Drivers (недоступная ссылка)
14px-Wikipedia_interwiki_section_gear_icon.svg.pngАспекты операционных систем
  • история
  • список
Ядро
  • Гибридное
  • Микро
  • Модульное
  • Монолитное
  • Нано
  • Экзо
  • Драйвер
  • Пользовательское пространство
  • Режим ядра
  • Прерывание
  • Переключение контекста
  • Многозадачность
    • вытесняющая
    • кооперативная
    • мультипрограммирование
  • Процесс
  • Управление процессом
  • Планировщик задач
  • Многопоточность
  • Защита памяти
  • Кольца защиты
  • Сегментная адресация памяти
  • Страничная память
  • Подкачка страниц
  • Виртуальная память
  • Менеджер виртуальной памяти
  • Ошибка сегментации
  • Общая ошибка защиты
Прочее
  • Загрузчик ОС
  • API
  • VFS
  • Вычислительная сеть
  • GUI
  • Слой аппаратных абстракций (HAL)

modif.png Эта страница в последний раз была отредактирована 7 ноября 2019 в 06:58. Перейти до навігаціїПерейти до пошуку

Драйвер (англ.driver, укр.водій, керівник) — комп’ютерна програма, за допомогою якої операційна система отримує доступ до приладу апаратного забезпечення. У загальному випадку для використання кожного пристрою, підключеного до комп’ютера, необхідний спеціальний драйвер. Зазвичай операційна система вже містить драйвери для ключових компонентів апаратного забезпечення, без яких система не зможе працювати. Однак для більш специфічних пристроїв (таких, як графічна плата або принтер) можуть знадобитися спеціальні драйвери, які надає виробник пристрою.

Драйвер (англ.driver, укр.водій, керівник) — буферний драйвер, апаратна компонента (мікросхема чи дискретна схема), за допомогою якої узгоджуються несумісні сигнальні рівні напруги чи струму між електронними (або іншими не електронними) компонентами. Аналогом драйвера для узгодження протоколів (рівнів) сигналів/живлення різних приладів чи пристроїв є адаптер.

Ідеологія побудови програмних драйверів[ред. | ред. код]

Операційна система керує деяким «віртуальним пристроєм», який розуміє стандартний набір команд. Драйвер переводить ці команди в команди, які розуміє безпосередньо пристрій. Ця ідеологія називається «абстрагування від апаратного забезпечення». Драйвер складається з декількох функцій, які обробляють певні події операційної системи. Зазвичай це 7 основних подій:

  • завантаження драйвера. Драйвер реєструється в системі, робить первинну ініціалізацію й т.п. ;
  • вивантаження. Драйвер звільняє захоплені ресурси — пам’ять, файли, пристрої й т.п. ;
  • відкриття драйвера. Початок основної роботи. Зазвичай драйвер відкривається програмою як файл, функціями CreateFile() в Win32 або fopen() в UNIX-подібних системах;
  • читання;
  • запис;
  • закриття: операція, зворотна відкриттю, звільняє зайняті при відкритті ресурси й знищує дескриптор файлу;
  • керування вводом-виводом-IO Control-IOCTL. Найчастіше драйвер підтримує інтерфейс вводу-виводу, специфічний для даного пристрою. За допомогою цього інтерфейсу програма може послати спеціальну команду, що підтримує даний пристрій. Наприклад, для SCSI пристроїв можна послати команду GET_INQUIRY, щоб одержати опис пристрою. В Win32 системах керування здійснюється через API-функцію DeviceIoControl(). В UNIX-подібних — ioctl()

Інтеграція драйверів[ред. | ред. код]

У міру розвитку систем, що сполучають у собі на одній платі не тільки центральні елементи комп’ютера, але й більшість пристроїв комп’ютерів у цілому, виникло запитання зручності підтримки таких систем, що одержали назву «апаратна комп’ютерна платформа», або просто «платформа».

Спочатку виробники платформ поставляли набір окремих драйверів для операційних систем, зібраний на один носій (зазвичай CD), Потім з’явилися установні пакети, що називалися «4-in-1» та «One touch» і дозволяли спростити установку драйверів у систему. Однак єдиного, усталеного терміна довго не було.

Сучасний термін, що описує такі набори драйверів пристроїв — Board Support Package, або «пакет підтримки платформи». Крім власне драйверів, він може, як і інші установні пакети, містити модулі операційної системи й програми.

Див. також[ред. | ред. код]

Look up driver in Wiktionary, the free dictionary.

Driver may refer to:

Occupation and activityEdit

rson whose occupation is driving</li>

TechnologyEdit

  • Driver circuit, in electronics, a circuit or component used to control another circuit or component
  • Speaker driver, a transducer in a loudspeaker
  • Driver (sail), a type of sail
  • Device driver, software used to interact with hardware devices
  • Database driver, application programming interface software used to interact with databases in accordance with Open Database Connectivity (ODBC) standard

TransportationEdit

  • Driver Group, an Australian bus company
  • SS Empire Driver or SS Driver, Empire ship Driver
  • HMS Driver, two British Royal Navy ships:
    • HMS Driver (1797), a sloop
    • HMS Driver (1840), a Driver-class wooden paddle sloop of the Royal Navy

Edit

  • Driver (series), series of video games
    • Driver (video game), the first game in the series
    • Driver 2, the second game in the series
    • Driver 3, the third game in the series
    • Driver: Parallel Lines, the fourth game in the series
    • Driver 76, a 2007 PSP game
    • Driver: Vegas, a 2005 mobile game
    • Driver: LA Undercover, a 2007 mobile game
    • Driver: San Francisco, the fifth game in the series

See alsoEdit

  • The Driver (disambiguation)
  • Drive (disambiguation)
  • Pilot (disambiguation)
  • Dorylus, the driver ant
  • Screwdriver, mechanical device used to tighten or loosen screws
  • Pile driver
  • Drover
  • Taxi Driver
  • Train driver
  • Co-driver
  • All pages with titles beginning with Driver
  • All pages with titles containing Driver

Используемые источники:

  • https://wiki2.org/ru/драйвер
  • https://uk.wikipedia.org/wiki/%d0%94%d1%80%d0%b0%d0%b9%d0%b2%d0%b5%d1%80
  • https://en.wikipedia.org/wiki/driver

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации