이 포스팅은 한국기술교육대학교 김덕수 교수님의 운영체제 강의를 참고하여 작성되었습니다.
기본 스케줄링 알고리즘
• FCFS (First-Come-First-Service)
• RR (Round-Robin)
• SPN (Shortest-Process-Next)
• SRTN (Shortest Remaining Time Next)
• HRRN (High-Response-Ratio-Next)
• MLQ (Multi-level Queue)
• MFQ (Multi-level Feedback Queue)
FCFS (First-Come-First-Service)
선착순 알고리즘
Non-preemptive scheduling
스케줄링 기준 : 도착 시간 (선착순)
자원을 효율적으로 사용 가능. Why? scheduling overhead가 적다
Batch system에 적합, interactive system에 부적합
단점
(1) Convoy effect : 하나의 수행시간이 긴 프로세스에 의해 다른 프로세스들이 긴 대기시간을 갖게되는 현상 (대기시간 >> 실행 시간)
(2) 긴 평균 응답시간(response time)
RR (Round-Robin)
Preemptive scheduling
스케줄링 기준 : 도착 시간, 먼저 도착한 프로세스를 먼저 처리
자원 사용 제한 시간(time quantum)이 있음
- System parameter
- 프로세스는 할당된 시간이 지나면 자원 반납 / Time-runout
- 특정 프로세스의 자원 독점(monopoly) 방지
- Context switch overhead가 큼
대화형, 시분할 시스템에 적합
Time quantum이 시스템 성능을 결정하는 핵심 요소
- Very large (infinite) > FCFS
- Very small time quantum > processor sharing
사용자는 모든 프로세스가 각각의 프로세서 위에서 실행되는 것처럼 느낌 : 체감 프로세서 속도 = 실제 프로세서 성능의 1/n
High context switch overhead
긴 글 읽어주셔서 감사드립니다.
22.12.16
'TIL (Today I Learned) > 컴퓨터 시스템(CS)' 카테고리의 다른 글
[CS] Process Scheduler #4 (0) | 2022.12.16 |
---|---|
[CS] Process Scheduler #3 (0) | 2022.12.16 |
[CS] Process Scheduler #1 (1) | 2022.12.16 |
[CS] 스레드 관리 (0) | 2022.12.15 |
[CS] Process vs Thread (0) | 2022.12.15 |
댓글