IT 기술/CA & OS

인터럽트

gooooooood 2025. 5. 22. 11:36
반응형

1. 긴급 작업 우선 실행을 위한, 인터럽트의 개념

- 현재 실행 중인 작업을 일시 중단하고 긴급한 작업을 우선 처리하기 위해 CPU의 흐름을 전환하는 기능

 

2. 인터럽트의 종류와 우선순위 판별 방법

가. 인터럽트의 종류

구분 종류 설명
하드웨어 인터럽트 외부 인터럽트 - 외부 입출력장치 등에서 발생
- 키보드 입력, 네트워크 수신
내부 인터럽트 - CPU 내부에서 발생
- 산술 오버플로우, 잘못된 명령어
소프트웨어 인터럽트 시스템 콜 - 사용자 프로그램이 커널 서비스 요청
- 파일 읽기, 쓰기 요청
트랩 - 프로그램에 의도적으로 삽입된 인터럽트
- 예외 처리, 디버깅 목적
예외 인터럽트 고의/비정상 처리 - 프로그램 오류 또는 특수 조건
- 페이지 오류, 보호 오류

- 인터럽트의 발생 원인(HW/SW) 또는 위치(외부/내부) 기준으로 구분

 

 

나. 인터럽트 우선순위 판별 방법

우선순위 인터럽트 종류 설명
1 가장 높음 Non-Markable Interrupt (NMI) - 마스킹 불가능한 시스템 치명적 오류
- 전원 이상, 메모리 오류
2 Reset 인터럽트 - 시스템 리셋 요청 시 발생 인터럽트
- NMI와 동일하거나 바로 다음 순위
3 높은 우선순위 하드웨어 인터럽트 - 타이머, 디스크 컨트롤러 등 중요 장치에 의한 인터럽트
4 일반 하드웨어 인터럽트 - 키보드, 마우스 등 일반적 입출력 장치에 의한 인터럽트
5 소프트웨어 인터럽트 - 사용자 프로그램의 거널 기능 요청
- 파일 읽기, 파일 쓰기
- 예외 처리, 소프트웨어 디버깅
6 가장 낮음 내부 예외처리 - 0으로 나누기, 오버플로우 등 프로그램 내 오류 처리에 의한 인터럽

 

 

3. 인터럽트 처리과정

구분 과정 설명
인터럽트 감지 및 수신 인터럽트 발생 여러가지 요인에 의한 인터럽트 발생 후 CPU는 인터럽트 신호(IRQ) 감지
인터럽트 우선순위 판단 마스킹 여부와 우선순위 판단하여 처리 여부 결정, 처리 승인 시 현재 작업 중단
인터럽트 처리 준비 현재 작업 상태 저장 프로그램 카운터(PC), 레지스터 등 상태를 스택에 저장
인터럽트 벡터 참조 및 ISR 호출 벡터 테이블에서 해당 ISR 주소 찾아 인터럽트 서비스 루틴 호출
인터럽트 서비스 및 복귀 인터럽트 서비스 루틴(ISR) 실행 인터럽트에 대한 작업 수행
인터럽트 종료 및 상태 복원 EOI(End of Interrupt) 전송, 저장된 이전 작업 상태 복구
원래 작업 복귀 중단되었던 프로그램 실행 재시작
반응형

'IT 기술 > CA & OS' 카테고리의 다른 글

가상메모리  (0) 2025.05.22
멀티 GPU  (0) 2025.05.22
IPC (Inter Process Communication)  (0) 2025.05.22
프로세스 스레싱  (0) 2025.01.07
차세대 컴퓨팅  (0) 2024.12.17