.context (Atur Konteks Alamat Mode Pengguna)
Perintah .context menentukan direktori halaman proses mana yang akan digunakan untuk konteks alamat mode pengguna, atau menampilkan konteks alamat mode pengguna saat ini.
.context [PageDirectoryBase]
Parameter
PageDirectoryBase
Menentukan alamat dasar untuk direktori halaman dari proses yang diinginkan. Konteks alamat mode pengguna akan diatur ke direktori halaman ini. Jika PageDirectoryBase nol, konteks alamat mode pengguna akan diatur ke direktori halaman untuk status sistem saat ini. Jika PageDirectoryBase dihilangkan, konteks alamat mode pengguna saat ini ditampilkan.
Lingkungan
Item | Deskripsi |
---|---|
Mode | mode kernel saja |
Target | live, crash dump |
Platform | all |
Informasi Tambahan
Untuk informasi selengkapnya tentang konteks alamat mode pengguna dan pengaturan konteks lainnya, lihat Mengubah Konteks.
Keterangan
Umumnya, ketika Anda melakukan penelusuran kesalahan kernel, satu-satunya ruang alamat mode pengguna yang terlihat adalah yang terkait dengan proses saat ini.
Perintah .context menginstruksikan debugger kernel untuk menggunakan direktori halaman yang ditentukan sebagai konteks alamat mode pengguna. Setelah perintah ini dijalankan, debugger akan memiliki akses ke ruang alamat virtual ini. Tabel halaman untuk ruang alamat ini akan digunakan untuk menginterpretasikan semua alamat memori mode pengguna. Ini memungkinkan Anda untuk membaca dan menulis ke memori ini.
Perintah .process (Atur Konteks Proses) memiliki efek yang sama. Namun, perintah .context mengatur konteks alamat mode pengguna ke direktori halaman tertentu, sementara perintah .process mengatur konteks proses ke proses tertentu. Pada prosesor x86, kedua perintah ini pada dasarnya memiliki efek yang sama. Lihat Konteks Proses untuk detail selengkapnya.
Jika Anda melakukan penelusuran kesalahan langsung, Anda harus mengeluarkan perintah .cache forcedecodeuser selain perintah .context. Ini memaksa debugger untuk mencari alamat fisik ruang memori yang diperlukan. (Ini bisa lambat, karena sering berarti sejumlah besar data harus ditransfer di seluruh kabel debug.)
Jika Anda melakukan debugging crash dump, perintah .cache tidak diperlukan. Namun, Anda tidak akan memiliki akses ke bagian mana pun dari ruang alamat virtual dari proses mode pengguna yang di-paged ke disk ketika crash terjadi.
Berikut adalah contohnya. Gunakan ekstensi !process untuk menemukan basis direktori untuk proses yang diinginkan:
kd> !process 0 0
**** NT ACTIVE PROCESS DUMP ****
PROCESS fe5039e0 SessionId: 0 Cid: 0008 Peb: 00000000 ParentCid: 0000
DirBase: 00030000 ObjectTable: fe529b68 TableSize: 50.
Image: System
...
PROCESS fe3c0d60 SessionId: 0 Cid: 0208 Peb: 7ffdf000 ParentCid: 00d4
DirBase: 0011f000 ObjectTable: fe3d0f48 TableSize: 30.
Image: regsvc.exe
Sekarang gunakan perintah .context dengan basis direktori halaman ini.
kd> .context 0011f000
Ini memungkinkan Anda memeriksa ruang alamat dengan berbagai cara. Misalnya, berikut adalah output dari ekstensi !peb :
kd> !peb
PEB at 7FFDF000
InheritedAddressSpace: No
ReadImageFileExecOptions: No
BeingDebugged: No
ImageBaseAddress: 01000000
Ldr.Initialized: Yes
Ldr.InInitializationOrderModuleList: 71f40 . 77f68
Ldr.InLoadOrderModuleList: 71ec0 . 77f58
Ldr.InMemoryOrderModuleList: 71ec8 . 77f60
01000000 C:\WINNT\system32\regsvc.exe
77F80000 C:\WINNT\System32\ntdll.dll
77DB0000 C:\WINNT\system32\ADVAPI32.dll
77E80000 C:\WINNT\system32\KERNEL32.DLL
77D40000 C:\WINNT\system32\RPCRT4.DLL
77BE0000 C:\WINNT\system32\secur32.dll
SubSystemData: 0
ProcessHeap: 70000
ProcessParameters: 20000
WindowTitle: "'C:\WINNT\system32\regsvc.exe'"
ImageFile: 'C:\WINNT\system32\regsvc.exe'
CommandLine: 'C:\WINNT\system32\regsvc.exe'
DllPath: 'C:\WINNT\system32;.;C:\WINNT\System32;C:\WINNT\system;C:\WINNT;C:\WINNT\system32;C:\WINNT;C:\WINNT\System32\Wbem;C:\PROGRA~1\COMMON~1\AUTODE~1'
Environment: 0x10000
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk