티스토리 뷰
이 포스팅은 공부 정리 용도로 작성된 포스팅이므로 다른 블로그,사이트에서 인용한 글이 많습니다.
인터럽트란. CPU가 프로그램을 실행 하고 있을 때, 입출력 장치나 예외 상황이 발생하여 처리가 필요할 경우에 CPU에게 알려 그 상황을 처리 할 수 있도록 하는 것을 말한다.
다른 방식으로는 폴링이 존재하는데 폴링은 대상을 확인하여서 상황이 발생하면 해당 처리 루틴을 실행하는 형식이다. 따라서 폴링이 수행되는 동안은 다른 장치 관리가 힘드므로 CPU의 자원이 낭비가 된다.
CPU는 인터럽트를 감지하면 현재 실행중인 기계어 코드를 중단하고 해당 인터럽트 처리 프로그램으로 점프하여 해당일을 처리하며 인터럽트 처리를 위한 루틴을 인터럽트 서비스 루틴(ISR,Interrupt Service Routine)이라고 한다.
인터럽트가 발생되면 해당 서비스 루틴이 실행 되어야 하는데, 현재 실행 중인 프로그램에 영향이 가지 않도록 하기 위해 ISR 에서 레지스터를 스택으로 대피(푸시) 하고 해당 서비스 루틴을 실행한다.
인터럽트 처리 방법
'OS' 카테고리의 다른 글
부팅순서 (0) | 2017.02.20 |
---|---|
FAT 시스템과 NTFS시스템 (0) | 2017.02.18 |
POSIX란 무엇인가. (0) | 2017.02.11 |
IPC(Inter-Process Communication) 이란 (0) | 2017.02.11 |
문맥 교환(Context Switching) (0) | 2017.02.09 |
댓글