퍼온곳 http://vosej_v.blog.me/50169180000
프로그램을 실행하게 되면, os는 프로그램이 실행에 필요로 하는 자원 ( 메모리 )를 제공한다.
이때 프로그램들이 실행되면서 생긴 데이터들이 저장되는 영역은 크게 4가지로 나뉜다.
text section
프로그램의 코드를 포함한다.
data section
프로그램이 시작할 때 생성되고, 종료시 소멸되는 메모리 영역으로 전역변수와 static 변수를 포함한다.
heap section
실행시간동안 동적으로 할당ㅂ잗는 데이터 변수들을 포함하는 영역으로
new 같은 메모리할당 명령어를 사용하여 데이터를 할당받는다. stack과 data section의 변수들은 종료시
메모리가 자동으로 소멸하나 heap memory는 프로그래머가 직접 메모리 해제를 해주어야 한다.
stack section
함수의 매개변수, 지역변수등 임시적인 데이터를 갖는 공간
함수가 실행되었을때 변수들이 스택에 쌓이고 함수의 종료시 메모리할당이 자동으로 해제된다.