차례:
정의-우선 순위 예약이란 무엇입니까?
우선 순위 스케줄링은 우선 순위에 따라 프로세스를 스케줄링하는 방법입니다. 이 방법에서 스케줄러는 우선 순위에 따라 작업을 선택합니다. 우선 순위는 다른 라운드 유형 (예 : 단순 라운드 로빈)과 다릅니다.
우선 순위 예약에는 모든 프로세스에 우선 순위가 할당되며 우선 순위가 높은 프로세스가 먼저 수행되는 반면 우선 순위가 동일한 작업은 FCFS (선착순) 또는 라운드 로빈 방식으로 수행됩니다. 일반 우선 순위 스케줄링 알고리즘의 예로는 SJF (shortest-job-first) 알고리즘이 있습니다.
Techopedia는 우선 순위 예약을 설명합니다
우선 순위는 동적 또는 정적 일 수 있습니다. 정적 우선 순위는 생성 중에 할당되는 반면 동적 우선 순위는 시스템에서 프로세스의 동작에 따라 할당됩니다. 예를 들어, 스케줄러는 입 / 출력 (I / O) 집약적 인 작업을 선호하여 값 비싼 요청을 가능한 빨리 발행 할 수 있습니다.
우선 순위는 내부적으로 또는 외부 적으로 정의 될 수 있습니다. 내부적으로 정의 된 우선 순위는 측정 가능한 수량을 사용하여 주어진 프로세스의 우선 순위를 계산합니다. 반대로, 외부 우선 순위는 운영 체제 (OS) 이외의 기준을 사용하여 정의되며, 여기에는 프로세스의 중요성, 유형 및 컴퓨터 사용, 사용자 선호도, 상거래 및 정치와 같은 기타 요인에 사용되는 자원의 합계가 포함될 수 있습니다. 등
우선 순위 예약은 다음 중 하나 일 수 있습니다.
- 선점 :이 유형의 스케줄링은 새로 도착한 프로세스의 우선 순위가 기존 프로세스의 우선 순위보다 큰 경우 중앙 처리 장치 (CPU)를 선점 할 수 있습니다.
- 비 선점 :이 유형의 스케줄링 알고리즘은 단순히 새로운 프로세스를 준비 대기열의 맨 위에 놓습니다.
기아라고도하는 무기한 차단은 우선 순위 예약 알고리즘과 관련된 주요 문제 중 하나입니다. 프로세스를 실행할 준비가되었지만 CPU에 할당되는 데 오랜 시간이 걸리는 상태입니다.
우선 순위 스케줄링 알고리즘이 우선 순위가 낮은 프로세스를 무기한 대기 할 수있는 경우가 종종 있습니다. 예를 들어, 로드가 많은 시스템에서 우선 순위가 높은 여러 프로세스가있는 경우 우선 순위가 낮은 프로세스가 CPU를 실행하지 못할 수 있습니다.
기아에 대한 해결책은 노화이며, 이는 시스템에서 오랜 시간 동안 대기하는 프로세스의 우선 순위를 점차적으로 증가시키는 데 사용되는 기술입니다.