Читаем Операционная система UNIX полностью

Для каждого обслуживаемого драйвером сетевого адаптера создается отдельная структура данных DL_bdconfig_t, описывающая характеристики адаптера и содержащая необходимую для управления адаптером информацию, а также статистику, являющуюся частью MIB (Management Information Base). Эта структура используется аппаратно-независимой и зависимой частями совместно, в том числе и для передачи определенной информации между ними.

В частности, эта структура содержит следующие поля:

majorСтарший номер устройства, связанного с данным сетевым адаптером
io_startАдрес начала области ввода/вывода
io_endАдрес конца области ввода/вывода
mem_startАдрес начала базовой памяти
mem_endАдрес конца базовой памяти
irq_levelУровень прерывания
шах_sapsМаксимальное число точек доступа (SAP)
flagsФлаги состояния адаптера
mibСписок статистических данных

Поле flags может включать следующие флаги:

BOARD_PRESENTУстанавливается драйвером после успешной инициализации адаптера
BOARD_DISABLEDУстанавливается драйвером при неудачной инициализации адаптера. Этот флаг также может быть установлен, если драйвер определит нарушения в функционировании адаптера
TX_BUSYУказывает на отсутствие ресурсов, например отсутствие необходимых буферов для передачи кадра
TX_QUEUEDУказывает на наличие кадров, ожидающих передачи

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

stateСостояние SAP. Возможные состояния определены интерфейсом DLPI. Исходное состояние точки доступа DL_UNBOUND
sap_addrУникальный адрес (идентификатор) SAP
flagsФлаги, определяющие дополнительные характеристики SAP
read_qУказатель на очередь чтения потока, связанного с SAP
write_qУказатель на очередь записи потока, связанного с SAP
mac_typeТип используемого протокола доступа и формат используемого кадра. Возможные значения включают:
DL_CMACDIEEE 802.3
DL_ETHEREthernet 2.0
DL_TPBIEEE 802.4
DL_TPRIEEE 802.5
DL_HDLCISO HDLC
DL_FDDIFDDI
service_modeРежим передачи данных. В локальных сетях обычно используется режим без установления связи без подтверждения DL_CLDLS
provider_styleТип поставщика услуг: DL_STYLE1 или DL_STYLE2
bdУказатель на структуру DL_bdconfig_t, связанную с сетевым адаптером
next_sapУказатель на следующую точку доступа в списке активных SAP
max_spduМаксимальный размер данных, которые могут быть переданы в кадре
min_spduМинимальный размер данных, которые могут быть переданы в кадре

Дополнительные характеристики SAP хранятся в поле flags, которое может включать следующие флаги:

Перейти на страницу:

Похожие книги