IRQL(Windows)

IRQL (Windows)

IRQL(Interrupt Request Level)은 하드웨어에 의존하지 않는 방법으로 Windows가 시스템 프로세서에서 발생하는 인터럽트를 우선시하는 방법입니다.Windows 가 동작하는 프로세서 아키텍처에서는 하드웨어가 인터럽트 컨트롤러에 송신되는 신호를 생성합니다.인터럽트 컨트롤러는 인터럽트 요구(또는 IRQ)를 특정 priority 레벨의 CPU로 송신하고 CPU가 인터럽트 컨트롤러에 제어를 해방할 때까지 낮은 priority의 다른 인터럽트를 보류 상태로 하는 마스크를 설정합니다.신호가 높은 priority로 착신하면 현재의 인터럽트는 보류 상태가 됩니다.CPU는 인터럽트 마스크를 priority로 설정하고 낮은 priority의 인터럽트를 새로운 priority의 [1]인터럽트 처리가 완료될 때까지 보류 상태로 합니다.

Windows는 하드웨어 인터럽트 수준을 내부 인터럽트 테이블에 매핑할 뿐만 아니라 소프트웨어 인터럽트도 매핑합니다.이 표의 매핑은 Interrupt Request Levels(IRQL; 인터럽트 요구 레벨)라고 불리며 멀티프로세서 시스템의 각 프로세서에 대해 개별 IRQL이 유지됩니다.IRQL 값은 Windows를 실행할 수 있는 x86, IA64AMD64 프로세서 아키텍처에 고유하지만 이론적으로는 유사한 인터럽트 방식을 사용하는 다른 CPU(예: 초기 버전의 Windows에서 잠깐 지원되었던 DEC Alpha 및 MIPS)를 지원할 수 있습니다.이는 기본적으로 APC(비동기 프로시저 호출), 사용자 스레드 및 커널 모드 동작이 중단될 수 있으며, 시스템은 스레드 스케줄러(또는 "디스패처")[2]보다 낮은 IRQL로 실행해야 한다는 것을 의미합니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Russinovich, Mark (October 31, 1997), "Inside NT's Interrupt Handling", Windows IT Pro, Penton Media, archived from the original on September 13, 2016, retrieved April 26, 2016
  2. ^ Scheduling, Thread Context, and IRQL, Microsoft, April 26, 2016, pp. 6–7, archived from the original on October 22, 2016, retrieved April 26, 2016