Bagikan melalui


Menampilkan dan Mengedit Memori di WinDbg (Klasik)

Di WinDbg, Anda dapat melihat dan mengedit memori dengan memasukkan perintah atau dengan menggunakan jendela Memori.

Jendela Perintah Debugger

Anda dapat melihat memori dengan memasukkan salah satu perintah Memori Tampilan di jendela Perintah Debugger. Anda dapat mengedit memori dengan memasukkan salah satu perintah Masukkan Nilai di jendela Perintah Debugger. Untuk informasi selengkapnya, lihat Mengakses Memori dengan Alamat Virtual dan Mengakses Memori dengan Alamat Fisik.

Membuka Jendela Memori

Untuk membuka jendela Memori, pilih Memori dari menu Tampilan . (Anda juga dapat menekan ALT+5 atau memilih tombol Memori (Cuplikan layar tombol Memori di WinDbg.

Cuplikan layar berikut menunjukkan contoh jendela Memori.

Cuplikan layar contoh jendela Memori di WinDbg.

Menggunakan Jendela Memori

Jendela Memori menampilkan data dalam beberapa kolom. Kolom di sisi kiri jendela memperlihatkan alamat awal setiap baris. Kolom yang tersisa menampilkan informasi yang diminta, dari kiri ke kanan. Jika Anda memilih Byte di menu Format tampilan , karakter ASCII yang sesuai dengan byte ini ditampilkan di sisi kanan jendela.

Catatan Secara default, jendela Memori menampilkan memori virtual. Jenis memori ini adalah satu-satunya jenis memori yang tersedia dalam mode pengguna. Dalam mode kernel, Anda dapat menggunakan kotak dialog Opsi Memori untuk menampilkan memori fisik dan ruang data lainnya. Kotak dialog Opsi Memori dijelaskan nanti dalam topik ini.

Di jendela Memori, Anda dapat melakukan hal berikut:

  • Untuk menulis ke memori, pilih di dalam jendela Memori dan ketik data baru. Anda hanya dapat mengedit data heksadesimal—Anda tidak dapat langsung mengedit karakter ASCII dan Unicode. Perubahan berlaku segera setelah Anda mengetik informasi baru.

  • Untuk melihat bagian memori lainnya, gunakan tombol Sebelumnya dan Berikutnya pada toolbar jendela Memori, atau tekan tombol PAGE UP atau PAGE DOWN. Tombol dan kunci ini menampilkan bagian memori sebelumnya atau berikut. Jika Anda meminta halaman yang tidak valid, pesan kesalahan akan muncul.

  • Untuk menavigasi di dalam jendela, gunakan tombol PANAH KANAN, PANAH KIRI, PANAH ATAS, dan PANAH BAWAH. Jika Anda menggunakan kunci ini untuk berpindah dari halaman, halaman baru akan ditampilkan. Sebelum Anda menggunakan kunci ini, Anda harus mengubah ukuran jendela Memori sehingga tidak memiliki bilah gulir. Ukuran ini memungkinkan Anda membedakan antara tepi halaman aktual dan cutoff jendela.

  • Untuk mengubah lokasi memori yang sedang dilihat, masukkan alamat baru ke dalam kotak alamat di bagian atas jendela Memori. Perhatikan bahwa jendela Memori me-refresh tampilannya saat Anda memasukkan alamat, sehingga Anda bisa mendapatkan pesan kesalahan sebelum Anda selesai mengetik alamat.

    Catatan Alamat yang Anda masukkan ke dalam kotak ditafsirkan dalam radiks saat ini. Jika radiks saat ini bukan 16, Anda harus mengawali alamat heksadesimal dengan 0x. Untuk mengubah radix default, gunakan perintah n (Atur Basis Angka) di jendela Perintah Debugger. Tampilan dalam jendela Memori itu sendiri tidak terpengaruh oleh radix saat ini.

  • Untuk mengubah tipe data yang digunakan jendela untuk menampilkan memori, gunakan menu Format tampilan di toolbar jendela Memori. Jenis data yang didukung mencakup kata-kata pendek, kata ganda, dan kata quad; bilangan bulat pendek, panjang, dan quad serta bilangan bulat yang tidak ditandatangani; Angka riil 10-byte, 16-byte, 32-bit, dan 64-bit; Karakter ASCII; Karakter Unicode; dan byte heksadesimal. Tampilan byte heksadesimal juga mencakup karakter ASCII.

Jendela Memori memiliki toolbar yang berisi dua tombol, menu, dan kotak dan memiliki menu pintasan dengan perintah tambahan. Untuk mengakses menu, pilih dan tahan (atau klik kanan) bilah judul atau pilih ikon di dekat sudut kanan atas jendela pada toolbar. ALT+SHIFT+5 menutup jendela Memori aktif.

  • (Hanya bilah alat) Kotak alamat memungkinkan Anda menentukan alamat atau offset baru. Arti pasti dari kotak ini tergantung pada jenis memori yang Anda lihat. Misalnya, jika Anda melihat memori virtual, kotak memungkinkan Anda menentukan alamat virtual atau offset baru.

  • (Hanya bilah alat) Format tampilan memungkinkan Anda memilih format tampilan baru.

  • (Bilah alat dan menu) Sebelumnya (pada toolbar) dan Halaman sebelumnya (pada menu pintasan) menyebabkan bagian memori sebelumnya ditampilkan.

  • (Bilah alat dan menu) Berikutnya (pada toolbar) dan halaman Berikutnya (pada menu pintasan) menyebabkan bagian memori berikutnya ditampilkan.

  • (Hanya menu) Bilah alat mengaktifkan dan menonaktifkan bilah alat.

  • (Hanya menu) Paskan kolom secara otomatis memastikan bahwa jumlah kolom yang ditampilkan di jendela Memori sesuai dengan lebar jendela Memori.

  • (Hanya menu) Dock atau Undock menyebabkan jendela masuk atau meninggalkan status dock.

  • (Hanya menu) Pindah ke dok baru menutup jendela Memori dan membukanya di dock baru.

  • (Hanya menu) Tetapkan sebagai target tab-dock untuk jenis jendela menetapkan jendela Memori yang dipilih sebagai target tab-dock untuk jendela Memori lainnya. Semua jendela Memori yang dibuka setelah dipilih sebagai target tab-dock secara otomatis dikelompokkan dengan jendela tersebut dalam koleksi bertab.

  • (Hanya menu) Selalu mengambang menyebabkan jendela tetap tidak berlabuh meskipun diseret ke lokasi docking.

  • (Hanya menu) Pemindahan dengan bingkai menyebabkan jendela bergerak saat bingkai WinDbg dipindahkan, meskipun jendela tidak ditambatkan.

  • (Hanya menu) Properti membuka kotak dialog Opsi Memori , yang dijelaskan di bagian berikut dalam topik ini.

  • (Hanya menu) Bantuan membuka topik ini dalam dokumentasi Alat Penelusuran Kesalahan untuk Windows.

  • (Hanya menu) Tutup jendela ini.

Kotak Dialog Opsi Memori

Saat Anda memilih Properti pada menu pintasan, kotak dialog Opsi Memori muncul.

Dalam mode kernel, ada enam jenis memori yang tersedia sebagai tab dalam kotak dialog ini: Memori Virtual, Memori Fisik, Data Bus, Data Kontrol, I/O (informasi port I/O), dan MSR (informasi register khusus model). Pilih tab yang sesuai dengan informasi yang ingin Anda akses.

Dalam mode pengguna, hanya tab Memori Virtual yang tersedia.

Setiap tab memungkinkan Anda menentukan memori yang ingin Anda tampilkan:

  • Di tab Memori Virtual , dalam kotak Offset , tentukan alamat atau offset awal rentang memori yang ingin Anda lihat.

  • Di tab Memori Fisik , dalam kotak Offset , tentukan alamat fisik awal rentang memori yang ingin Anda lihat. Jendela Memori hanya dapat menampilkan memori fisik yang dijelaskan dan dapat di-cache. Jika Anda ingin menampilkan memori fisik yang memiliki atribut lain, gunakan perintah d* (Memori Tampilan) atau ekstensi !d\* .

  • Di tab Data Bus , di menu Jenis Data Bus , tentukan jenis data bus. Kemudian, gunakan kotak Nomor bus, Nomor slot, dan Offset untuk menentukan data bus yang ingin Anda lihat.

  • Di tab Data Kontrol , gunakan kotak teks Prosesor dan Offset untuk menentukan data kontrol yang ingin Anda lihat.

  • Di tab I/O , di menu Jenis Antarmuka , tentukan jenis antarmuka I/O. Gunakan kotak Nomor bus, Ruang alamat, dan Offset untuk menentukan data yang ingin Anda lihat.

  • Di tab MSR , dalam kotak MSR , tentukan register khusus model yang ingin Anda lihat.

Setiap tab juga menyertakan menu Format tampilan . Menu ini memiliki efek yang sama dengan menu Format tampilan di jendela Memori.

Pilih OK dalam kotak dialog Opsi Memori untuk menyebabkan perubahan Anda berlaku.

Informasi Tambahan

Untuk informasi selengkapnya tentang manipulasi memori dan deskripsi perintah terkait memori lainnya, lihat Membaca dan Menulis Memori.