쓰레드의 개요 fork()를 사용하면 사용자 공간 상 text 영역은 부모프로세스와 공유하고, data,bss,heap,stack 영역은 복사되어 별도로 할당된다. 이렇게 생성된 프로세스가 전통적 프로세스이며, heavy weight process이다. 이러한 heavy weight process는 data영역이 별도로 할당되기 때문에 프로세스간의 공유변수를 갖기 어렵다. (운영체제가 제공하는 특수 구조체나 공유파일(pipe, shared mem., signal, socket 등)을 사용해야 공유가 가능해진다.) 또한 영역을 복사하는 과정이 시간적 오버헤드와 메모리 낭비를 초래할 수 있다. 반면 light weight process인 쓰레드는 text와 data 모두를 공유하고 stack만 따로 갖는 형..