개발스토리

인터럽트(interrupt) 본문

Computer Science/운영체제

인터럽트(interrupt)

무루뭉 2020. 6. 30. 15:23

인터럽트는 운영체제 내부에서 상당히 중요한 개념이다!! 잘 봐두도록 하자!

 

인터럽트가 무엇일까? 

-> CPU에게 어떤 사건이 발생했음을 알리는 것이다. 

-> CPU가 처리할 인터럽트가 정해져 있다.(보통 수십~수백 개)

인터럽트의 유형에는 어떤 것들이 있을까?

1. 하드웨어 인터럽트

- 입출력 장치에서 입출력의 종류를 알린다.

- 타이머 장치에서 주기적으로 알린다.

2. 소프트웨어 인터럽트(trap)

- 프로그램 오류 ex) 0으로 나누기, 잘못된 주소 참조 등

- 사용자(프로그램)의 서비스 요청: 시스템 호출(system call)

인터럽트가 발생하면, cpu는 현재 수행하던 일을 중단하고 인터럽트 서비스 루틴(인터럽트를 처리하는 코드)을 수행한다.

- 현재 수행하던 일을 중단한다는 것에 유의하자.

- 인터럽트 서비스 루틴(Interrupt Service Routine): 운영체제 내부의 코드로 cpu마다 처리해야 할 루틴 방법이 다르다.

즉, 인터럽트 발생의 의미는 운영체제가 수행된다는 것이다.

why? 인터럽트가 발생하면 인터럽트 서비스 루틴이 수행되는데 인터럽트 서비스 루틴이 운영체제에서 수행되기 때문이다.

'Computer Science > 운영체제' 카테고리의 다른 글

인터럽트 처리 과정  (0) 2020.06.30
인터럽트 벡터  (0) 2020.06.30
캐싱(Caching)  (0) 2020.06.30
저장장치  (0) 2020.06.30
메모리  (0) 2020.06.30
Comments