-
3.인터럽트(Interrupt)Computer Science/Operating System 2021. 8. 17. 15:52
∙인터럽트
∘프로그램 실행 도중 예기치 않은 상황 발생 시 실행 중 작업을 중단하고 발생 상황을 처리 한 후
실행 중이던 작업으로 복귀하여 계속 진행하는 것
➀외부 인터럽트: 입출력 장치, 전원 등 외부적인 요인으로 발생
➁내부 인터럽트: 잘못된 명령이나 데이터를 사용할 때 발생(Trap)
➂소프트웨어 인터럽트: 더 우선순위가 높은 명령을 요청 받을 때 발생
∙인터럽트 처리 과정
∘현재 수행 중인 프로그램을 멈추고, 상태 레지스터와 PC 등을 스택에 잠시 저장 하고
인터럽트 서비스 루틴으로 간다.
서비스 루틴이 끝나고 스택에 잠시 저장했던 정보를 불러와 다시 수행한다.
-수행 중인 정보를 스택에 임시 저장하기 위해 하드웨어의 지원을 받아야 한다.
-폴링 방식에 비해 신속하게 대응 할 수 있다.
-발생 시기를 예측하기 힘든 경우 컨트롤러가 가장 빠르게 대응할 수 있는 방법이다.
-MCU(Micro Controller Unit)이 하드웨어적인 변화를 체크하여 변화 시에만 동작한다.∙폴링 방식
∘컨트롤러가 어떤 일을 할 시기를 알기 위해 계속 체크하는 방식
-하드웨어의 지원이 필요 없다.
-인터럽트 방식에 비해 처리 속도가 느리다.출처
'Computer Science > Operating System' 카테고리의 다른 글
6.IPC(Inter Process Communication) (0) 2021.08.20 5.PCB(Process Control Block), Context Switcing (0) 2021.08.19 4.시스템 콜(System Call) (0) 2021.08.18 2.프로세스(Process), 스레드(Thread) (0) 2021.08.16 1.운영체제(OS)(Operating System) (0) 2021.08.16