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

Код прикладной программы исполняется в пользовательском режиме работы процессора. В этом случае имеется ряд серьезных ограничений на доступ к памяти, аппаратному обеспечению и привилегированным инструкциям процессора. Когда возникает необходимость в преодолении этих ограничений, прикладная программа обращается к ядру ОС, код которого исполняется процессором в режиме ядра. Режим ядра лишен всех упомянутых ограничений. Для расширения функциональных возможностей ядра как раз и служат драйверы ядра (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 эта возможность возведена в абсолют, хотя монолитные драйверы все еще поддерживаются

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

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

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

Эти драйверы разработаны по производителям устройств и разработчикам операционной системы.

Какую работу выполняют драйвера устройств

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

Ошибки и исправления драйверов

Чтобы избежать ошибок,как и любые другие программы, драйверы нужно регулярно обновлять.Разработчики операционных систем и производители оборудования выпускают релизы обновления драйверов регулярно. Перед установкой любого рода драйвера устройства в вашу систему, вы должны убедиться, что это самые свежие и самые последние версии. Обновлённые версии драйверов можно найти в Интернете. Во время загрузки обновлений для вашего драйвера, убедитесь, что вы загружаете его из надежного источника. Наиболее надёжное и достоверное обновление драйверов можно найти на сайте производителя или с сайта разработчика операционной системы. В операционной системе Windows, вы можете обновить ваш драйвер через утилиту Диспетчер Устройств .Чтобы открыть Диспетчер Устройств, щелкните правой кнопкой мыши на рабочем столе значок Мой Компьютер , а затем выберите Свойства. Рядом, на вкладке Hardware (оборудование) выберите Диспетчер Устройств . В Device Manager, вы сможете просмотреть категории аппаратных устройств и определить устройство, для которого вы хотите установить обновление, а затем щелкните правой кнопкой на устройстве и выберите Свойства. Откройте вкладку Драйвер в диалоговом окне » свойства » и нажмите для начала обновления Мастер Обновления Оборудования кнопку Обновить Драйвер . Далее, следуйте инструкциям мастера, чтобы обновить ваш драйвер. После завершения обновления,перезагрузите компьютер,чтобы убедиться, что обновления были установлены надлежащим образом, и в новой версии нет никаких ошибок.

Драйвера устройств, разработанные для конкретной операционной системы. Например, драйвера для операционной системы Windows, которые отличаются от операционной системы Linux. Кроме того, драйверы для Windows XP, отличаются от Windows Vista. Следовательно, вы должны принять дополнительные меры предосторожности при установке драйверов для аппаратных устройств. Установка неправильного драйвера может привести к необратимому повреждению вашего устройства, а также компьютерной системы. Чтобы избежать этой путаницы, рекомендуется использовать хорошие сторонние драйвера, утилиты, такие как DriverFinder, для обновления драйверов устройств. Эти инструменты автоматически сканируют компьютер на наличие устаревших и физически устаревших драйверов, а затем предложат новые, лучшие и совместимые версии.

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

Что такое драйвер

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

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

На какие устройства нужны драйвера?

Практически на все устройства, подключаемые к компьютеру, которые имеют сложную структуру и им нужны драйвера. Причём это как внутренние, так и внешние устройства. Драйвера необходимы для: видеокарты, звуковой карты, сетевой карты, материнской карты, а также для МФУ, веб-камеры, подключаемых гаджетов и т.п.


  • Что такое видеодрайвер? Это комплекс настроек, который помогает операционной системе организовать корректную работу видеокарты, при этом получив её максимальную производительность.

  • Что такое драйвер чипсет? Это собрание настроек, которые позволяют операционной системе в полной мере раскрыть потенциал материнской платы компьютера.

  • Что такое драйвер LAN? Это настройка, которая открывает возможность операционной системе работать с локальной сетью, как с помощью интегрированного в материнскую плату сетевого адаптера, так и отдельной сетевой карты.

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

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

В операционной системе Linux подавляющее большинство драйверов устанавливаются автоматически, что очень удобно, но некоторые всё же нужно устанавливать вручную. Стоит отметить, что для OS Linux драйвера, скорее всего, вам придётся загружать самостоятельно (с официального сайта производителя устройства), так как на диске зачастую записаны драйвера только для Windows.

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

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

Начинающие пользователи ПК, часто задают вопрос, для чего предназначены драйвера?

для чего нужны драйвера

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

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

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

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

Какие комплектующие не нуждаются в драйверах?

Запчасти, которые не требуют драйвера, являются Жесткий диск, Оптический привод (Дисковод). Причина в том, что таким комплектующим достаточно того, что им предлагает сама ОС. Как только вы подключили Жесткий диск, у вас высветится окно, которое будет распознавать новую запчасть. Как только поиск устройства завершиться, зайдя в (Мой компьютер) вы увидите новое разделение жесткого диска, это и есть ваше новое устройство.

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

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

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

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



Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png