본문 바로가기
📁 정보처리기사

[운영체제/OS] 프로세스 스케줄링 알고리즘

by 박개봄 2021. 4. 4.
728x90

1) 선점형 스케줄링 알고리즘 유형

알고리즘 유형

동작 방식

특징

라운드 로빈

(Round Robin)

 - 프로세스는 같은 크기의 CPU 시간을 할당(시간 할당량)

 - if 할당된 시간 내에 처리를 완료하지 못하면

   준비 큐 리스트의 가장 뒤로 보내짐

   CPU는 대기중인 다음 프로세스로 넘어감

 - 균등한 CPU 점유시간

 - 시분할 시스템 사용

SRT

(Shortest Remaining
Time First)

 - 가장 짧은 시간이 소요되는 프로세스 먼저 수행

 - 준비 큐에 남은 처리시간이 더 짧다고 판단되는 프로세스가 생기면, 그 프로세스가 선점!

 - 짧은 수행시간 프로세스 우선 수행

다단계 큐

(Multi Level Queue)

 - 작업들을 여러 종류 그룹으로 분할

 - 여러개의 큐 이용하여, 상위단계 작업에 의한 하위단게 작업이 선점당함

 - 각 큐마다 자신만의 독자적인 스케줄링

 - 독립된 스케줄링 큐

다단계 피드백 큐

(Multi Level

Feedback Queue)

 - 입출력 위주와 CPU 위주인 프로세스의 특성에 따라, 큐마다 서로 다른 CPU 시간 할당량 부여

 - FCFS(FIFO)와 라운드로빈 혼합

 - 새로운 프로세스는 높은 우선순위, 프로세스의 실행 기간이 길어질수록 점점 낮은 우선순위 큐로 이동

 - 마지막 단계는 라운드 로빈방식 적용

 - 큐마다 다른 시간 할당량

 - 마지막 단계는 라운드 로빈 방식 처리

 

2) 비선점형 스케줄링 알고리즘 유형

알고리즘 유형

동작 방식

특징

우선순위

(Priority)

 - 프로세스별로 우선순위가 주어짐

 - 우선순위에 따라 CPU 할당

 - 동일 순위는 FCFS

 - 주요/긴급 프로세스에 대한 우선 처리

 - 설정, 자원상황 등에 따른 우선순위 설정

기한부

(Deadline)

 - 작업들이 명시된 시간 or 기한 내에 완료되도록 계획

 - 요청에 명시된 시간 내 처리를 보장

FCFS

(First Come

First Service)

 - 프로세스가 대기 큐에 도착한 순서에 따라 CPU 할당

 - FIFO 알고리즘 이라고도 함

 - 도착한 순서대로 처리

SJF

(Shortest Job First)

 - 프로세스가 도착하는 시점에 따라 그 당시 가장 작은 서비스 시간을 갖는 프로세스가 종료 시까지 자원 점유...

 - 준비 큐 작업 중 가장 짧은 작업부터 수행

 - 평균 대기시간 최소

 - CPU 요구시간이 긴 작업과 짧은 작언간의 불평등이 심하여, CPU 요구시간이 긴 프로세스는 기아현상 발생

 - 기아 현상 발생 가능성

HRN

(Highest Response

Ratio Next)

 - 대기중인 프로세스 중 현재 응답률(Response Ratio)이 가장 높은것 건택

 - SJF의 약점인 기아현상 보완한 기밥

 - 긴 작업과 짧은 작업 간의 불평등 완화

 - HRN의 우선순위 = (대기시간+서비스시간)/서비스시간

 - 기아 현상(starvation) 최소화 기법

 

 

 

출처 : 수제비 정보처리기사 실기책

728x90