Linux Device Drivers 3 / Драйверы устройств Линукс (третье издание): 17.3. Подробная структура net_device
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
17.3. Подробная структура net_device hardorsoft 26.10.10 в 01:38 |
|
|
Структура net_device занимает важное место, и заслуживает подробного описания. Здесь описаны все поля. Эта глава кратко hardorsoft 26.10.10 в 01:39 |
||
|
17.3.1. Основная информация hardorsoft 26.10.10 в 01:39 |
||
|
Первая часть структуры net_device состоит из следующих полей: hardorsoft 26.10.10 в 01:39 |
||
|
char name[IFNAMSIZ]; hardorsoft 26.10.10 в 01:39 |
||
|
Имя устройства. Если имя содержит в себе строку %d. hardorsoft 26.10.10 в 01:39 |
||
|
unsigned long state; hardorsoft 26.10.10 в 01:40 |
||
|
Состояние устройства. Состоит из нескольких флагов. Драйвер hardorsoft 26.10.10 в 01:40 |
||
|
struct net_device *next; hardorsoft 26.10.10 в 01:40 |
||
|
Указатель на следующее устройство в глобальном списке. Это поле hardorsoft 26.10.10 в 01:40 |
||
|
int (*init)(struct net_device *dev); hardorsoft 26.10.10 в 01:40 |
||
|
Функция инициализации. Если этот указатель определен, функция hardorsoft 26.10.10 в 01:40 |
||
|
17.3.2. Аппаратная информация hardorsoft 26.10.10 в 01:41 |
||
|
Приведенные здесь поля, содержат низкоуровневую аппаратную hardorsoft 26.10.10 в 01:41 |
||
|
unsigned long rmem_end; hardorsoft 26.10.10 в 01:41 |
||
|
Эти поля указывают на начало и конец памяти, используемой hardorsoft 26.10.10 в 01:41 |
||
|
unsigned long base_addr; hardorsoft 26.10.10 в 01:42 |
||
|
Базовые адреса ввода-вывода сетевого интерфейса. Это поле hardorsoft 26.10.10 в 01:42 |
||
|
unsigned char irq; hardorsoft 26.10.10 в 01:42 |
||
|
Назначает номер прерывания. Значение dev->irq выводится hardorsoft 26.10.10 в 01:42 |
||
|
unsigned char if_port; hardorsoft 26.10.10 в 01:42 |
||
|
Порт используемый в многопортовом устройстве. Например, это hardorsoft 26.10.10 в 01:43 |
||
|
unsigned char dma; hardorsoft 26.10.10 в 01:43 |
||
|
Канал ПДП выделенный устройству. Поле считывается только с hardorsoft 26.10.10 в 01:43 |
||
|
17.3.3. Информация интерфейса hardorsoft 26.10.10 в 01:44 |
||
|
Большая часть информации об интерфейсе корректно hardorsoft 26.10.10 в 01:45 |
||
|
Не Ethernet-интерфейсы могут использовать вспомогательные hardorsoft 26.10.10 в 01:45 |
||
|
Не Ethernet-интерфейсы могут использовать вспомогательные hardorsoft 26.10.10 в 01:45 |
||
|
Настройка полей для устройств LocalTalk. hardorsoft 26.10.10 в 01:45 |
||
|
void fc_setup(struct net_device *dev); hardorsoft 26.10.10 в 01:45 |
||
|
Инициализация полей для оптоволоконных устройств. hardorsoft 26.10.10 в 01:45 |
||
|
void fddi_setup(struct net_device *dev); hardorsoft 26.10.10 в 01:46 |
||
|
Конфигурирование интерфейса для FDDI (Fiber Distributed Data hardorsoft 26.10.10 в 01:46 |
||
|
void hippi_setup(struct net_device *dev); hardorsoft 26.10.10 в 01:46 |
||
|
Готовит поля для драйвера HIPPI (High-Performance Parallel Interface hardorsoft 26.10.10 в 01:46 |
||
|
void tr_setup(struct net_device *dev); hardorsoft 26.10.10 в 01:46 |
||
|
Настройка для интерфейса сетевых hardorsoft 26.10.10 в 01:47 |
||
|
Эти классы охватывают большинство устройств. Если у вас есть что- hardorsoft 26.10.10 в 01:50 |
||
|
unsigned short hard_header_len; hardorsoft 26.10.10 в 01:50 |
||
|
Длинна аппаратного заголовка, количество октет в передаваемом hardorsoft 26.10.10 в 01:50 |
||
|
unsigned mtu; hardorsoft 26.10.10 в 01:50 |
||
|
Максимальный блок для передачи (MTU - Maximum Transfer Unit). hardorsoft 26.10.10 в 01:51 |
||
|
unsigned long tx_queue_len; hardorsoft 26.10.10 в 01:51 |
||
|
Максимальное количество фреймов, которые могут находиться в hardorsoft 26.10.10 в 01:51 Максимальное количество фреймов, которые могут находиться в hardorsoft 26.10.10 в 01:51 |
||
|
unsigned short type; hardorsoft 26.10.10 в 01:51 |
||
|
Тип аппаратного интерфейса. Поле используется ARP для hardorsoft 26.10.10 в 01:51 |
||
|
unsigned char addr_len; hardorsoft 26.10.10 в 01:51 |
||
|
Длина аппаратного (MAC) адреса и аппаратный адрес устройства. hardorsoft 26.10.10 в 01:52 |
||
|
unsigned short flags; hardorsoft 26.10.10 в 01:52 |
||
|
Флаги интерфейса (описаны ниже). hardorsoft 26.10.10 в 01:52 |
