실시간 스케줄링 (Real-Time Scheduling)
Jan 27, 2026
핵심 개념
섹션 제목: “핵심 개념”실시간 스케줄링은 태스크가 정해진 데드라인 내에 반드시 완료되도록 보장하는 스케줄링입니다. 일반 스케줄링은 평균 성능 최적화에 집중하지만, 자동차 ABS나 항공기 제어에서는 데드라인 미스가 치명적입니다.
동작 원리
섹션 제목: “동작 원리”실시간 시스템 분류
섹션 제목: “실시간 시스템 분류”| 유형 | 데드라인 미스 시 | 예시 |
|---|---|---|
| 경성 실시간 (Hard) | 시스템 실패 | ABS 브레이크, 항공 제어 |
| 연성 실시간 (Soft) | 품질 저하 (허용) | 멀티미디어 스트리밍, VoIP |
지연 시간 (Latency)
섹션 제목: “지연 시간 (Latency)”이벤트 ──▶ [인터럽트 지연] ──▶ [디스패치 지연] ──▶ 태스크 실행- 인터럽트 지연: 인터럽트 발생 ~ ISR 시작까지 (현재 명령어 완료, 상태 저장)
- 디스패치 지연: 스케줄러 결정 ~ 프로세스 실행까지 (커널 프로세스 선점, 자원 해제)
주기적 태스크 모델
섹션 제목: “주기적 태스크 모델”- 주기(p): 태스크가 반복되는 간격
- 처리 시간(t): CPU 버스트 시간
- 데드라인(d): 완료 기한
- 관계: 0 ≤ t ≤ d ≤ p
Rate-Monotonic (RM) 스케줄링
섹션 제목: “Rate-Monotonic (RM) 스케줄링”정적 우선순위: 주기가 짧을수록 높은 우선순위. 정적 우선순위 알고리즘 중 최적입니다.
P1: p=50, t=20 P2: p=100, t=35CPU 이용률 = 20/50 + 35/100 = 0.75 (75%)
P1 P2 P1 P2 P1 idle├────────┼────────────┼──────┼────┼────────┼────┤0 20 50 70 75 100 120Earliest Deadline First (EDF) 스케줄링
섹션 제목: “Earliest Deadline First (EDF) 스케줄링”동적 우선순위: 데드라인이 가장 가까운 태스크 우선. 이론적으로 100% CPU 이용률 가능합니다.
RM vs EDF
섹션 제목: “RM vs EDF”| Rate-Monotonic | EDF | |
|---|---|---|
| 우선순위 | 정적 | 동적 |
| 최대 CPU 이용률 | ~69% (N→∞) | 100% (이론상) |
| 구현 복잡도 | 낮음 | 높음 |
| 오버로드 시 | 예측 가능 (낮은 우선순위 미스) | 예측 불가 (연쇄 미스) |
Admission Control
섹션 제목: “Admission Control”새 태스크 수락 전 스케줄 가능성을 검사하고, 데드라인 보장 불가 시 태스크를 거부합니다.
- 경성: 심장 박동기 — 정확한 타이밍 필수
- 연성: 유튜브 영상 — 가끔 버퍼링 허용