Bagikan melalui


!irql

Ekstensi !irql menampilkan tingkat permintaan interupsi (IRQL) prosesor pada komputer target sebelum pemutusan debugger.

!irql [Processor] 

Parameter

Prosesor
Menentukan prosesor. Masukkan nomor prosesor. Jika parameter ini dihilangkan, debugger menampilkan IRQL prosesor saat ini.

DLL

Ekstensi !irql hanya tersedia di Windows Server 2003 dan versi Windows yang lebih baru.

Windows 2000

Tidak tersedia

Windows XP

Tidak tersedia

Windows Server 2003 dan yang lebih baru

Kdexts.dll

Informasi Tambahan

Untuk informasi tentang IRQL, lihat dokumentasi Windows Driver Kit (WDK) dan Microsoft Windows Internals oleh Mark Russinovich dan David Solomon.

Keterangan

Ketika komputer target masuk ke debugger, IRQL berubah, tetapi IRQL yang efektif tepat sebelum pemutusan debugger disimpan. Ekstensi !irql menampilkan IRQL yang disimpan.

Demikian pula, ketika pemeriksaan bug terjadi dan file crash dump dibuat, IRQL yang disimpan dalam file crash dump adalah yang segera sebelum pemeriksaan bug, bukan IRQL tempat rutinitas KeBugCheckEx dijalankan.

Dalam kedua kasus, IRQL saat ini dinaikkan ke DISPATCH_LEVEL, kecuali pada arsitektur x86. Dengan demikian, jika lebih dari satu peristiwa tersebut terjadi, IRQL yang ditampilkan juga akan DISPATCH_LEVEL, membuatnya tidak berguna untuk tujuan penelusuran kesalahan.

Ekstensi !pcr menampilkan IRQL saat ini pada semua versi Windows, tetapi IRQL saat ini biasanya tidak berguna. IRQL yang ada tepat sebelum pemeriksaan bug atau koneksi debugger lebih menarik, dan ini hanya ditampilkan dengan !irql.

Jika Anda menyediakan nomor prosesor yang tidak valid, atau ada kerusakan kernel, debugger menampilkan pesan "Tidak dapat mendapatkan alamat PRCB".

Berikut adalah contoh output dari ekstensi ini dari komputer x86 prosesor ganda:

kd> !irql 0
Debugger saved IRQL for processor 0x0 -- 28 (CLOCK2_LEVEL)

kd> !irql 1
Debugger saved IRQL for processor 0x1 -- 0 (LOW_LEVEL)

Jika debugger dalam mode verbose, deskripsi IRQL itu sendiri disertakan.

Arti dari nomor IRQL sering tergantung pada prosesor. Berikut adalah contoh dari prosesor x64. Perhatikan bahwa angka IRQL sama seperti dalam contoh sebelumnya, tetapi arti IRQL berbeda:

kd> !irql
Debugger saved IRQL for processor 0x0 -- 12 (SYNCH_LEVEL) [Synchronization level]