기어가더라도 제대로

[운영체제-김덕수 교수님] 프로세스 스케쥴링 (3/4) - SPN, STRN, RR 본문

CS/운영체제

[운영체제-김덕수 교수님] 프로세스 스케쥴링 (3/4) - SPN, STRN, RR

Damagucci-juice 2022. 7. 31. 09:47

SPN(Shortest-Process-Next)

  • Non-preemptive scheduling
  • 스케줄링 기준
    • 실행시간(burst time 기준)
    • Burst time 가장 작은 프로세스를 먼저 처리
      • SJF(Shortest Job First)
  • 장점
    • 평균 대기시간 최소화
    • 시스템 내 프로세스 수 최소화
      • 스케줄링 부하 감소, 메모리 절약 -> 시스템 효율 향상
    • 많은 프로세스들에게 빠른 응답 시간 제공
  • 단점
    • Starvation(무한대기) 현상 발생
      • 실행시간이 긴 프로세스는 자원을 할당 받지 못할 수 있음

‏‏‎ ‎

  - aging 등으로 해결(HRRN)

- 정확한 실행 시간을 알 수 없음

  - 실행 시간 예측 기법이 필요

‏‏‎ ‎

‏‏‎ ‎

프로세스 스케쥴링 (3/4) - SPN, STRN, RR image

‏‏‎ ‎

SRTN(Shortest Remaining Time Next)

  • SPN의 변형
  • Preemptive scheduling
    • 잔여 실행 시간이 더 적은 프로세스가 ready 상태가 되면 선점됨
  • 장점
    • SPN 의 장점 극대화
  • 단점
    • 프로세스 생성시, 총 실행 시간 예측이 필요함
    • 잔여 실행을 계속 추적해야함 = overhead
    • Context switching overhead

=> 구현 및 사용이 비현실적

‏‏‎ ‎

HRRN(High Response Ratio Next)

  • SPN의 변형
    • SPN + Aging concepts, Non-preemtive scheduling
  • Aging concepts
    • 프로세스의 대기시간(WT)을 고려하여 기회를 제공
    • 평균 대기시간이 적음
  • 스케줄링 기준
    • Response ratio 가 높은 프로세스 우선

‏‏‎ ‎

프로세스 스케쥴링 (3/4) - SPN, STRN, RR image

‏‏‎ ‎

  • SPN의 장점 + Starvation 방지
  • 실행 시간 예측 기법 필요 (overhead)

‏‏‎ ‎

프로세스 스케쥴링 (3/4) - SPN, STRN, RR image

‏‏‎ ‎

프로세스 스케쥴링 (3/4) - SPN, STRN, RR image

‏‏‎ ‎

Comments