다음을 통해 공유


기타 데이터 공간

커널 모드 디버깅에서는 기본 메모리 및 레지스터 외에도 다양한 데이터 공간에 데이터를 읽고 쓸 수 있습니다. 다음 데이터 공간에 액세스할 수 있습니다.

System Bus
ReadBusDataWriteBusData 메서드는 시스템 버스 데이터를 읽고 씁니다.

제어 공간 메모리
ReadControlWriteControl 읽기 및 쓰기 제어 공간 메모리 메서드입니다.

I/O 메모리.
ReadIoWriteIo 읽기 및 쓰기 시스템 및 버스 I/O 메모리 메서드입니다.

MSR(모델별 레지스터)
ReadMsrWriteMsr 메서드는 특정 CPU 모델에 대해 기능을 사용하거나 사용하지 않도록 설정하고 디버깅을 지원하는 컨트롤 레지스터인 MSR을 읽고 씁니다.

처리

사용자 모드 디버깅에서는 대상 프로세스에서 소유한 시스템 핸들을 사용하여 시스템 개체에 대한 정보를 얻을 수 있습니다. ReadHandleData 메서드를 사용하여 이 정보를 읽을 수 있습니다.

스레드 및 프로세스 시스템 개체에 대한 시스템 핸들은 GetCurrentThreadHandleGetCurrentProcessHandle 메서드를 사용하여 가져올 수 있습니다. 이러한 핸들은 create-thread 및 create-process 디버깅 이벤트가 발생할 때 IDebugEventCallbacks::CreateThreadIDebugEventCallbacks::CreateProcess 콜백 메서드에도 제공됩니다.

참고 커널 모드에서 프로세스 및 스레드 핸들은 인공 핸들입니다. 시스템 핸들이 아닙니다.