우선 순위에 따라 준비 큐를 여러개 사용하여 고정형 우선순위를 적용하는 스케줄링 알고리즘은?
•
다단계 큐 스케줄링이다.
고정형 우선순위란, 프로세스가 우선순위를 기준으로 정해진 큐에 들어가면, 무조건 들어간 순서대로 프로세스를 실행시킨다는 의미이다.
우선순위 큐 안에서는 고정형이지만, 크게 보면 우선순위 별로 큐가 나누어져 있고, 우선순위가 높은 큐에 프로세스가 계속 채워지면
낮은 우선순위 큐에서 대기하는 프로세스의 순서는 뒤로 미뤄지기 때문에, 선점형 방식이라고 할 수 있다.
- 선점형 알고리즘 : 어떤 프로세스가 CPU를 할당받아서 실행 중이라도 운영체제가 CPU를 강 제로 빼앗을 수 있다.
- 비선점형 알고리즘 : 프로세스가 작업이 끝날때까지 CPU를 놓지 않는 알고리즘인데, 효율이 떨어져서 지금은 거의 사용하지 않는다.
우선순위에 따라 준비 큐를 여러 개 사용하며, 프로세스가 CPU를 사용한 후 우선순위가 낮아지는 특징을 가진 스케줄링 알고리즘은 무엇인가.
•
다단계 피드백 큐 스케줄링이다.
라운드 로빈 방식을 사용하는데, 주어진 타임 슬라이스 동안 작업을 끝내지 못한 프로세스는 한단계 아래의 우선순위로 들어간다.
다단계 큐의 낮은 우선순위에 있는 프로세스의 순서가 계속 미뤄지는 문제점을 보완한 방식이다.
다단계 피드백 큐 스케줄링에서 마지막 큐(우선순위가 가장 낮은 큐)는 어떤 스케줄링 알고리즘 처럼 동작하는가?
FCFS 스케줄링 알고리즘
FCFS 스케줄링은 준비 큐에 도착한 순서대로 CPU를 할당하는 비 선점형 방식이다. (자료구조의 큐와 동일, FIFO구조)
다단계 피드백 큐 스케줄링 알고리즘은, 마지막 큐에서는 타임슬라이스를 무한대로 주어 순서가 된 프로세스를 무조건 작업을 완료 시킨다. 따라서 타임슬라이스가 무한대가 된다.