728x90
반응형
출처 : https://www.youtube.com/watch?v=actKUqea6Xc&list=PLBrGAFAIyf5rby7QylRc6JxU5lzQ9c4tN&index=11
이전 장에서 SPN, SRTN, HRRN 스케줄링 기법들을 배웠다. 이 스케줄링 기법들은 효율성, 성능을 높일 수 있었지만 Burst time을 예측 해야하고 이것이 어렵다는 문제점이 있었다.
그래서 Burst time을 예측하지 않고도 비슷한 효과를 내고자 MLQ(Multi-Level Queue), MFQ(Multi-Level Feedback Queue) 스케줄링 기법들이 등장하게 되었다.
MLQ(Multi-Level Queue) : ready queue를 여러 개 둬서 작업(혹은 우선순위)를 배정해주겠다.
- 작업 (or 우선순위) 별 별도의 ready queue를 가짐
- 최초 배정 된 queue를 벗어나지 못함
- 각각의 queue는 자신만의 스케줄링 기법 사용
- Queue 사이에는 우선순위 기반의 스케줄링 사용
- Fixed-priority preemptive scheduling 등
- 장점
- 빠른 응답시간 (?) (우선 순위가 높은, 중요한 녀석들을 빠르게 처리할 수 있다, 낮으면 느림)
- 단점
- 여러 개의 Queue 관리 등 스케줄링 overhead
- 우선순위가 낮은 queue는 starvation 현상 발생 가능
즉, 다양한 우선 순위를 가진 여러개의 ready queue를 만들어서 우선 순위가 높은 프로세스들을 먼저 처리해준다.
MFQ (Multi-level Feedback Queue)
- 프로세스의 Queue 간 이동이 허용된 MLQ
- Feedback을 통해 우선 순위 조정
- 현재까지의 프로세서 사용 정보(패턴) 활용
- 특성
- Dynamic priority
- Preemptive scheduling
- Favor short burst-time processes
- Favor I/O bounded processes
- Improve adaptability
- 프로세스에 대한 사전 정보(Burst time) 없이 SPN, SRTN, HRRN 기법의 효과를 볼 수 있음
Multi level queue에서 우선 순위가 변동할 수 있다.
- 단점
- 설계 및 구현이 복잡하다.
- 스케줄링 오버헤드가 크다.
- Starvation 문제 등
- 변형
- 각 ready queue 마다 시간 할당량을 다르게 배정
- 프로세스의 특성에 맞는 형태로 시스템 운영 가능
- 입출력 위주 프로세스들을 상위 단계의 queue로 이동, 우선 순위 높임
- 프로세스가 block 될 때 상위의 ready queue로 진입하게 함
- 시스템 전체의 평균 응답 시간 줄임, 입출력 작업 분산 시킴
- 대기 시간이 지정된 시간을 초과한 프로세스들을 상위 queue로 이동
- 에이징(Aging) 기법
- 각 ready queue 마다 시간 할당량을 다르게 배정
728x90
반응형
'Study > 운영체제' 카테고리의 다른 글
6. 프로세스 동기화 & 상호 배제 (2) - SW Solutions (0) | 2023.11.12 |
---|---|
6. 프로세스 동기화 & 상호 배제 (1) - 개요 (1) | 2023.11.11 |
5. 프로세스 스케줄링 (3) - SPN, SRTN, HRRN (0) | 2023.11.09 |
5. 프로세스 스케줄링 (2) - FCFS, RR (0) | 2023.11.08 |
5. 프로세스 스케줄링 (1) (0) | 2023.11.06 |