Что такое драйвер? Компьютер для чайников: Что такое драйвера.

Разнообразный набор драйверов для широкого круга популярных периферийных устройств – непременное условие популярности ОС у пользователей.

Для разработки драйверов производителями внешних устройств необходимо наличие четкого, удобного, открытого и хорошо документированного интерфейса между драйверами и другими компонентами ОС. Драйвер взаимодействует, с одной стороны, с модулями ядра ОС (модулями подсистемы ввода-вывода, модулями системных вызовов, модулями подсистем управления процессами и памятью), а с другой стороны – с контроллерами внешних устройств. Поэтому существует два вида интерфейсов: интерфейс «драйвер-ядро» (Driver Kernel Interface, DKI) и интерфейс «драйвер-устройство» (Driver Device Interface).

Интерфейс «драйвер-ядро» должен быть стандартизован в любом случае. Подсистема ввода-вывода может поддерживать несколько различных интерфейсов DKI/DDI, предоставляя специфический интерфейс для устройств определенного класса. К наиболее общим классам относятся блочные устройства, например, диски, и символьные устройства, такие как клавиатура и принтеры. Может существовать класс сетевых адаптеров и др. В большинстве современных ОС определен стандартный интерфейс, который должен поддерживать все блочные драйверы, и второй стандартный интерфейс, поддерживаемый всеми символьными адаптерами. Эти интерфейсы включают наборы процедур, которые могут вызываться остальной операционной системой для обращения к драйверу. К этим процедурам относятся, например, процедуры чтения блока или записи символьной строки.

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

У драйверов устройств есть множество функций:

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

2. Проверка входных параметров запросов и обработка ошибок.

3. Инициализация устройства и проверка статуса устройства.

4. Управление энергопотреблением устройства.

5. Регистрация событий в устройстве.

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

7. Проверка правильности завершения операции.

8. Передача запрошенных данных и статуса завершенной операции.

9. Обработка нового запроса при незавершенном предыдущем запросе (для реентерабельных драйверов).

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

Многие драйверы обладают сходной общей структурой. Типичный драйвер начинает работу с проверки входных параметров. Если они не удовлетворяют определенным критериям, драйвер возвращает ошибку. В противном случае драйвер преобразует абстрактные термины в конкретные. Например, дисковый драйвер преобразует линейный номер кластера в номер головки, дорожки и сектора.

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

Управление устройством подразумевает выдачу ему серии команд. Именно в драйвере определяется последовательность команд в зависимости от того, что должно быть сделано. Определившись с командой, драйвер начинает записывать их в регистры контроллера устройства. После записи каждой команды в контроллер, возможно, будет нужно проверить, принял ли контроллер команду и готов ли принять следующую. Такая последовательность действий продолжается до тех пор, пока контроллеру не будут переданы все команды. Некоторые контроллеры способны принимать связные списки команд, находящихся в памяти. Они сами считывают и выполняют их без дальнейшей помощи ОС.

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

Для поддержки процесса разработки драйверов операционной системы выпускается так называемый пакет DDK (Driver Development Kit), представляющий собой набор инструментальных средств-библиотек, компиляторов и отладчиков.

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

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

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

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

Входит в состав ядра ОС, работая в привилегированном режиме;

Непосредственно управляет внешним устройством, взаимодействуя с его контроллером с помощью команд ввода-вывода компьютера;

Обрабатывает прерывания от контроллера устройства;

Предоставляет прикладному программисту удобный логический интерфейс работы с устройством, экранируя от него низкоуровневые детали управления устройством и организации его данных;

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

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

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

Традиционные драйверы, которые стали называть аппаратными, низкоуровневыми или драйверами устройств, освобождаются от высокоуровневых функций и занимаются только низкоуровневыми операциями. Эти низкоуровневые операции составляют фундамент, на котором можно построить тот или иной набор операций в драйверах более высоких уровней.

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

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

Высокоуровневые драйверы оформляются по тем же правилам и придерживаются тех же внутренних интерфейсов, что и аппаратные драйверы. Как правило, высокоуровневые драйверы не вызываются по прерываниям, так как взаимодействуют с устройством через посредничество аппаратных драйверов.

В модулях подсистемы ввода-вывода, кроме драйверов, могут присутствовать и другие модули, например, дисковый кэш. Достаточно специфичные функции кэша делают нецелесообразным оформление его в виде драйвера, взаимодействующего с другими модулями ОС только с помощью услуг менеджера ввода-вывода. Другим примером модуля, который чаще всего не оформляется в виде драйвера, является диспетчер окон графического интерфейса. Иногда этот модуль вообще выносится из ядра ОС и реализуется в виде пользовательского интерфейса. Таким образом, был реализован диспетчер окон в Windows NT 3.5 и 3.51, но этот микроядерный подход заметно замедляет графические операции, поэтому в Windows 4.0 диспетчер окон и высокоуровневые графические драйверы, а также графическая библиотека GDI были перенесены в пространство ядра.

Аппаратные драйверы после запуска операции ввода-вывода должны своевременно реагировать на завершение контроллером заданного действия путем взаимодействия с системой прерывания. Драйверы более высоких уровней вызываются не по прерываниям, а по инициативе аппаратных драйверов или драйверов вышележащего уровня. Не все процедуры аппаратного драйвера нужно вызывать по прерываниям, поэтому драйвер обычно имеет определенную структуру, в которой выделяется секция обработки прерываний (Interrupt Service Routine, ISR), которая и вызывается от соответствующего устройства диспетчером прерываний.

В унификацию драйверов большой вклад внесла ОС UNIX, в которой все драйверы были разделены на два класса: блок-ориентированные (Block-oriented) и байт-ориентированные (Character-oriented) драйверы. Это более общее деление, чем деление на вертикальные подсистемы. Например, драйверы графических устройств и сетевых устройств относятся к классу байт-ориентированных.

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

Устройства, с которыми работают байт-ориентированные драйверы, не адресуют данные и не позволяют производить операции поиска данных, они генерируют или потребляют последовательность байта (терминалы, принтеры, сетевые адаптеры и т.п.).

Однако не все устройства, управляемые подсистемой ввода-вывода, можно разделить на блок и байт-ориентированные. Для таких устройств (например, таймер) нужен специфический драйвер.

В свое время ОС UNIX сделала очень важный шаг по унификации операций и структуризации программного обеспечения ввода-вывода. В ОС UNIX все устройства рассматриваются как виртуальные (специальные) файлы, что дает возможность использовать общий набор базовых операций ввода-вывода для любых устройств независимо от их специфики. Подобная идея реализована позже в MS-DOS, где последовательные устройства – монитор, принтер и клавиатура – считаются файлами со специальными именами: con, prn, con.

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

Драйвер: это что такое в общем понимании?

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

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

Вопросы установки драйверов устройств

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

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

Первым делом необходимо просмотреть весь список установленного оборудования в «Диспетчере устройств», который проще всего вызвать командой devmgmt.msc через консоль «Выполнить». Также можно воспользоваться стандартной «Панелью управления» или разделом администрирования через меню ПКМ на значке компьютера.

Чтобы увидеть все устройства, список необходимо развернуть, используя для этого команду показа скрытых девайсов. Все оборудование, для которого драйверы не установлены, устарели или работают неправильно, будет отмечены желтым треугольником с восклицательным знаком. В описании может быть два варианта: либо устройство опознано (его название отображается), либо нет (неизвестное устройство). Для таких компонентов необходимо инсталлировать соответствующее ПО заново, используя для этого собственную базу данных системы, а если драйвер найден не будет - оригинальный диск, поставляемый при покупке компьютера. Но ведь случается так, что диска может и не быть.

Как и где найти нужный драйвер, если в Windows его нет?

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

Для этого предусмотрены специальные идентификаторы, которые соответствуют конкретному устройству (DEV и VEN). Чтобы их найти, необходимо через ПКМ в меню свойств вызвать раздел свойств и перейти на вкладку сведений, где в информационном списке выбирается ИД оборудования. Самая длинная строка и будет в полной мере соответствовать описанию устройства. Таким образом, тот же сетевой драйвер можно найти в интернете, задав в поиске именно эту комбинацию.

После скачивания драйвер можно установить самостоятельно. Если это EXE-файл - проблем нет, только запускать инсталлятор необходимо от имени администратора.

В случае с INF-файлом драйвер можно установить через меню ПКМ или указать системе установку из указанного места при обновлении драйвера в «Диспетчере устройств».

Использование автоматизированных утилит

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

Здесь на помощь приходят специализированные программные пакеты для автоматического поиска и установки драйверов вроде Driver Booster, DriverPack Solution и им подобные. А вот такие утилиты, определив все устройства, которые присутствуют в компьютерной системе, обращаются не к собственным или сторонним базам данных, а непосредственно к ресурсам производителей оборудования и разработчиков соответствующего программного обеспечения, загружая и устанавливая его без видимого участия самого пользователя (его участие сводится только к тому, чтобы согласиться с предложением инсталляции или обновления). Плюс ко всему, эти программы следят за актуальным состоянием драйверов, постоянно проверяя выход новых версий (чего Windows при всем уважении к этим системам делать не умеет).

Заключение

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

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

Для каких устройств существуют драйверы?

Для оперативной памяти (RAM) их нет. Для всех остальных аппаратных компонентов драйверы существуют. Естественно, не нужен драйвер и блоку питания, но это не в счет, так как операционная система не имеет непосредственного контакта с ним.

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

Компьютер может работать без драйверов?

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

Обязательно ли устанавливать драйверы?

Вообще-то да, но не обязательно с чисто технической точки зрения, так как Windows автоматически устанавливает драйверы для всех критически важных компонентов. Т.е. компьютер будет работать, но его функциональность будет весьма ограничена.

Рассмотрим на примере видеокарт. Для того чтобы вы могли видеть что-либо на экране, Windows использует базовый драйвер. Однако если вы хотите сделать что-то более серьезное: включить Aero (в Vista или 7), иметь аппаратное ускорение декодирования видео и т.д., вам будет нужно установить драйвер. Другим примером могут быть звуковые карты, которые в Windows поддерживаются достаточно скудно. Если звуковая карта не обнаружена, в системе не будет звука. Это не фатально – с компьютером можно работать и без звука, а вот без изображения на мониторе нельзя. Тем не менее, все мы понимаем, насколько ограниченным будет компьютер, который не может воспроизводить звук, т.е. с практической точки зрения драйвер необходимо установить.

Нужно ли устанавливать дополнительные драйверы, если Windows уже все установила и все работает нормально?

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

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

Вторым исключением являются ЭЛТ-мониторы. Самое главное для этих мониторов иметь возможность работать без мерцания, т.е. поддерживать частоту обновления 100 Гц при необходимом разрешении. Иногда с драйвером, установленным по умолчанию, монитор не может работать на 100 Гц с необходимым разрешением, поэтому требуется установить отдельный драйвер. Однако в большинстве случаев все работает нормально и без дополнительных драйверов. Это не относится к TFT-мониторам, так как они не будут мерцать даже на низкой частоте обновления 60 Гц благодаря ЖК-технологии.

Третьим исключением являются мыши и клавиатуры. Windows распознает и поддерживает на базовом уровне абсолютно все мыши и клавиатуры, даже такие, которые оснащены дополнительными кнопками. Однако может существовать специальный драйвер (или приложение) от производителя мыши и клавиатуры, который предлагает дополнительные опции для настройки этих кнопок. Полностью гейминг-ориентированные мыши и клавиатуры обычно располагают множеством специфичных кнопок, и для их работы обязательно требуется установить драйвер/приложение от производителя.

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

Как посмотреть аппаратные компоненты, чтобы узнать, какие драйверы искать?

С помощью специализированных программ.

Лучшим инструментом для этой цели является AIDA64 Extreme Edition . Он платный, но предлагает наиболее точную и полную информацию. Все что вам нужно, это войти в раздел («Компьютер») -> Summary («Общая информация»).

Отличной бесплатной альтернативой является PC Wizard . База данных этой программы не такая точная, как у предыдущей, но достаточно хорошая. Сведения о звуковой карте находятся не на вкладке с общей информацией, а в окне Multimedia, т.е. требуется нажать на иконку с нотой и динамиком.

Другой хорошей бесплатной альтернативой является HWiNFO . Если вы не желаете видеть подробную информацию, вы можете поставить отметку Summary-only, чтобы видеть только основные сведения.

У меня есть устройство от неизвестного производителя/бренда и ни одна программа не распознает его. Как мне узнать, что это такое и/или где я могу найти драйвер для него?

Очень часто такая ситуация возникает с веб-камерами, но может произойти и с другими типами устройств от самых разных производителей. Так или иначе, вы можете найти драйвер для не распознанных устройств по их идентификационным кодам. Вот как…

Щелкните правой кнопкой мыши на Windows 7 или XP) -> «Управление» -> «Диспетчер устройств». Найдите проблемное устройство в списке доступных категорий, дважды щелкните на нем, перейдите на вкладку «Сведения» и в выпадающем меню выберите «ИД оборудования» . Используйте коды производителя (VEN), устройства (DEV) и подсистемы (SUBSYS), чтобы попытаться найти в интернете информацию/драйвер для устройства.

Вот пример моего устройства:

Важной информацией в этом окне является VEN_1969, DEV_1083 и SUBSYS_E0001458, т.е. почти вся вторая строка.

Где брать драйверы?

В интернете, на сайте производителя. Под производителем я имею в виду производителя соответствующего чипа, а не всего оборудования. Например: если ваша видеокарта оснащена чипом от NVIDIA, но была произведена, скажем, компанией MSI, то драйвер нужно искать на сайте NVIDIA.

В случае с материнскими платами ситуация немного сложнее, потому что они, как правило, содержат больше интегрированных компонентов: обязательными на сегодняшний день являются сетевая карта, звуковая карта и USB-контроллер (если 2.0 распознается автоматически, то 3.0 не всегда), но могут быть и другие интегрированные компоненты, такие как графический чип.

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

А как же диск с драйверами/программным обеспечением, который поставляется в комплекте с оборудованием?

Это не самая лучшая идея, поскольку самые актуальные драйверы вы найдете только в интернете. Драйверы на дисках со временем устаревают, что делает их непредпочтительными. Если у вас нет доступа в интернет и/или вам нужно установить какие-либо драйверы сразу же (срочно), то вы можете использовать установочный диск, но будет хорошо, если вы обновите эти драйверы как можно скорее.

Нужно ли регулярно обновлять драйверы и придерживаться самых последних версий?

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

Как проверить версию драйвера?

Запустите «Диспетчер устройств»: щелкните правой кнопкой мыши на «Этот Компьютер» («Компьютер» или «Мой компьютер», если у вас Windows 7 или XP) -> «Управление» -> «Диспетчер устройств» . Найдите устройство, драйвер которого вы хотите проверить, дважды щелкните на нем и перейдите на вкладку «Драйвер» . Там вы найдете информацию о дате и версии драйвера. В принципе то же самое можно сделать и с помощью специализированного программного обеспечения для получения информации об оборудовании.

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

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

  • запустите «Диспетчер устройств»: щелкните правой кнопкой мыши на «Этот Компьютер» («Компьютер» или «Мой компьютер», если у вас Windows 7 или XP) -> «Управление» -> «Диспетчер устройств» ;
  • если устройство не распознается вообще, оно будет в разделе «Другие устройства», в противном случае оно будет находиться в соответствующей категории;
  • щелкните правой кнопкой мыши на устройстве и выберите «Обновить драйверы…» ;
  • выберите «Выполнить поиск драйверов на этом компьютере» ;
  • далее нажмите на кнопку «Обзор» и укажите путь к драйверу (то есть папку, куда вы распаковали файлы драйвера);
  • нужно указать папку, которая содержит определенные.inf файлы;
  • при нажатии на кнопку «Далее» Windows проверит папку и установит драйвер;
  • после установки нажмите «Закрыть» и перезагрузите компьютер.

Как вернуться к предыдущему драйверу для определенного устройства, если с новым драйвером оно работает некорректно?

Опять же, это можно сделать через «Диспетчер устройств»:

  • щелкните правой кнопкой мыши на «Этот Компьютер» («Компьютер» или «Мой компьютер», если у вас Windows 7 или XP) -> «Управление» -> «Диспетчер устройств» ;
  • найдите нужное устройство и дважды щелкните по нему;
  • перейдите на вкладку «Драйвер» и нажмите кнопку «Откатить» (к предыдущему драйверу).

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

Обычно драйверы, которые имеют свой собственный инсталлятор, имеют и собственный деинсталлятор. Не всегда, но часто. Если деинсталлятор есть, для удаления драйвера вам нужно перейти в то же место, откуда вы удаляете программы («Установка и удаление программ» в Windows XP и «Удалить или изменить программу» в Windows Vista/7/8/10).

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

Для этой цели можно использовать .

Примечание №2

В процессе установки Driver Fusion выберите пользовательский тип установки и снимите флажок с опции «Установить PC Mechanic». В противном случае эта программа будет установлена вместе с Driver Fusion.

Работать с программой на самом деле очень просто:

  • запустите систему в безопасном режиме;
  • запустите Driver Fusion;
  • выберите категорию, к которой принадлежит драйвер, который вы хотите полностью удалить;
  • отметьте нужный драйвер;
  • нажмите на кнопку «Удалить» (Delete).

«Диспетчер устройств» показывает нераспознанное устройство, но я точно знаю, что это, и я уверен(а), что не будут использовать его. Нужно ли в этом случае устанавливать драйвер?

Нет. Если вы на 100% уверены, что это за устройство и также на 100% уверены, что вы никогда не будете его использовать, то вы можете смело не устанавливать драйвер для него. Это даже лучше, потому что так вы сэкономите ресурсы системы и снизите вероятность нестабильной работы компьютера. Конечно, не все драйверы потребляют значительное количество ресурсов и не все из них являются нестабильными, но если вы уверены, что вы не нуждаетесь в этом устройстве, то вы можете пропустить установку драйвера и даже можете отключить его в «Диспетчере устройств».

Есть ли способ проверить, насколько стабилен драйвер?

Да, есть. Перед описанием способа следует указать на некоторые вещи. Тест предназначен для тестирования всех драйверов – не только драйверов для аппаратных устройств, но и драйверов, которые установлены приложениями (то есть все файлы с расширением.sys).

Тест не является абсолютным. Если драйвер проходит этот тест, это означает, что он является стабильным на вашем компьютере с установленным в данный момент программным обеспечением. Это также означает, что на других компьютерах этот драйвер также должен быть стабильным, но это не гарантируется, так как на другом компьютере могут быть установлены и совершенно другие драйверы, с которыми могут возникнуть конфликты.

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

Собственно говоря, вот как выполняется тестирование:

  • запустите «Диспетчер проверки драйверов»:
  • в любой версии Windows нажмите клавишу с логотипом Windows + R, чтобы открыть окно «Выполнить» -> напишите «verifier» -> OK ;
  • на первой странице выберите «Создать нестандартные параметры (для кода программ)» и нажмите «Далее» ;
  • на следующей странице поставьте отметки рядом со следующими опциями и нажмите «Далее» :

Для Windows XP: «Доскональные, но возможно избыточно строгие, либо недопустимые тесты» ;

Для Windows Vista/7: и «ведение журнала IRP» ;

Для Windows 8.1/10: «Проверка ввода-вывода» , «Принудительная обработка отложенных запросов ввода-вывода» и «ведение журнала IRP» ;

  • на следующей странице выберите «Выбрать имя драйвера из списка» и нажмите «Далее» ;
  • теперь в списке выберите драйверы, которые вы хотите проверить, и когда закончите, нажмите «Готово» ;

Примечание

Если вы хотите проверить драйвер, который не фигурирует в списке (иногда драйверы некоторых программ не загружаются), нажмите кнопку «Добавить незагруженные драйверы к этому списку» и укажите нужный драйвер (.sys)

  • затем появится сообщение о необходимости перезагрузить компьютер; перезапустите систему, чтобы во время загрузки Windows могла проверить драйвер(ы).

Если драйвер является нестабильным, вы получите синий экран во время загрузки или вскоре после загрузки. Если Windows загрузится и будет работать нормально на протяжении нескольких минут, то драйвер можно считать стабильным. Однако если произойдет сбой (из-за нестабильного драйвера), тогда вам следует сообщить «Диспетчеру проверки драйверов», что проверку нужно прекратить. Если система не загружается, вам придется войти в безопасный режим. В безопасном режиме снова запустите «Диспетчер проверки драйверов», но на этот раз выберите «Удалить существующие параметры» , нажмите кнопку «Готово» и перезапустите систему.

Смертельно ли, если драйвер является нестабильным?

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

Если у вас есть предложения, идеи и критические замечания к материалу, пишите в комментариях ниже.

Отличного Вам дня!

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

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

Компьютер — это целый набор устройств, а не один прибор. Каждое устройство, подключаемое к компьютеру — экран, клавиатура, принтер, видеокарта и любое другое нуждаются для своей работы в том, чтобы операционная система «понимала», что можно делать с таким устройством. Только что подключенный прибор пока неизвестен системе. 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. О такой установке драйвера читайте в следующей статье про драйверы.

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

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

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

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

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

Так же работают и видеокарты, клавиатуры, мониторы и т.п.

Как работают драйвера устройства?

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

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

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

Вместо этого программе и драйверу просто нужно знать, как общаться между собой.

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

Как работать с драйверами устройств

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

Драйвера для каждого аппаратного компонента в вашем компьютере с операционной системой Windows централизованно управляются приложением Менеджер устройств , имеющемся во всех версиях Microsoft Windows.

Вот несколько типичных задач в Windows, в которых участвуют драйвера:

  • Как обновлять драйвера в Windows
  • Как найти номер версии драйвера в Windows
  • Как отменить обновление драйвера в Windows

Вот несколько дополнительных ресурсов, касающихся драйверов:

  • Бесплатные инструменты обновления драйверов
  • Драйвера Windows 10 (обновленный список)
  • Драйвера Windows 8 (обновленный список)
  • Драйвера Windows 7 (обновленный список)
  • Как найти и скачать драйвера с сайтов производителей
  • Популярный сайты для скачивания драйверов
  • Как определить, 32-битная или 64-битная версия Windows установлена

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

Дополнительная информация о драйверах устройств

Кроме базовых взаимоотношений программа-драйвер-устройство есть и другие интересные ситуации, в которой участвую драйвера (и в которых нет).

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

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

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