<aside>
💡 프로그램 : 어떤 작업을 위해 실행할 수 있는 파일
프로세스 : 프로그램 메모리 상에서 실행중인 작업
스레드 : 프로세스 안에서 실행되는 여러 흐름 단위
</aside>
프로세스(Process)
- 프로세스는 실행 중인 프로그램
- 디스크로부터 메모리에 적재되어 CPU 의 할당을 받을 수 있음
- 프로그램 실행 → 프로세스 인스턴스 생성
- 인스턴스가 생성된다는 것은 프로그램 실행에 필요한 내용이 컴퓨터 메모리(Ram)에 적재된다는 뜻
- 운영체제로부터 주소 공간, 파일, 메모리 등을 할당

프로세스는 각각 별도의 주소공간 할당 (독립적)
- Code : 코드 자체를 구성하는 메모리 영역(프로그램 명령)
- Data : 전역변수, 정적변수, 배열 등
- 초기화 된 데이터는 data 영역에 저장
- 초기화 되지 않은 데이터는 bss 영역에 저장
- Heap : 프로세스 실행 중에 동적으로 할당되는 메모리
- Stack : 지역변수, 매개변수, 리턴 값 (임시 메모리 영역)