2014-12-11 3 views
6

현재 운영 체제에서 학부 과정을 수강하고 있습니다. 프로세스 스케줄링에서 디스패처 및 스케줄러의 기능에 대해 다소 혼란 스럽습니다. 내가 배운 것을 바탕으로 중기 스케줄러는 스와핑 아웃을위한 프로세스를 선택하고 일단 프로세스가 선택되면 컨텍스트 전환을 통해 Dispatcher가 실제 스왑 작업을 수행합니다. 또한 단기 스케줄러는 스케줄링 알고리즘에 따라 프로세스 스케줄링 및 CPU 시간 할당을 담당합니다. 내가 틀렸다면 나를 바로 잡으십시오. 나는 중기 스케줄러와 디스패처의 기능에 대해 혼동스럽고, & 컨텍스트 스위칭을 바꾸는 것의 차이점에 대해서 혼란 스럽다.프로세스 스케줄링 컨텍스트에서 스케줄러와 디스패처의 차이점은 무엇입니까

답변

6

시스템 고유 용어로 설명합니다.

스케줄러와 디스패처는 모두 똑같을 수 있습니다. 그러나 스케줄러가 프로세스 큐를 유지하고 디스패처가 실제 컨텍스트 스위치를 처리하도록 자주 분할됩니다.

스케줄러를 장기, 중기 및 단기로 나누면 해당 분할 (있는 경우)은 운영 체제에만 해당됩니다.

메모리에서 프로세스를 제거하는 프로세스에서 스와핑. 컨텍스트 스위치를 통해 프로세스를 실행할 수 없게 만들지 만 스왑 아웃 할 수는 없습니다. 스와핑은 일반적으로 스케줄링과 무관합니다. 그러나 프로세스를 실행하려면 스왑해야하며 메모리 관리는 실행중인 프로세스를 스왑 아웃하지 않도록합니다.

+0

"프로세스를 컨텍스트 스위치를 통해 실행할 수 없지만 스왑 아웃 할 수는 없습니다." 이걸 설명해 주시겠습니까? – Backspace

+0

프로세스를 실행 불가능하게 만들면 프로세스를 스왑 아웃 할 수 없습니다. 그것은 물리적 인 기억 속에 남을 수 있습니다. 그러나 메모리 관리가 나중에이를 스왑 할 수 있습니다. – user3344003

0

스케줄러는 서비스 요청의 요구 사항을 평가하므로 주문이 부과됩니다.

+1

아마 이것에 관해 더 많은 정보를 줄 수 있습니다. 예제를 추가하고 어쩌면 설명에 대한 링크를 추가하십시오. –

0

기본적으로 스케쥴러와 디스패처에 대해 알려진 내용은 모두 정확합니다. 동일한 단위 또는 스케줄러 (이 경우 짧은 시간)라고하는 경우 디스패처가 하나의 단위로 포함되며 함께 프로세스를 할당 할 책임이 있습니다. 실행을위한 CPU. 때로는 두 개의 개별 단위로 참조되며, 스케줄러는 알고리즘에 따라 프로세스를 선택하고 디스패처는 실제 컨텍스트 전환을 담당하는 소프트웨어입니다.