임계구역 진입 전 차단
현재 CPU에서 interrupt handler나 선점이 들어오지 않게 막아 작은 커널 자료구조를 보호합니다.
disable인터럽트를 끄면 현재 CPU에서 스케줄러나 인터럽트 핸들러가 중간에 끼어드는 것을 막을 수 있습니다. 그러나 멀티코어의 다른 CPU 실행은 막지 못하고, 오래 끄면 시스템 응답성이 크게 나빠집니다.
현재 CPU에서 interrupt handler나 선점이 들어오지 않게 막아 작은 커널 자료구조를 보호합니다.
disable인터럽트가 오래 막히면 타이머, I/O, 스케줄링 응답이 지연됩니다.
latency다른 CPU는 계속 실행되므로 공유 자료구조 보호에는 spinlock 같은 추가 장치가 필요합니다.
SMP중첩 disable이나 오류 경로에서도 이전 interrupt 상태를 정확히 복구해야 합니다.
restore