Сведения о структуре nic_stats_t
#include <hw/nicinfo.h>typedef struct _nic_stats {_Uint32t revision; /* Set to NIC_STATS_REVISION */_Uint32t media;/* Media specific statistics */union {nic_ethernet_stats_t estats; /* NIC_MEDIA_802_3 */nic_wifi_stats_t wstats; /* NIC_MEDIA_802_11 */_Uint8t bytes[1024];} un;/* Generic statistics follow */_Uint32t valid_stats; /* see NIC_STAT_... *//* Mandatory statistics - assumed to be valid */_Uint32t txed_ok;_Uint32t rxed_ok;_Uint64t octets_txed_ok;_Uint64t octets_rxed_ok;/* Optional statistics - "valid_stats" determines validity */_Uint32t txed_multicast;_Uint32t rxed_multicast;_Uint32t txed_broadcast;_Uint32t rxed_broadcast;_Uint32t tx_failed_allocs;_Uint32t rx_failed_allocs;_Uint32t reserved[32];} nic_stats_t;
libnetdrvr
Структура net_stats_t
используется, когда модуль хочет отслеживать обязательную и необязательную статистическую информацию. Программное обеспечение более высокого уровня может запросить статистический счетчик драйвера, выполнив DCMD_IO_NET_GET_STATS devctl(). Результаты из devctl сохраняются в net_stats_t
.
Структура включает следующие поля:
NIC_STATS_REVISION
. nic_media_types
, определенного в файле <hw/nicinfo.h>
. Важно правильно установить это поле, поскольку оно влияет на то, как будет интерпретироваться остальная часть структуры. NIC_MEDIA_802_3
, это поле должно быть заполнено статистикой, специфичной для Ethernet. Подробнее о структуре статистики Ethernet см. в структуре nic_ethernet_stats_t
. NIC_MEDIA_802_11
, это поле должно быть заполнено статистикой, специфичной для беспроводных сетей. Подробнее о структуре статистики для беспроводных сетей см. в структуре nic_wifi_stats_t
. txed_multicast
активно. rxed_multicast
активно. txed_broadcast
активно. rxed_broadcast
активно. tx_failed_allocs
активно. rx_failed_allocs
активно. ЗОСРВ «Нейтрино»
Предыдущий раздел: Библиотека разработки сетевых драйверов