반응형
Ⅰ. 예외 상황 우선처리, 인터럽트의 개요
가. 인터럽트의 개념
- 예외 상황 발생 시 진행중인 작업을 정지하고 정의된 절차를 수행하기 위한 운영체제의 제어 프로세스
나. 인터럽트의 발생 원인 및 우선순위
원인 | 우선순위 | 설명 |
주변장치 인터럽트 | 높음 | - 시스템 오류, 입출력(I/O) 요청 - 전원 이상 등의 인터럽트 |
프로세스 오류 | 중간 | - CPU 연산시 Page Fault, Device Zero, Overflow 등 예외 발생 |
프로그램 요청 | 낮음 | - 프로그램의 시스템 콜을 이용한 인터럽트 요청 |
Ⅱ. 운영체제의 인터럽트 동작 절차 및 구성 요소
구성 요소 | 동작 절차 | 설명 |
인터럽트 벡터 테이블 | 인터럽트 발생 | - 요청 신호 모니터링 및 검출 |
인터럽트 벡터 조회 | - 인터럽트 ID 조회 후 대응하는 인터럽트 서비스 루틴으로 분기 | |
인터럽트 서비스 루틴 | 인터럽트 금지 | - 인터럽트 처리 루틴 진입 후 상호 배제 (Lock) |
프로세스 상태 저장 | - 이전 프로세스 정보 저장 (Context Switching) | |
인터럽트 처리 | - 인터럽트 요청 작업 수행 | |
프로세스 상태 복구 | - 이전 프로세스 정보 복구 (Context Switching) | |
인터럽트 허용 | - 상호배제 자원 반납 (Unlock), 인터럽트 루틴 종료 |
- 인터럽트 발생 시 인터럽트 벡터 테이블 조회/분기, 처리루틴 수행, 복귀 3단계 절차로 동작
Ⅲ. 인터럽트의 종류
구분 | 종류 | 설명 |
H/W 인터럽트 | 외부 인터럽트 | - 주변 장치에 의해 발생 - 전원 이상, 데이터 처리, Wakeup 등 |
내부 인터럽트 | - 프로세서의 연산 처리 중 발생 - Cache miss, Zero Divide, Overflow 등 |
|
S/W 인터럽트 | SVC(SuperVisor Call) 인터럽트 |
- 프로그램의 시스템 콜 요청시 발생 - 메모리 할당/해제, 자원 요청/반납 등 |
- 외부 > 내부 > SVC 인터럽트 순으로 높은 우선 순위 부여
반응형
'IT 기술 > CA & OS' 카테고리의 다른 글
RAID(Redundant Array of Inexpensive Disks) (0) | 2024.12.17 |
---|---|
워치독 타이머 (0) | 2024.12.17 |
세마포어, 모니터 (0) | 2024.12.17 |
파이프라인 해저드 (0) | 2024.12.17 |
CPU 주소 지정 방식 (0) | 2024.12.17 |