<2025.3.13.목요일 수업>
📍1. 컴퓨터에서 인터럽트 활용
1-1. 인터럽트의 정의
✔️프로그램 수행 중 시스템에 예기치 않은 상황이 발생하였음을 CPU에게 알리는 신호
✔️하드웨어 인터럽트 ➡️ 비동기적 인터럽트
- 외부 장치들이 어떤 상황 발생을 CPU에게 알리는 하드웨어 신호
- 비동기적이란 예정되지 않거나 발생시간을 예측할 수 없는 사건
- CPU는 인터럽트를 수신하면 인터럽트 서비스 루틴 수행
✔️소프트웨어 인터럽트 ➡️ 동기적 인터럽트
- CPU가 수행하는 프로그램 내부에서 발생함
- 동기적이란 발생 시점이 프로그램의 일정한 지점이기 때문
- 트랩(trap)이라고 하며, 시스템 호출과 예외(exception)가 있음
- 하드웨어 인터럽트를 수신한 것과 동일하게 처리
1-2. 컴퓨터에서 인터럽트 활용
마우스를 움직이거나 클릭하는 등 마우스 조작, 키보드 입력, 네트워크로부터 데이터 도착, 하드디스크의 쓰기 종료, 시스템 클럭으로부터 일정한 시간 간격으로 알림, 컴퓨터의 리셋 버튼 누르기, USB 메모리 부착 혹은 해제 등
➡️ CPU에게 알림
📍2. 인터럽트 발생과 처리 과정
2-1. 인터럽트와 명령어 사이클
2-2. 인터럽트 처리 과정
✔️ PC: 다음에 실행할 명령어의 메모리 주소
2-3. 멀티 코어 컴퓨터에서 인터럽트 발생 및 처리 과정
✔️ 동기화: 해당 코어에만 인터럽트 신호가 전달되는 것. 즉, 다른 코어는 정상적으로 응용프로그램을 운영함
📍3. 인터럽트 서비스 루틴과 운영체제
3-1. 인터럽트 벡터 테이블
✔️ 커널 영역에 저장되어 있는 인터럽트 서비스 루틴들의 주소를 저장
3-2. 인터럽트 서비스 루틴(Interrupt Service Routine, ISR)
✔️ 인터럽트 핸들러(interrupt handler)
✔️ 입출력 장치에 의존적인 ISR은 장치 드라이버 내에 위치
✔️ 입출력 장치와 무관한 ISR은 커널 코드에 위치
☑️ 멀티프로그래밍 운영체제에서 인터럽트는 CPU 활용률과 시스템 처리율을 향상
'운영체제' 카테고리의 다른 글
[운영체제] 3. 프로세스 관리 - (2) 커널의 프로세스 관리 (0) | 2025.04.11 |
---|---|
[운영체제] 3. 프로세스 관리 - (1) 프로세스 개요 (0) | 2025.04.11 |
[운영체제] 2. 컴퓨터 시스템과 운영체제 - (3) 커널과 시스템 호출 (0) | 2025.04.09 |
[운영체제] 2. 컴퓨터 시스템과 운영체제 - (2) 컴퓨터 시스템의 계층구조와 운영체제 인터페이스 (0) | 2025.04.09 |
[운영체제] 2. 컴퓨터 시스템과 운영체제 - (1) 컴퓨터 시스템과 하드웨어 (0) | 2025.04.09 |