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


структура MEM_DES (cfgmgr32.h)

Структура MEM_DES используется для указания списка ресурсов или списка требований к ресурсам, описывающего использование памяти для экземпляра устройства. Дополнительные сведения о списках ресурсов и списках требований к ресурсам см. в разделе Аппаратные ресурсы.

Синтаксис

typedef struct Mem_Des_s {
  DWORD     MD_Count;
  DWORD     MD_Type;
  DWORDLONG MD_Alloc_Base;
  DWORDLONG MD_Alloc_End;
  DWORD     MD_Flags;
  DWORD     MD_Reserved;
} MEM_DES, *PMEM_DES;

Члены

MD_Count

Для списка ресурсов:

Ноль.

Для списка требований к ресурсам:

Количество элементов в массиве MEM_RANGE , включенном в структуру MEM_RESOURCE .

MD_Type

Необходимо задать постоянное значение MType_Range.

MD_Alloc_Base

Для списка ресурсов:

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

Для списка требований к ресурсам:

Ноль.

MD_Alloc_End

Для списка ресурсов:

Наибольшее число из диапазона смежных адресов физической памяти, выделенных устройству.

Для списка требований к ресурсам:

Ноль.

MD_Flags

Один битовый флаг из каждого набора флагов, описанных в следующей таблице.

Флаг Определение
Флаги только для чтения
fMD_ROM Указанный диапазон памяти доступен только для чтения.
fMD_RAM Указанный диапазон памяти не доступен только для чтения.
mMD_MemoryType Битовая маска для бита в MD_Flags , задающая атрибут только для чтения.
Флаги только для записи
fMD_ReadDisallowed Указанный диапазон памяти доступен только для записи.
fMD_ReadAllowed Указанный диапазон памяти не предназначен только для записи.
mMD_Readable Битовая маска для бита в MD_Flags , указывающая атрибут только для записи.
Флаги размера адреса
fMD_24 24-разрядная адресация (не используется).
fMD_32 32-разрядная адресация.
mMD_32_24 Битовая маска для бита в MD_Flags , указывающая размер адреса.
Флаги предварительной выборки
fMD_PrefetchAllowed Можно предварительно получить указанный диапазон памяти.
fMD_PrefetchDisallowed Не удается предварительно получить указанный диапазон памяти.
mMD_Prefetchable Битовая маска для бита в MD_Flags , указывающая возможность предварительной выборки.
Кэширование флагов
fMD_Cacheable Указанный диапазон памяти можно кэшировать.
fMD_NonCacheable Указанный диапазон памяти не может быть кэширован.
mMD_Cacheable Битовая маска для бита в MD_Flags , указывающая возможность кэширования.
Объединенные флаги кэширования и записи
fMD_CombinedWriteAllowed Допускается комбинированное кэширование и запись.
fMD_CombinedWriteDisallowed Кэширование в сочетании с записью запрещено.
mMD_CombinedWrite Битовая маска для бита в MD_Flags , задающая возможность кэширования объединения и записи.

MD_Reserved

Только для внутреннего использования.

Требования

Требование Значение
Заголовок cfgmgr32.h (включая Cfgmgr32.h)

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

MEM_RANGE

MEM_RESOURCE