본문으로 바로가기
프로세스 스케줄링에서 사용되는 기법 중 하나인 MFQ입니다.

질문의 요지는, "MFQ의 마지막 큐(Last Queue)에 있는 스케줄링 방식이 FCFS가 아니냐? 학교에서 FCFS라고 배웠다"고 말씀을 주셨는데, 그건 OS에 따라 다릅니다.

OS에 따라 마지막 큐(Last Queue)는 FCFS 혹은 RR 방식이 될 수도 있습니다. 그러니 만약 시험 문제에서 MFQ 계산 문제가 나온다면 마지막 큐(Last Queue)에 적용된 방식을 언급할 것입니다.


※ 수년 아니 수십 년 전부터 OS(Wondows, Mac, Solaris 등)에서 선점 방식인 MFQ를 사용하고 있지요.

요즘 OS는 MFQ에서 향상된 (Improved) IMFQ 스케줄링 방식을 사용해요.

그리고, 프로세스 스케줄링에서 기아 상태(Starvation)가 발생시 해결책으로는 크게 2가지 방법을 사용합니다.

① Aging scheduling
② Lottery scheduling


①번 에이징(Aging) 기법은 잘 아실테고, ②번 복권(로또, Lottery) 기법은 처음 들어 보셨을 수도 있겠네요.

말 그대로 복권(로또) 기법입니다. 스케줄러는 프로세스에 복권(로또) 티켓을 무작위(random)로 할당한 상태에서 스케줄러가 임의의 복권(로또) 티켓을 가져와 다음 번에 실행 될 프로세스를 선택하는 방식입니다. 복권(로또)스케줄링 방식은 선점, 비선점 방식 모두 가능합니다.


※ 로또 스케줄링(Lottery scheduling) 기법은 "Lottery scheduling - https://en.wikipedia.org/wiki/Lottery_scheduling" 참고하세요.


댓글을 달아 주세요

  1. BlogIcon 소액결제 현금화 2018.10.16 10:22 신고

    잘보고 가요^^