프로그램 코드 자체가 기계어로 저장되는 영역
읽기 전용 데이터
프로그램 시작과 동시에 할당되고 프로그램 종료 시 메모리에서 소멸된다.
전역변수, Static 변수 등과 같이 프로그램이 실행되는 동안 항상 접근 가능한 변수를 위한 공간이다.
DATA에는 초기화된 전역변수가 저장된다
BSS(Block Stated Symbol)에는 초기화 값이 없는 전역변수를 저장한다.
함수 내부에 선언된 Static 변수는 프로그램이 실행될 때 공간만 할당되고, 함수가 실행될 때 초기화된다.
동적 할당 영역으로 참조타입에 대한 저장 공간이다.
프로그래머에 의해 할당되는 공간
소멸 시점은 언어에 따라 GC, ARC 등에 의해 결정된다.
지역 변수, 매개 변수, 리턴 값 등의 임시 데이터를 저정하는 영역이다.
함수 시작과 함께 생성되었다가 종료 시 반환된다.
값 타입 저장 공간이다.
재귀 함수가 너무 깊게 호출되거나 함수가 지역변수를 너무 많이 가지고 있어 stack 영역을 초과하면 stack overflow 에러가 발생한다.
참조
https://hyunable.github.io/2018/01/15/CS-memory/#undefined