CS/OS
[운영체제/OS] 프로세스 모델의 한계과 멀티쓰레드의 필요성
0. 프로세스 모델의 한계 프로세스 기반 모델에서 애플리케이션은 동시에 요청되는 여러가지 상황에 대해 fork()를 통해 Child process를 만듭니다. 예를 들어 웹 서버는 각 클라이언트의 요청에 대해 서버가 Child process를 생성하여 클라이언트의 요구를 처리하죠. 하지만 요청이 많아질수록 서버가 생성해야 하는 Child 프로세스에 대한 메모리는 증가할 수밖에 없으며 주소 공간과 자원 역시 공유되어 효율성이 떨어지게 됩니다. 또한, 전통적인 프로세스 기반 모델은 Multiprocessor 아키텍쳐의 장점을 살리지 못했습니다. 각 프로세스는 오직 하나의 프로세서(CPU)에서 밖에 돌지 못했기 때문이죠. 따라서 N개의 CPU가 존재한다고 하더라도 각 프로세스는 오직 1개의 CPU에서밖에 돌지..