2021. 2. 21. 01:18ㆍComputer(인강)/운영체제
안녕하세요 bannavi입니다.^ㅅ^
하////
열심히 썼는데 포스팅이 날아가 버렸네요 ^ㅅ^
문서 작성중엔 캐시삭제를 하면 안된다는 교훈을 얻으면서......
시작해보겠습니다.
오늘은 인터럽트의 종류를 살펴볼거에요
그래도 선점형 비선점형 공부할때보단 한결 마음이 가볍네요
(저만 그런거 아니죠...?)
인터럽트 처리 예
인터럽트는 일종의 이벤트로 불립니다.
이 이벤트에 맞게 운영체제가 처리해주어야하고요
주요 인터럽트(Interrupt)
1. 계산하는 코드에서 0으로 나누는 코드 실행시(Divide-by-Zero Interrupt)
2. 타이머 인터럽트
선점형 스케쥴러를 위해 필요
3. 입출력(IO) 인터럽트(여러가지 디바이스..)
인터럽트 종류는 두가지로 나뉩니다 내부 인터럽트와 외부 인터럽트입니다.
내부 인터럽트
주로 프로그램 내부에서 잘못된 명령 또는 잘못된 데이터 사용시 발생
- 0으로 나눴을 때
- 사용자 모드에서 허용되지 않은 명령 또는 공간 접근시
(c언어 포인터가 주소를 잘못지칭해서 프로세스가 다운..되는 경우도 있지만)
- 계산 결과가 Overflow/Underflow 날 때
외부 인터럽트
주요 하드웨어에서 발생되는 이벤트 (프로그램 외부)
- 전원 이상
- 기계 문제
- 키보드등 IO 관련 이벤트
- Timer 이벤트
인터럽트 종류
내부 인터럽트는 주로 프로그램 내부에서 발생하므로, 소프트웨어 인터럽트라고도 합니다.
외부 인터럽트는 주로 하드웨어에서 발생하므로, 하드웨어 인터럽트라고도 합니다.
'Computer(인강) > 운영체제' 카테고리의 다른 글
프로세스 구조 (0) | 2021.02.21 |
---|---|
인터럽트 내부 동작 (0) | 2021.02.21 |
인터럽트 란? (0) | 2021.02.21 |
스케쥴링 알고리즘 조합 (0) | 2021.02.21 |
선점형과 비선점형 스케쥴러 (0) | 2021.02.20 |