[Operating System] 프로세스의 메모리 영역



프로세스는 다음과 같은 구조를 가지는 데, 아래와 같이 크게 5대의 영역으로 나뉩니다. 




위의 메모리 영역은 두 가지로 분류할 수 있는 데 컴파일 시 크기가 고정되는 code, data, bss 영역과 실행시 메모리가 할당되었다가 반납되는 heap, stack 영역으로 나눌 수 있습니다.


1. 코드 영역 : 실행 파일을 구성하는 명령어들이 적재되는 메모리 영역으로 함수, 제어문, 상수 등이 여기에 지정됩니다.

2. 데이터 영역 & BSS : 전역변수와 static변수가 지정되는 영역입니다. 초기화가 안 된 전역변수는 BSS 나머지는 DATA영역에 저장됩니다.

3. HEAP 영역 : 프로그래밍 하시는 분들께는 친숙한 heap영역입니다. 실행 시, 동적으로 메모리를 할당할 수 있는 영역이죠.

4. STACK : 지역변수가 할당되는 영역으로 함수가 호출되면 그에 맞는 변수들이 할당되고 함수가 종료될 시에는 반납됩니다.



이 글을 공유하기

댓글(0)

Designed by JB FACTORY