Что такое драйвер и как он работает? Драйвер: это что такое и зачем он нужен

Идеология построения драйверов

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

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

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

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

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

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

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

См. также

Примечания

Ссылки

  • Пишем драйверы OpenSolaris (рус.) - статья о драйверах в OpenSolaris

Wikimedia Foundation . 2010 .

Синонимы :
  • Олимпийцы (значения)
  • Кампенгаузен, Балтасар Балтасарович

Смотреть что такое "Драйвер" в других словарях:

    драйвер - программа, парус, шофер, программа драйвер, водитель Словарь русских синонимов. драйвер сущ., кол во синонимов: 8 аудиодрайвер (1) … Словарь синонимов

    ДРАЙВЕР - Вспомогательная компьютерная программа, которая обеспечивает действие какого то определенного комплектующего устройства (обычно даже какой то конкретной его модели и, естественно, фирмы производителя), подключенного к компьютеру, на котором она… … Словарь бизнес-терминов

    драйвер - Программа, предназначенная для управления работой периферийных устройств, обычно в мини и микро ЭВМ. [ГОСТ 19781 90] Тематики обеспеч. систем обраб. информ. программное EN driver … Справочник технического переводчика

    Драйвер - (англ. driver водитель, ведущий) компьютерная программа, помогающая операционной системе работать с к. л. устройством (напр., управлять устройствами ввода вывода, клавиатурой, принтером и т. д.) … Издательский словарь-справочник

    ДРАЙВЕР - в информатике вспомогательная (см.) персонального компьютера, обеспечивающая взаимодействие управляющих программ с внешними устройствами. Д. поставляются вместе с (см.) (для типичных, распространённых устройств клавиатура, мышь, дисководы) или… … Большая политехническая энциклопедия

    драйвер - дра/йвер, род. дра/йвера, мн. драйвери, род. мн. драйверів (англ. driver водій, ведучий) це комп ютерна програма, за допомогою якої операційна система отримує доступ до керування апаратним забезпеченням. Драйвер пристрою повинен розуміти всі… … Фізико-технічний словник-мінімум

Как правило, в комплекте с устройством есть диск, на котором записаны все необходимые для работы драйвера и программы. Иногда таких дисков несколько. В этом случае ищите диск с надписями: «Драйвер» или «Driver».

Если такой диск у вас есть, то не будет для вас проблемой. Нужно просто найти на диске драйвер и установить его. Процесс установки драйверов ничем не отличается от установки обычных программ.

В случае если диск потерян, придётся искать драйверы в интернете. Лучше всего сразу зайти на сайт производителя. На сайте найдите раздел с драйверами или воспользуйтесь поиском по сайту для того чтобы найти драйверы для вашей модели устройства. Будьте внимательны при поиске драйверов. Вам нужен драйвер именно для вашего устройства, иначе могут возникнуть проблемы при работе.

Очень часто пользователи не знают производителя и модель устройства. Конечно, для внешних устройств всегда можно посмотреть информацию на задней крышке. Но если речь идет об устройстве, которое установлено внутрь корпуса, то узнать точное название модели будет не так просто.

Неопытные пользователи ПК часто сталкиваются с вопросами установки драйверов: что это такое — драйвер? Зачем вообще нужен драйвер? Откуда взять и как устанавливать драйверы? И вообще, с чем, собственно, едят этот самый драйвер?

Что такое драйвер — простое объяснение

Компьютер — это целый набор устройств, а не один прибор. Каждое устройство, подключаемое к компьютеру — экран, клавиатура, принтер, видеокарта и любое другое нуждаются для своей работы в том, чтобы операционная система «понимала», что можно делать с таким устройством. Только что подключенный прибор пока неизвестен системе. Windows попросту не «понимает», что это за новый аппарат включили в её хозяйство.

Драйвер — это программа, которая позволяет операционной системе «общаться» с устройством. Своеобразный «переводчик», который способен разговаривать с Windows и объяснить системе, как использовать новое устройство. У каждого прибора свой драйвер. Для видеокарты нужен один «переводчик», для мышки — совсем другой.

Как устанавливать драйвер?

Для большинства устройств драйверы уже имеются в составе операционной системы. К примеру, при обнаружении новой флешки, Windows подаёт на неё электрический сигнал. Будто спрашивая: «А кто ты такая будешь?». В ответ флешка говорит: «Я — накопитель, который подключен через интерфейс USB, а чтобы общаться со мной, загрузи-ка ты себе драйвер № 15619, который находится в твоём архиве». За доли секунды Windows находит нужный файл, читает его, и узнаёт всю трудовую биографию флешки, используя все её возможности. Примерно так происходит установка драйверов.

Чем свежее версия Windows, тем больше шансов, что для вновь подключаемого устройства не нужно будет устанавливать отдельные драйвера — они найдутся в составе операционки. Например, Windows XP может сходу начать работу с подавляющим большинством флешек, а для древнейшей Windows 98 это почти неразрешимая задача. Windows 7 содержит в своём составе огромную коллекцию программ для работы с принтерами, сканерами, видеокартами и другой аппаратурой. А вот та же XP не столь хорошо распознаёт офисные приборы вроде оргтехники, «три в одном», сканеров, и прочего. Нет в её недрах такой крупной коллекции драйверов.

Что делать, если драйвер не устанавливается автоматически

Однако многие устройства неизвестны даже самым свежим версиям ОС. Ежедневно производители выпускают новые принтеры, более современные видеокарты. Даже привычные мышки «обрастают» огромным количеством необычных кнопок.

Если драйвер не устанавливается автоматически, то в таких случаях на экране появляется нелюбимая многими надпись: «Устройство установлено неправильно». Эта проблема легко решается — нужно установить необходимый драйвер. Вручную установить, ведь операционная система уже сообщила — в её коллекции нет подходящей программы-«переводчика» для работы с данным устройством.

Установка драйвера с диска

Для ручной установки драйвера, прежде всего, посмотрите в коробку, в которой вам продали устройство. Как правило, вместе с устройствами поставляются компакт-диски с записанными на них программами. Вставив диск в привод, ответьте на несколько простых вопросов системы, которые появятся в мастере нового оборудования, и драйвер установлен! А вопросы действительно несложные — на уровне:

  • Вы хотите установить драйвер сейчас?
  • Я хочу установить драйвер в папку C:/Windows/Drivers . Можно установить драйвер туда, или вы предложите другое место?
  • Наверное, после установки придётся перезагрузить компьютер. Вы разрешаете сделать это сейчас, или займёмся перезагрузкой позже?

Диск с драйверами отсутствует. Где взять драйвер?

Если устройство попало к вам без диска или он затерялся, то самую свежую версию драйвера всегда можно найти на сайте производителя и скачать её оттуда. Посмотрите на марку нового оборудования и поищите официальный сайт этой модели. Просто вводим в поисковик (Google или Яндекс) название фирмы и модели устройства.

Для примера попробуем установить драйвер для сетевого адаптера. Это внутренне устройство компьютера, разъём которого похож на телефонную «розетку», только чуть толще и крупнее. Туда вставляется сетевой кабель, и компьютер подключается к локальной сети. Кстати, этот способ установки драйвера подходит и для любого другого устройства — веб-камеры, мышки, модема. Просто вместо названия фирмы-производителя и модели следует подставлять то, что написано на вашем устройстве. А ещё лучше сразу сформулировать запрос, который приведёт нас на официальный сайт производителя. В нашем примере это будет «официальный сайт Ethernet controller Realtek».

Итак, компьютер обнаружил новое устройство. И не смог установить для него драйвер. Диска под рукой у нас нет.

Для начала откроем Диспетчер устройств. Это программа, показывающая все-все приборы, из которых состоит компьютер и которые к нему подключены. Вызывается Диспетчер устройств так — Щелчок правой кнопкой по значку «Компьютер», появится меню. В нём нужно выбрать самую нижнюю строку (Свойства), и щёлкнуть по ней левой кнопкой мыши.

В «Свойствах» нужно выбрать «Диспетчер устройств» (он же — Device manager в английской версии ОС).

Так выглядит Диспетчер устройств в Windows 7. Чуть по-другому он смотрится в Windows XP и в других версиях операционной системы, но суть остаётся одна и та же. Обратите внимание, что в самой нижней строке Диспетчера устройств выделен некий прибор под названием Ethernet Controller. Неустановленные устройства всегда выделяются знаком вопроса или восклицания слева от названия прибора. Это означает, что Windows пока толком не может работать именно с этим прибором.

Первый же ответ Яндекса приведёт нас на официальный сайт производителя. Обратите внимание, что на сайты вроде «Ответы@mail.ru обращать внимания не следует. Они не имеют никакого отношения к сайту производителя. Максимум, что там посоветуют — скачать какую-то левую программу с непонятными задачами. Из неизвестного источника, кстати. Всегда следует пользоваться исключительно официальными сайтами производителя оборудования.

На сайте обратите внимание на разделы под названием «Техподдержка», «Драйверы и программное обеспечение», «Загрузка» и подобные. На англоязычных сайтах, как в нашем примере, ищите заголовки Download («Загрузка»), Support («Поддержка»), Drivers («Драйверы»). А в нашем примере сайт тайваньского производителя сетевых адаптеров Realtek уже предлагает выбрать самые популярные запросы пользователей — обратите внимание на нижний правый угол картинки. То, что нам и нужно было — драйвер «Realtek GBE Controller Driver». Щёлкаем по нему…

И выбираем нужную операционную систему. Это Windows 7, в случае нашего примера. Самая первая ссылка.

Открывается окно с предложением сохранить или запустить программу-драйвер. Лучше выбрать «Сохранить», ведь драйвер может пригодиться ещё когда-нибудь. Несколько минут (или секунд — всё зависит от скорости подключения к интернету) — и готово. Драйвер сохранён на вашем ПК.

Осталось лишь запустить его, щёлкнув по файлу драйвера дважды. Левой кнопкой, разумеется.

Появится окно установки драйвера. Несколько простейших вопросов…

И всё готово! Устройство под названием Сетевой адаптер успешно установлено. Оно готово к работе. Драйвер поставлен.

Напоследок о драйверах

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

Наконец, можно попробовать установить драйвер в полуавтоматическом режиме. Используя не внутреннюю «коллекцию» драйверов Windows, а огромную библиотеку с сайта Microsoft. О такой установке драйвера читайте в следующей статье про драйверы.

И ещё. В современном компьютере сделать что-либо не так — очень сложная задача. Компьютер не испортится, не сломается, не перестанет загружаться. Установка драйверов лишь на первый взгляд кажется сложной задаче. Всё очень и очень просто. Нет никакой необходимости вызывать «компьютерщика» для этой цели. Установку драйвера можно сравнить с протиркой компьютера от пыли. Берём влажную тряпку, аккуратно протираем, и электронный друг семьи снова блещет чистотой. Несложно? Так и с драйвером. Поставить его самостоятельно очень просто. Ничего не бойтесь и смело пробуйте: теперь ответ на вопрос «как установить драйвер» полностью решён!

Успехов в экспериментах!

Все кто работает за компьютером рано или поздно сталкиваются с таким понятием, как драйвер. Но далеко не все понимают, что это такое и почему обновление драйверов так необходимо для нормальной работы компьютера. Иногда достаточно только обновить тот или иной драйвер и ваш компьютер заработает как новенький. Что такое драйвер? Для чего он нужен? И где его взять?

Что такое драйвер компьютера и для чего он нужен

Драйвер это своего рода программа-посредник между операционной системой и компьютером. Любой компьютер состоит из основных устройств, таких как: материнская плата, микропроцессор, видеокарта, память, звуковая карта, жесткие диски, дисководы, мышь, клавиатура, монитор. К нему же могут подключатся и дополнительные устройства, такие как: принтер, сканер, графический планшет, джойстик, колонки, микрофон, веб-камера и др.

И чтобы все это работало, разработчики устройств пишут специальные программы, которые говорят операционной системе, как это устройство должно работать, и как им можно управлять. Для каждого устройства существует своя программа-драйвер.

Для разных операционных систем драйвера тоже разные. Например, устройство с драйвером для Windows 10 скорее всего не будет работать в операционной системе Windows 7. Поэтому прежде, чем устанавливать то или иное устройство, необходимо поинтересоваться, а есть ли у него драйвер для этой операционной системы.

Все драйвера можно найти на сайтах разработчиков оборудования. О том, как их обновлять я уже писала.

Всю информацию об устройствах вашего компьютера и установленных драйверах можно посмотреть в Диспетчере устройств . Попасть в этот диспетчер можно разными способами.

Как попасть в Диспетчер устройств

Через иконку «Компьютер » на рабочем столе.

Кликните правой кнопкой мыши по этой иконке и выберите в выпадающем контекстном меню пункт «Свойства ».

Или откройте меню «Пуск », найдите там «Компьютер », и кликните правой кнопкой мыши по этому пункту. Выберите в открывшемся списке пункт «Свойства ».

Можно еще открыть Панель управления и найти там блок «Система ».

Во всех трех вариантах у вас должно открыться окно «Система ». Слева найдите ссылку «Диспетчер устройств » и кликните по ней левой кнопкой мыши. У вас откроется окно «Диспетчер устройств ».

Здесь же можно открыть список всех устройств и просмотреть их свойства.

Для этого откройте список устройства, кликнув по нему два раза, а потом выделите его мышью и кликните по нему правой кнопкой мыши. В появившемся списке выберите необходимый пункт.

Подробнее об этом посмотрите в видеоролике ниже от Андрея Сухова.

А это видео, о том, как обновить или установить драйвер видеокарты: Надеюсь теперь вам понятно, что такое драйвер и для чего он необходим.

Понять, что такое драйвер, попробуем на типовом примере взаимодействия прикладной программы с драйвером.

Код прикладной программы исполняется в пользовательском режиме работы процессора. В этом случае имеется ряд серьезных ограничений на доступ к памяти, аппаратному обеспечению и привилегированным инструкциям процессора. Когда возникает необходимость в преодолении этих ограничений, прикладная программа обращается к ядру ОС, код которого исполняется процессором в режиме ядра. Режим ядра лишен всех упомянутых ограничений. Для расширения функциональных возможностей ядра как раз и служат драйверы ядра (kernel mode drivers). Как они работают?

В отличие от прикладной программы, драйвер не является процессом, и не обладает потоком исполнения. Вместо этого любая функция драйвера выполняется в контексте того потока и процесса, в котором она была вызвана. При этом вызов может проистекать от прикладной программы, от драйвера, либо в результате прерывания. В первом случае контекст исполнения драйвера точно известен – это прикладная программа. В третьем случае контекст исполнения случайный, поскольку прерывание (и, соответственно, исполнение кода драйвера) может произойти при выполнении любой прикладной программы. Во втором случае контекст исполнения может быть как известным, так и случайным, это зависит от контекста исполнения функции вызывающего драйвера.

Под вызовом драйвера здесь подразумевается не обычный вызов функции, а передача так называемого запроса в/в. Более подробно см. лекцию 6.

Различают несколько классов драйверов:

Драйвер, получающий запросы в/в из прикладной программы, называют драйвером высшего уровня. Если такой драйвер не пользуется услугами других драйверов, он называется монолитным.

Драйвер, получающий запросы в/в от другого драйвера, называют промежуточным, если он пользуется услугами других драйверов, или драйвером низшего уровня, если услугами других драйверов он не пользуется.

Типы драйверов и характеристики

[Дополнительная информация] Ifs kit Help\Kernel-Mode Drivers\Design Guide\Part1 General Kernel Mode\Windows 2000 and WDM drivers\Kinds of driversили в DDK.

В NTсуществует 2 типа драйверов: драйверы пользовательского режима и драйверы режима ядра. В дальнейшем, говоря «драйвер», мы будем подразумевать драйверы режима ядра. Такие драйверы являются частью исполнительной системы, а более точно – элементами диспетчера в/в (архитектура NT и ее компоненты будут обсуждаться в лекции 2). Как следует из названия, при работе драйвера режима ядра процессор находится в режиме ядра (RING 0) – см. любой справочник по защищенному режиму работы процессора.

Драйвер NT располагается в файле с расширением.sys и имеет стандартный PE-формат (PE - Portable Executable).

Драйверы реализованы как самостоятельные модули с четко определенным интерфейсом взаимодействия с ОС. Все драйверы имеют определенный системой набор стандартных функций драйвера (standard driver routines) и некоторое число внутренних функций, определенных разработчиком.

Все драйверы режима ядра можно разбить на 3 типа:

    Драйверы высшего уровня (highest level drivers)

    Драйверы промежуточного уровня (intermediate drivers)

    Драйверы низшего уровня (lowest level drivers)

Как мы увидим в дальнейшем, такое разбиение обусловлено многоуровневой моделью драйверов (layered driver model). Для сохранения общности изложения, монолитный драйвер можно включить в эту схему, хотя он не использует многоуровневую архитектуру. В этом случае он будет «гибридом» – драйвером, принадлежащим одновременно к нескольким типам. Например, монолитный драйвер, имеющий интерфейс с приложением и осуществляющий доступ к оборудованию, будет одновременно и драйвером высшего, и драйвером низшего уровня.

Кроме того, в зависимости от назначения драйвера, он может являться каким либо специализированным драйвером, т.е. удовлетворять дополнительному набору требований к своей структуре. Можно привести следующие типы специализированных драйверов:

    Драйверы файловой системы

    Сетевые драйверы

Отдельно необходимо упомянуть архитектуру WDM – Windows Driver Model. Эта архитектура позволяет создавать драйверы для Windows 98и Windows 2000, совместимые на уровне двоичного кода.

Можно привести следующие характеристики драйверов:

    Поддержка динамической загрузки и выгрузки (однако могут быть исключения)

    Необходимость следовать определенным протоколам взаимодействия с системой, нарушение которых чаще всего ведет к BSOD

    Возможность «наслоения» драйверов поверх друг друга. В Win2K эта возможность возведена в абсолют, хотя монолитные драйверы все еще поддерживаются

    Поскольку драйверы являются частью ядра ОС, они могут сделать с системой абсолютно все. Основная проблема – закрытость архитектуры ОС.

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то