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

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

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

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

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

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

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