Драйверы сетевых плат

Теперь вы знаете, каким образом запрос поступает от приложения в операционную систему и выполняется ею. Как же этот запрос поступает в сеть? Эту задачу выполняет часть программного обеспечения, называемая драйвером сетевой платы.
Вообще говоря, любой драйвер устройства представляет собой часть программного обеспечения, позволяющего операционной системе и физическому устройству взаимодействовать друг с другом. Некоторые драйверы устройств входят в состав файлов операционной системы. Другие же можно загрузить с диска или Internet, однако они в любом случае остаются интерфейсом между сетевой платой и операционной системой.
Почему же нельзя просто встроить функциональные средства, необходимые сетевой плате, непосредственно в операционную систему, особенно, если учесть, что современные операционные системы создаются с учетом возможности работы в сети? Главным образом потому, что это непрактично. Десятки и даже сотни производителей предлагают тысячи моделей сетевых плат, причем в каждой модели используют собственный драйвер. По этой причине просто невозможно встраивать в операционную систему функции поддержки всех сетевых плат. И даже если бы эта схема имела практический смысл, она была бы нежелательна. В этом случае операционная система занимала бы слишком много места, намного больше реально необходимого. Если вы установили единственную сетевую плату, остальные драйверы вам не нужны. И более того: обновление драйверов для улучшения поддержки оборудования потребовало бы замены операционной системы. Разве вам понравится переустанавливать операционную систему при каждом обновлении драйвера сетевой платы? Не думаю.
Кстати сказать, в некоторых операционных системах используют модульную конструкцию, позволяющую в нее включить определенные функции драйвера. Подразумевается, что производителям оборудования нужно будет только дописать оставшуюся часть программы (stub portion) драйвера. Идея такого подхода такова (рис. 3. 3): хотя каждая сетевая плата может управлять передачей данных между операционной системой и сетью методом несколько отличным от используемых в других платах, основная функция сетевой платы неизменна в любом случае. Таким образом, эту функцию действительно можно встроить в операционную систему. С этой точки зрения создателю драйвера сетевой платы достаточно написать инструкции специфичные для данной платы, которые позволят плате получать доступ к функциональным средствам, встроенным в операционную систему.

На этом мы завершим обсуждение общих вопросов, связанных с драйверами операционной системы, и приступим к основному — работе этих драйверов. 

Смотрите также

Идентификация пользователей
Для предотвращения доступа в сеть незарегистрированных пользователей прежде всего следует установить учетную запись (user account). Пока пользователь не введет достоверное имя и пароль, указанные в ...

Определение скорости работы процессора
Как уже упоминалось ранее в этой главе, выбор процессоров (RISC или CISC) для компьютера не во всем зависит от вас. Я советую выбирать процессор в зависимости от приложения, вместо того чтобы подбир ...

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