본문 바로가기

CS/운영체제

CPU 스케쥴링(CPU Scheduling)

CPU Scheduling

    -Scheduling criteria

        -CPU utilization(CPU 이용률): CPU가 얼마나 이용되는지

        -Troughput(처리율): 시간당 몇개의 작업이 끝나는지

        -Turnaround time(반환시간): 처음시작부터 종료될때까지 걸린시간(대기시간 포함)

        -Waiting time(대기시간): Ready queue에서 얼마나 기다렸는지

        -Response time(응답시간): 실행후 처음 응답이 나올때까지 걸린 시간

 

CPU Scheduling Algorithms

    -First-Come-First-Served(FCFS)

        -Simple-Fair

        -Convoy Effect(호위 효과): 앞에 긴 작업으로 인해 종속적으로 오래 기다림

        -Non-preemptive

 

    -Shortest-Job-First(SJF)

        -Best but Unrealistic

        -Preemptive or Non-preemptive 가능

        -Shortest-Remaining-Time-First(SRTF)이라고도 함

   

    -Priority

        -Low number represents High priority

        -Preemptive or Non-preemptive 가능

        -Internal or External Condition

        -Problem(starvation:기아): 차례가 안옴 → Solution(aging): 우선순위 높여줌

   

    -Round-Robin

        -TTS(Time-Sharing-System)

        -△: Time Quantum(Time slice)에 따라 성능 좌우

        -Only Preemptive

 

    -Multilevel Queue

        -Single ready queue →several separate queues

        -각각의 Queue에 절대적 우선순위 또는 CPU Burst Time 차등배분

        -각 Queue는 독립적인 Scheduling 정책

 

    -Multilevel Feedback Queue

        -여러개의 Queue

        -다른 Queue로의 점진적 이동(Feedback)

        -모든 프로세스는 하나의 입구로 진입

        -과도한 CPU time 사용시 다른 Queue로 이동

        -기아상태 우려시 우선순위 높은 Queue로 이동 

'CS > 운영체제' 카테고리의 다른 글

프로세스 동기화  (0) 2023.02.07
쓰레드(Thread)  (0) 2023.02.06
프로세스  (0) 2023.02.04
운영체제 서비스 개요  (0) 2023.02.03
이중모드와 하드웨어 보호  (0) 2023.02.03