Computer Science/운영체제
[운영체제] 인터럽트 (Interrupt)
Sky Titan
2020. 9. 14. 16:55
728x90
Interrupt 인터럽트
- CPU가 프로그램 실행 중, 입출력장치 등의 하드웨어에서 예외상황이 발생하면 CPU에게 알려 처리하게 함
- CPU를 멈추고 Interrupt handler를 실행하게 함
1. HW 인터럽트
- 하드웨어가 발생시키는 인터럽트
- 타이머, 키보드, 마우스 등
- 시스템 버스를 통해 전달됨
2. SW 인터럽트
- 소프트웨어가 발생시키는 인터럽트
- 시스템 호출(System call)
Interrupt vector
- interrupt service routine 주소 리스트
- 인터럽트 발생 시 처리해야할 인터럽트 핸들러들의 주소 리스트
Kernel mode vs User mode

- kernel mode = 관리자 모드
- user process는 커널에 서비스 요청 : user mode -> kernel mode 전환
- system call은 kernel 영역의 기능을 user가 사용할 수 있게함
user process 실행 중 -> system call 호출 -> kernel mode 전환 -> system call 수행 -> user mode 전환 -> system call에서 돌아옴
System call
- kernel 영역의 기능을 user가 사용할 수 있게함
- program이 OS 서비스를 요청하는 수단
- SW Interrupt
- control -> interrupt vector -> interrupt service routine
Trap (exception)
- SW 인터럽트 : division by zero, invalid address, ctrl - c, child process 종료
728x90