estrutura MEM_DES (cfgmgr32.h)
A estrutura MEM_DES é usada para especificar uma lista de recursos ou uma lista de requisitos de recursos que descreve o uso de memória para uma instância de dispositivo. Para obter mais informações sobre listas de recursos e listas de requisitos de recursos, consulte Recursos de hardware.
Sintaxe
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;
Membros
MD_Count
Para uma lista de recursos:
Zero.
Para uma lista de requisitos de recursos:
O número de elementos na matriz MEM_RANGE incluída na estrutura MEM_RESOURCE .
MD_Type
Deve ser definido como o valor constante MType_Range.
MD_Alloc_Base
Para uma lista de recursos:
O menor número de um intervalo de endereços de memória física contíguos alocados ao dispositivo.
Para uma lista de requisitos de recursos:
Zero.
MD_Alloc_End
Para uma lista de recursos:
O número mais alto de um intervalo de endereços de memória física contíguos alocados ao dispositivo.
Para uma lista de requisitos de recursos:
Zero.
MD_Flags
Um sinalizador de bits de cada um dos conjuntos de sinalizadores descritos na tabela a seguir.
Sinalizador | Definição | |
---|---|---|
Sinalizadores somente leitura | ||
fMD_ROM | O intervalo de memória especificado é somente leitura. | |
fMD_RAM | O intervalo de memória especificado não é somente leitura. | |
mMD_MemoryType | Bitmask para o bit dentro de MD_Flags que especifica o atributo somente leitura. | |
Sinalizadores somente gravação | ||
fMD_ReadDisallowed | O intervalo de memória especificado é somente gravação. | |
fMD_ReadAllowed | O intervalo de memória especificado não é somente gravação. | |
mMD_Readable | Bitmask para o bit dentro de MD_Flags que especifica o atributo somente gravação. | |
Sinalizadores de tamanho de endereço | ||
fMD_24 | Endereçamento de 24 bits (não usado). | |
fMD_32 | Endereçamento de 32 bits. | |
mMD_32_24 | Bitmask para o bit dentro de MD_Flags que especifica o tamanho do endereço. | |
Sinalizadores de pré-busca | ||
fMD_PrefetchAllowed | O intervalo de memória especificado pode ser pré-buscado. | |
fMD_PrefetchDisallowed | O intervalo de memória especificado não pode ser pré-buscado. | |
mMD_Prefetchable | Bitmask para o bit dentro de MD_Flags que especifica a capacidade de pré-busca. | |
Sinalizadores de cache | ||
fMD_Cacheable | O intervalo de memória especificado pode ser armazenado em cache. | |
fMD_NonCacheable | O intervalo de memória especificado não pode ser armazenado em cache. | |
mMD_Cacheable | Bitmask para o bit dentro de MD_Flags que especifica a capacidade de cache. | |
Sinalizadores de cache de gravação combinada | ||
fMD_CombinedWriteAllowed | O cache de gravação combinada é permitido. | |
fMD_CombinedWriteDisallowed | O cache de gravação combinada não é permitido. | |
mMD_CombinedWrite | Bitmask para o bit dentro de MD_Flags que especifica a capacidade de cache de combinação/gravação. |
MD_Reserved
Apenas para uso interno.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | cfgmgr32.h (inclua Cfgmgr32.h) |