인터럽트
프로그램을 실행하는 도중에 예기치 않은 상황이 발생하여 현재 실행중인 작업을 즉시 중단하고, 발생된 상황을 우선 처리한 후 실행 중이던 작업으로 복귀하여 기존에 작업을 계속 처리하는 것
인터럽트 종류
CPU 하드웨어 신호에 의해 외부/내부 인터럽트로 나뉜다.
1. 외부 인터럽트
외부적인 요인에 의해 발생되는 현상, 주로 입출력 장치에 의해 발생된다.
가. 입출력 장치
나. 타이밍 장치
2. 내부 인터럽트
컴퓨터 내부에서 잘못된 명령어나 데이터를 사용할 떄 발생
가. 하드웨어 고장
- 컴퓨터 고장
- 데이터 전달 과정에서의 비트 오류
- 전원이 나간 경우
나. 실행할 수 없는 명령어
- 기억장치에서 인출한 명령어의 비트 패턴이 정의되어 있지 않은 경우
다. 명령어 실행 오류
라. 사용 권한 위배
- 사용자가 운영체제만 사용할 수 있는 자원에 접근하는 경우
인터럽트 처리 과정
루틴: 반복적으로 수행하는 일을 의미한다.
인터럽트 루틴: 어떤 소스가 인터럽트 요청을 하면 반복적으로 수행하던 일, 즉 서비스 루틴에 대한 정보를 모아놓은 영역을 찾아보고, 알맞은 방법으로 처리를 한다.
<참고자료>
https://www.youtube.com/watch?v=EdTtGv9w2sA&list=PLBrGAFAIyf5rby7QylRc6JxU5lzQ9c4tN
<Computer structures> chapter 9, Context Switch end>
'CS(Computer science) > 컴퓨터 구조&운영체제' 카테고리의 다른 글
기억장치 (0) | 2020.01.14 |
---|---|
폰 노이만 구조 vs 하버드 구조 (0) | 2020.01.11 |
Context Switch (0) | 2020.01.06 |
스레드 (0) | 2020.01.06 |
프로세스 스케줄링 (0) | 2020.01.06 |