질문 9
멀티 프로세스에서 콘텍스트 스위칭과 멀티 스레드에서 콘텍스트 스위칭의 차이점을 설명해 보세요.
답변
가장 큰 차이점은 멀티 스레드에서 콘텍스트 스위칭할 때 멀티 프로세스보다 오버헤드가 적게 발생한다는 점입니다. 멀티 프로세스는 프로세스별로 고유한 메모리 영역을 갖는 반면, 멀티 스레드는 스택 영역을 제외한 메모리 영역을 공유합니다. 그래서 레지스터에 로드해야 하는 데이터 양이 적어서 오버헤드가 적게 발생합니다.
TIP 이 질문으로 콘텍스트 스위칭에 대한 이해도뿐만 아니라 멀티 프로세스와 멀티 스레드의 이해도까지 확인할 수 있다. 따라서 콘텍스트 스위칭에서 발생하는 오버헤드와 프로세스와 스레드가 갖는 메모리 영역의 차이를 설명하는 내용이 답변에 들어가면 좋다.