Вобщем есть: Код (Text): 93: 821d5264 i8042prt!I8042KeyboardInterruptService (KINTERRUPT 821d5228) kd> dt nt!_kinterrupt 821d5228 nt!_KINTERRUPT +0x000 Type : 22 +0x002 Size : 484 +0x004 InterruptListEntry : _LIST_ENTRY [ 0x821d522c - 0x821d522c ] +0x00c ServiceRoutine : 0xf7d62495 i8042prt!I8042KeyboardInterruptServi ce+0 +0x010 ServiceContext : 0x8207b498 +0x014 SpinLock : 0 +0x018 TickCount : 0xffffffff +0x01c ActualLock : 0x8207b558 -> 0 +0x020 DispatchAddress : 0x804dad62 nt!KiInterruptDispatch+0 +0x024 Vector : 0x193 +0x028 Irql : 0x8 '' +0x029 SynchronizeIrql : 0x9 '' +0x02a FloatingSave : 0 '' +0x02b Connected : 0x1 '' +0x02c Number : 0 '' +0x02d ShareVector : 0 '' +0x030 Mode : 1 ( Latched ) +0x034 ServiceCount : 0 +0x038 DispatchCount : 0xffffffff +0x03c DispatchCode : [106] 0x56535554 Если бы не команда !idt, я бы и не глянул объект прерывания. Можно ли как нить вручную?
Судя по исходникам ReactOS функции типа KeConnectInterrupt часто обращаются к указателю на переменную типа IsrTable. Она вроде бы как не паблик и ее не получается вытащить с помощью extern, но зато наверное можно, если сильно нужно, ее вытащить прямо из тела какой-нибудь функции из ntoskrnl.exe типа KeConnectInterrupt. Но это если и будет работать, то только для конкретных SP...