[CS] 인터럽트의 종류와 처리과정
인터럽트 인터럽트는 어떤 신호가 들어왔을 때 CPU를 잠깐 정지시키는 것을 말합니다. 언제 인터럽트가 발생하냐? 주로 프로그램 실행 중, 입출력 하드웨어 등 장치에서 예외상황이 발생하여 처리가 필요한 경우 인터럽트가 발생합니다. 0으로 숫자를 나누는 산술 연산 오류라던지, 프로세스에서 오류가 발생하는 경우 등 인터럽트를 왜 발생시키는데? 예를 들어 프로그램에게 아주 오래걸리는 입출력 연산을 수행하라고 지시한다고 가정해 봅시다. CPU에서 지시받은 연산을 수행하기 위해 명령어를 순차적으로 실행하는 과정 중 오류가 발생했을 때, CPU가 다른일을 처리하지 않고 오류를 계속 붙잡고 있게 되면 효율이 낮아지겠죠? 이와 같은 상황을 방지하기 위해 어떤 오류가 발생하면 오류에 맞는 인터럽트를 발생시켜 '인터럽트 핸..