스레드를 사용하였을 때 장단점을 서술하고 스레드의 생명주기에 대해 서술하시오
“프로세스 내에서 실행되는 흐름의 단위”
멀티스레드 구조 → 2개 이상의 스레드가 실행되는 방식
장점
이유 : 스레드 관리는 프로세스 관리보다 적은 시스템 자원을 요구한다
스레드 작성 및 실행 → 스레드의 개인용 데이터 영역만 할당
프로세스 작성 및 실행 → 전체 상위 프로세스 주소 공간의 중복으로 많은 공간을 차지한다.
이유 : 스레드는 “동일한 메모리”를 공유하는 구조를 가지고 있어서, 다중 프로세스 구조에서의 공유메모리 방식을 사용할 필요가 없다. mutex / semaphore와 같은 동기화 방법을 이용하여, 동일한 메모리를 공유하면서도 데이터를 보호하는 방식을 사용할 수 있다.

이처럼 프로세스 내에 있는 메모리 영역을 공유한다
Stack은 할당, Code / Data / Heap → 공유