[2일차] 정보처리산업기사 운영체제 – 선점형 스케줄링 정리 (SRTF, RR, Priority, MLFQ, MLQ)


정보처리산업기사 운영체제의 핵심 개념 중 하나인 선점형 스케줄링(Preemptive Scheduling) 을 정리한다.

선점형은 실행 중인 프로세스라도 더 짧은 남은 시간이나 높은 우선순위를 가진 프로세스가 도착하면

운영체제가 CPU를 강제로 회수(Preempt) 하는 방식이다.

이번 학습에서는 대표적인 5가지 기법을 다룬다.

  • SRTF (Shortest Remaining Time First)
  • RR (Round Robin)
  • Priority Scheduling
  • Multilevel Queue (MLQ)
  • MLFQ (Multilevel Feedback Queue)

1. SRTF (Shortest Remaining Time First)

개념

SRTF는 SJF(Shortest Job First) 의 선점형 버전이다.

매 시점마다 “남은 실행시간(Remaining Time)”이 가장 짧은 프로세스가 CPU를 차지한다.

문제 예시

프로세스도착시간(A)CPU 버스트(B)
P108
P214
P329
P435

실행 흐름 (스위칭 과정)

시간 구간도착 / 실행 판단현재 실행전환 이유
t=0~1P1만 존재P1초기 실행
t=1P2(4) 도착 → 남은시간 7 vs 4 → P2로 교체P2짧은 남은 시간
t=1~5P2 실행 완료P2완료
t=5{P1(7), P3(9), P4(5)} → P4 선택P4남은시간 가장 짧음
t=5~10P4 실행 완료P4완료
t=10{P1(7), P3(9)} → P1 선택P1남은시간 짧음
t=10~17P1 실행 완료P1완료
t=17~26남은 P3 실행P3마지막 프로세스

간트 차트

정보처리산업기사 운영체제 – 선점형 스케줄링

계산 결과

프로세스ABCT=C−AW=T−B
P10817179
P214540
P329262415
P4351072
  • 평균 반환시간 = (17+4+24+7) / 4 = 13.0
  • 평균 대기시간 = (9+0+15+2) / 4 = 6.5

2. RR (Round Robin)

개념

모든 프로세스에 동일한 시간(Time Quantum) 을 순서대로 배분하는 방식이다.

시분할 시스템(Time-Sharing System)에서 자주 사용되며,

공평성(Fairness)과 빠른 응답성(Responsiveness)을 중시한다.


예시 데이터

프로세스도착시간(A)CPU 버스트(B)
P105
P214
P322
P431

타임 슬라이스(Time Quantum) = 2


실행 순서 (스위칭 흐름)

시간 구간실행 프로세스남은 시간 변화설명
0~2P15 → 3첫 실행
2~4P24 → 2교체
4~6P32 → 0완료
6~8P41 → 0완료
8~10P13 → 1남은 작업
10~11P11 → 0완료
11~13P22 → 0완료

간트 차트

정보처리산업기사 [2일차] 정보처리산업기사 운영체제 – 선점형 스케줄링 정리 (SRTF, RR, Priority, MLFQ, MLQ)

계산 공식

  • 반환시간(T) = 완료시간(C) − 도착시간(A)
  • 대기시간(W) = 반환시간(T) − CPU버스트(B)

계산 결과

프로세스ABCTW
P10511116
P21413128
P322642
P431854
  • 평균 반환시간 = (11+12+4+5)/4 = 8.0
  • 평균 대기시간 = (6+8+2+4)/4 = 5.0

3. Priority Scheduling (우선순위 스케줄링)

개념

각 프로세스에 우선순위(Priority) 를 부여하여

가장 높은 우선순위(숫자가 낮을수록 높음)를 가진 프로세스가 먼저 CPU를 점유한다.

선점형과 비선점형 모두 가능하지만, 여기서는 선점형 기준으로 정리한다.


예시 데이터

프로세스도착시간(A)CPU 버스트(B)우선순위(P)
P1053
P2131
P3224
P4312

실행 순서

시간 구간실행 프로세스이유
0~1P1첫 도착
1~4P2우선순위 1 (가장 높음)
4~5P4우선순위 2
5~7P1남은 실행 재개
7~9P3우선순위 4, 마지막 실행

간트 차트

정보처리산업기사 운영체제 – 선점형 스케줄링

특징 요약

  • 장점: 중요 작업을 먼저 처리 가능
  • 단점: 낮은 우선순위 프로세스가 무한 대기 → 기아(Starvation)
  • 해결책: Aging(에이징) → 오래 대기할수록 우선순위를 높임

4. Multilevel Queue (MLQ)

개념

Multilevel Queue(다단계 큐 스케줄링)

프로세스들을 성격(우선순위, 목적, 사용자 유형 등)에 따라 여러 개의 큐로 나누어 관리하는 방식이다.

예를 들어,

  • 시스템 프로세스(운영체제 수준)
  • 대화형(Interactive) 프로세스
  • 배치(Batch) 프로세스

이렇게 나누고, 각 큐마다 다른 스케줄링 정책을 적용할 수 있다.

큐 간에는 우선순위가 고정되어 있으며, 상위 큐가 항상 CPU를 선점한다.


예시 데이터

큐 이름프로세스 유형적용 알고리즘우선순위
Q1시스템 프로세스RR (Quantum=4)1 (가장 높음)
Q2대화형 프로세스SJF2
Q3배치 프로세스FCFS3 (가장 낮음)

동작 흐름 (스위칭 예시)

  1. CPU는 항상 가장 높은 우선순위 큐(Q1) 를 먼저 확인한다.
  2. Q1에 실행할 프로세스가 없을 때만 Q2로 넘어간다.
  3. Q2에서도 없으면 Q3를 실행한다.
  4. 즉, 상위 큐가 비워져야 하위 큐가 실행 가능하다.

간트 차트

정보처리산업기사 운영체제 – 선점형 스케줄링
  • Q1: Round Robin(타임 슬라이스 4)
  • Q2: SJF 방식
  • Q3: FCFS 방식

장점

  • 프로세스 특성에 따라 스케줄링 분리 가능
  • CPU 활용도 향상
  • 관리 정책이 명확

단점

  • 큐 간 우선순위 고정 → 하위 큐가 실행되지 못할 가능성
  • 큐 간 이동이 불가능 (프로세스가 한 큐에 고정)
  • 균형 조절이 어려움

기억 포인트

MLQ는

정적(Static) 우선순위 기반 큐 분리 구조

각 큐는 서로 다른 알고리즘을 가질 수 있고,

큐 간 우선순위 고정


5. MLFQ (Multilevel Feedback Queue)

개념

다단계 피드백 큐(Multilevel Feedback Queue)

실제 운영체제에서 가장 널리 쓰이는 현실형 스케줄링이다.

프로세스의 실행 이력에 따라 우선순위를 동적으로 조정한다.


구조 예시

큐 번호정책타임 슬라이스
Q1RR4
Q2RR8
Q3FCFS

동작 예시

  1. 새 프로세스는 Q1(우선순위 가장 높음)에서 시작
  2. 주어진 타임슬라이스 내에 끝나면 종료
  3. 시간을 초과하면 Q2로 이동
  4. 다시 초과하면 Q3로 이동 → CPU를 오래 사용하는 프로세스일수록 낮은 우선순위 큐로 내려감

간트 차트

정보처리산업기사 운영체제 – 선점형 스케줄링

특징

  • 장점: 다양한 작업 유형에 적응, 현실 시스템에 가장 근접
  • 단점: 설정이 복잡하고, 파라미터 조정이 어렵다

요약 비교표

알고리즘선점기준장점단점
SRTFO남은 실행시간평균 대기시간 최소잦은 교체, 기아 발생
RRO타임 슬라이스공평성, 빠른 응답성타임 슬라이스 조정 필요
PriorityO / X우선순위중요 작업 우선기아 문제 발생 (Aging)
MLQO큐 간 우선순위유형별 정책 적용하위 큐 실행 불균형
MLFQO동적 우선순위현실 시스템 유사구조 복잡, 튜닝 어려움

6. 결론

선점형 스케줄링은 운영체제의 CPU 자원을 효율적으로 분배하고, 시스템 응답속도를 향상시키는 핵심 알고리즘이다.

각 기법은 적용 목적과 계산 방식이 다르기 때문에, 시험에서는 구분 중심으로 학습하는 것이 중요하다.

  • SRTFRR 은 실제 계산 문제가 자주 출제되므로, 간트 차트 작성과 평균 대기시간 계산 과정을 반드시 연습해야 한다.
  • Priority SchedulingMLFQ 는 개념 중심 문제로, 우선순위 변화, 기아(Starvation), Aging(에이징) 원리의 이해가 핵심이다.

요약하면,

  • 타임 슬라이스 계산 (RR)
  • SJF와 SRTF의 차이 비교
  • Aging을 통한 우선순위 조정 원리

이 세 가지가 실기 시험에서 가장 자주 등장한다.

따라서 계산 훈련과 개념 구분을 함께 익히는 것이 효과적이다.


7. 다음 학습 – 운영체제 관련 기술

이번 학습에서는 CPU 스케줄링의 선점형 알고리즘을 정리했지만,

운영체제의 프로세스 관리에는 이와 함께 다뤄지는 연관 기술들이 존재한다.

다음 학습에서는 스케줄링과 직접 연결되는 핵심 기술들을 다룰 예정이다.

다음 학습 주제핵심 포인트시험 출제 경향
프로세스 동기화세마포어, 뮤텍스, 교착상태 예방계산 + 개념
교착상태발생 조건, 자원할당 그래프개념 중심
메모리 관리페이징, 세그먼테이션, 페이지 교체계산형
디스크 스케줄링탐색거리 계산응용형
입출력 관리인터럽트, 버퍼링개념형

정보처리산업기사 관련링크 모음

  • 큐넷(Q-Net) 정보처리산업기사 안내
    -> 바로가기
  • 큐넷 원서접수 페이지 (정보처리산업기사 실기)
    -> 바로가기
  • 한국산업인력공단 공식 홈페이지
    ->바로가기
  • 이기적 2025 정보처리산업기사 실기 교재 공식몰 (영진닷컴)
    -> 바로가기
  • HRD-Net (직업훈련포털)
    -> 바로가기

“이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.”