Поделиться через


структура NDIS_SYSTEM_PROCESSOR_INFO (ndis.h)

Структура NDIS_SYSTEM_PROCESSOR_INFO указывает сведения о топологии ЦП локального компьютера и наборе процессоров для масштабирования на стороне приема (RSS).

Синтаксис

typedef struct _NDIS_SYSTEM_PROCESSOR_INFO {
  NDIS_OBJECT_HEADER    Header;
  ULONG                 Flags;
  NDIS_PROCESSOR_VENDOR ProcessorVendor;
  ULONG                 NumPhysicalPackages;
  ULONG                 NumCores;
  ULONG                 NumCoresPerPhysicalPackage;
  ULONG                 MaxHyperThreadingCpusPerCore;
  ULONG                 RssBaseCpu;
  ULONG                 RssCpuCount;
  PUCHAR                RssProcessors;
  NDIS_PROCESSOR_INFO   CpuInfo[MAXIMUM_PROC_PER_GROUP];
} NDIS_SYSTEM_PROCESSOR_INFO, *PNDIS_SYSTEM_PROCESSOR_INFO;

Члены

Header

Структура NDIS_OBJECT_HEADER для структуры NDIS_SYSTEM_PROCESSOR_INFO. Задайте для элемента Type структуры, задающего заголовок , значение NDIS_OBJECT_TYPE_DEFAULT, для элемента Revision — NDIS_SYSTEM_PROCESSOR_INFO_REVISION_1, а для элемента Size — значение NDIS_SIZEOF_SYSTEM_PROCESSOR_INFO_REVISION_1.

Flags

Зарезервировано. Присвойте этому элементу значение ноль.

ProcessorVendor

Поставщик процессора, указанный в качестве одного из значений из перечисление NDIS_PROCESSOR_VENDOR .

NumPhysicalPackages

Общее количество физических пакетов процессора, которые находятся на локальном компьютере.

NumCores

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

NumCoresPerPhysicalPackage

Количество процессоров ядра, которые находятся в каждом физическом пакете. Например, присвойте этому члену значение два для двухъядерного физического пакета.

MaxHyperThreadingCpusPerCore

Максимальное число логических процессоров, которые находятся в каждом процессоре ядра с гиперпотоками. Например, присвойте этому члену значение два, если каждый процессор ядра с гиперпотоками поддерживает два логических процессора.

RssBaseCpu

Начальный номер ЦП, используемый для RSS.

RssCpuCount

Количество процессоров, используемых для RSS.

RssProcessors

Указатель на дополнительный буфер, предоставляемый вызывающим объектом, который будет содержать номера ЦП процессоров, которые можно использовать для RSS. Присвойте этому члену значение NULL , если номера ЦП не требуются. Чтобы получить номера ЦП, этот элемент должен содержать допустимый указатель, а размер этого буфера должен быть не менее MAXIMUM_PROCESSORS * sizeof (UCHAR). ПослеФункция NdisGetProcessorInformation возвращает успешно, буфер содержит номера ЦП, за которыми следуют неопределенные данные.

CpuInfo[MAXIMUM_PROC_PER_GROUP]

Массив структур NDIS_PROCESSOR_INFO . После успешного возврата функции NdisGetProcessorInformation этот массив предоставляет сведения о каждом процессоре на локальном компьютере. Число значений в массиве равно количеству процессоров на локальном компьютере, какОтчеты о функции NdisSystemActiveProcessorCount.

Комментарии

Сетевые драйверы NDIS используют структуру NDIS_SYSTEM_PROCESSOR_INFO в вызовахФункция NdisGetProcessorInformation. После возврата NdisGetProcessorInformation эта структура содержит сведения о топологии ЦП системы и наборе процессоров, которые будут использоваться для масштабирования на стороне приема (RSS).

Требования

Требование Значение
Минимальная версия клиента Поддерживается в NDIS 6.0 и 6.1. Для NDIS 6.20 и более поздних версий используйте NDIS_SYSTEM_PROCESSOR_INFO_EX.
Верхняя часть ndis.h (включая Ndis.h)

См. также раздел

NDIS_OBJECT_HEADER

NDIS_PROCESSOR_INFO

NDIS_PROCESSOR_VENDOR

NDIS_SYSTEM_PROCESSOR_INFO_EX

NdisGetProcessorInformation

NdisSystemActiveProcessorCount