[OS] 인터럽트 - 정의, 종류, 처리 예

2020. 12. 20. 13:27프로그래밍/운영체제

반응형

Interrupt


• 인터럽트란?

   CPU가 프로그램을 실행하고 있을 때, 입출력 하드웨어 등의 장치나 또는 예외상황이 발생하여 처리가

  필요할 경우에 CPU에 알려서 처리하는 기술 (일종의 이벤트)


• 인터럽트 종류 

    ◦내부 인터럽트 (=SW인터럽트) 
        ‣ 주로 프로그램 내부에서의 예외상황 

          - 0으로 나눴을 때

          - Overflow/Underflow          

          - 사용자모드에서 허용되지 않은 명령 또는 공간 접근시(kernel)
    ◦외부 인터럽트 (=HW인터럽트) 

        주로 하드웨어에서 발생 
        ‣ 전원이상/ 기계문제/ 키보드 등 IO관련 이벤트/ Timer 이벤트 


• 시스템 콜 인터럽트 

    ◦시스템콜 실행을 위해서는 강제로 코드에 인터럽트 명령을 넣어, CPU에게 실행시켜야 함.

 

• 인터럽트 처리 예

    ◦입출력 하드웨어 등의 장치 이슈 발생

        - 파일처리 완료된 것을 OS에 알려줌, OS는 해당 프로세스의 상태 변경 (block-> ready)
    ◦예외 상황 발생

        - 0으로 나누는 계산발생시 운영체제가 해당 프로세스 중지/에러 표시

 

 

 

반응형