@ 앞에서 얘기했듯이, 의사결정은 상황에 따라 다르게 이루어질 수 있습니다.
// 하지만 한 Process에서 다른 Process에게 CPU를 넘기는 작업은
> 어떤 상황에서나 같은 매커니즘으로 움직입니다.
// 각각의 상황을 용어로는 다음과 같이 표현합니다.
> 의사결정 - Policy
> CPU를 넘기는 작업 - Mechanism
@ 그렇기 때문에 OS에서 Scheduler를 구현할 때에는
// Separation of Policy and Mechanism이라는 설계 철학을 사용합니다.
> 대부분의 복잡한 시스템을 만들 때 사용하는 것으로
.. 위의 두 개념을 분리시키는 그런 방법입니다.
@ 그 결과로 OS Scheduler는 두단계가 됩니다.
// Policy
> 다음에 수행될 프로세스를 선택하는 기준
.. Scheduling Policy (교체 가능)
// Mechanism
> CPU를 한 프로세스에서 다른 프로세스로 넘겨주는 방법
.. Dispatcher
@ 이 둘 중 저희는 먼저 Dispatcher부터 공부하겠습니다.
// Policy는 나중에 공부하도록 하겠습니다.