본문 바로가기
컴퓨터공학기초 개념/운영체제

11. 인터럽트의 종류

by devraphy 2021. 4. 7.

 

1. 대표적인 interrupt의 종류 

a) 프로그램 또는 코드상의 예외 발생으로 인한 interrupt

 

C언어로 작성된 코드

 

  • 위의 코드를 보면 인터럽트가 발생하는 부분은 1을 0으로 나누는 부분이다. 
  • 0으로 1을 나눌 수 없기 때문에, 이부분에서 에러가 발생한다.
  • 인터럽트를 통해 예외가 발생했음을 운영체제(OS)에게 알리고 이를 알맞게 처리하게 된다. 

 

 

b) 타이머 interrupt

- 선점형 스케줄러 또는 시분할 시스템을 사용한다면 일정 시간마다 interrupt를 발생시켜 OS에게 알린다. 

 

 

c) 입출력(I/O) 장치 사용을 위한 interrupt

  • 프로그램 실행 중 기타 장치 사용을 위해 발생되는 인터럽트를 말한다. 
  • 프린터, 키보드, 마우스, 저장매체 등이 존재한다. 

2. Interrupt 구분

 

a) 내부 interrupt (= software interrupt)

  • 주로 소프트웨어 내부에서 발생하는 오류 또는 예외가 발생하는 경우를 말한다.
  • 잘못된 명령(코드) 또는 계산오류(계산결과의 표현범위 초과 = overflow / underflow)
  • 권한에 따른 접근불가 또는 사용불가 명령어를 사용했을 때

 

b) 외부 interrupt (= hardware interrupt)

  • 주로 하드웨어에서 발생하는 이벤트(프로그램 외부)
  • 전원 이상 또는 기계 문제

댓글