Как найти векторы прерываний, используемые моим ноутбуком?

1068
user422171

Я использую ноутбук Windows 7 от Dell. Я пытаюсь найти количество прерываний и векторов прерываний, используемых моей системой. Я попытался с помощью диспетчера устройств, но мне удалось найти прерывания и уровни прерываний, но нет векторов прерываний.

Может кто-нибудь объяснить, как работает обработка прерываний в Windows? И как я могу узнать, сколько прерываний поддерживается моей системой в этих векторах?

Заранее спасибо.

0

1 ответ на вопрос

2
Foosh

Interrupt vectors are a function of the processor, not the OS, and are architecture specific (you can see the x86 implementation Interrupt Descriptor Table). Windows has specifically prevented program access to the vectors since Windows Server 2003 for x64 systems and attempting to use them will generate a bug check with the stop code 0x109 and shut down the system.

As to the actual handling of interrupts, that is handled in device specific code (drivers). The documentation of which can be found here. The general gist of it is that the hardware generates a DIRQL which is then handled by the corresponding driver's interrupt service routine, implemented as an EvtInterruptIsr callback function.