Acesso à memória WdbgExts
Este tópico fornece uma breve visão geral de como o acesso à memória pode ser executado usando a API WdbgExts. Para obter uma visão geral do acesso à memória no mecanismo de depurador, consulte Memória na seção Visão geral do Mecanismo de Depurador desta documentação.
Memória Virtual
A memória virtual do destino pode ser lida usando a função ReadMemory e gravada usando a função WriteMemory . Os ponteiros na memória do destino podem ser lidos e gravados usando as funções ReadPointer, ReadPtr e WritePointer .
Para pesquisar na memória virtual um padrão de bytes, use a função SearchMemory .
A função TranslateVirtualToPhysical pode ser usada para converter um endereço de memória virtual em um endereço de memória física.
A função Disasm pode ser usada para desmontar uma única instrução de assembly no destino.
Para marcar os 4 GB baixos de memória para corrupção ao usar a PAE (extensão de endereço físico), use a operação IoctlIG_LOWMEM_CHECK.
Memória física
A memória física só pode ser acessada diretamente na depuração no modo kernel.
A memória física no destino pode ser lida usando as funções ReadPhysical e ReadPhysicalWithFlags e escrita usando as funções WritePhysical e WritePhysicalWithFlags .
Para pesquisar na memória física ponteiros para locais dentro de um intervalo especificado, use a operação IoctlIG_POINTER_SEARCH_PHYSICAL.
Outros Espaços de Dados
Na depuração no modo kernel, é possível ler e gravar dados em uma variedade de espaços de dados, além da memória main. Os seguintes espaços de dados podem ser acessados:
Memória de espaço de controle
As funções ReadControlSpace, ReadControlSpace64, ReadTypedControlSpace32 e ReadTypedControlSpace64 lerão dados de um espaço de controle. A função WriteControlSpace gravará dados em um espaço de controle.
Memória de E/S
As funções ReadIoSpace, ReadIoSpace64, ReadIoSpace64, ReadIoSpaceEx64 lerão dados da memória de E/S do sistema e da memória de E/S do barramento. As funções WriteIoSpace, WriteIoSpace64, WriteIoSpaceEx e WriteIoSpaceEx64 gravarão dados na memória de E/S do sistema e na memória de E/S do barramento.
MSR (Registro Específico do Modelo)
As funções ReadMsr e WriteMsr leem e gravam MSRs.
Barramento do Sistema
As operações do IoctlIG_GET_BUS_DATA e IG_SET_BUS_DATA ler e gravar dados do barramento do sistema.
Informações adicionais
Para obter uma API de acesso à memória mais avançada, consulte Acesso à memória na seção Usando a API do Mecanismo de Depurador desta documentação.