본문 바로가기
📗 공부 : study/혼자 공부하는 컴퓨터 구조 + 운영체제

11. 명령어 사이클과 인터럽트

by 예옹이 2026. 1. 19.

명령어 사이클

프로그램 속 명령어들은 일정한 주기가 반복되면서 실행하는데 이 주기를 말함

 

 

인출 사이클 : 메모리에 정보를 CPU로 가져온다

 

 

 

실행 사이클 : 가져온 정보를 실행

 

 

= 일반적으로 ‘인출’ - ‘실행’ - ‘인출’ - ‘실행’ .. 을 반복

 

 

 

간접 사이클을 거치는 사이클이 존재하기도 한다.

 

 

정해진 흐름을 방해해, 인터럽트가 발생하기도 한다.

When? CPU가 얼른 처리해야 할 다른 작업이 생겼을 때 발생

 

 


인터럽트 종류


동기 인터럽트

 

When? CPU가 예기치 못한 상황을 접했을 때

(ex. 디버깅, 데이터가 없을 때, 실행할 수 없는 명령어가 있을 때)

동기 인터럽트 종류

 


 

비동기 인터럽트

When? 입출력장치 도중에 효율적으로 명령어를 처리하고자 발생

(ex. 알림)

 

 

1. 인터럽트 요청 신호

 

2. 인터럽트 플래그

: 0과 1로 표현 (수락 O/X)

아주 긴급한 인터럽트는 플래그로 못막기도 한다

 

3. 인터럽트 서비스 루틴

: 인터럽트가 발생했을 때 해당 인터럽트를 어떻게 처리하는게 맞는지 적힌 프로그램

얘도 프로그램이니까 메모리에 저장되어 있다 (ex. 키보드 인터럽트 루틴, 마우스 인터럽트 루틴, .. )

 

 

4. 인터럽트 벡터

: 각각의 인터럽트를 구분하기 위한 정보