본문 바로가기
개념

[개념] 메모리의 구조

by 부먹짱 2022. 9. 20.
반응형

메모리 구조

 

코드(Code) 영역

프로그램의 코드가 저장되는 영역, CPU는 코드 영역에 저장된 명령을 하나씩 처리한다.

 

데이터(data) 영역

전역 변수와 정적 변수가 저장되는 영역

 

힙(heap) 영역

사용자 정의에 의해 할당/해제되는 영역

동적 메모리 영역으로 데이터를 찾기 위해서는 주소 값이 필요하다.

메모리의 낮은 주소에서 높은 주소 방향으로 할당되는 FIFO(선입선출, First in First out) 방식

 

* 힙 오버플로우 (Heap Overflow) : 메모리 공간이 부족하여, 힙이 스택 공간을 침범하는 경우

 

스택(stack) 영역

프로그램이 자동으로 사용하는 임시 메모리 영역

정적인 메모리 영역으로 스택 알고리즘을 통해 데이터를 찾을 수 있다.

지역변수, 매개변수가 저장되는 영역으로 코드 블록이 끝나면 자동으로 해제된다.

메모리의 높은 주소에서 낮은 주소 방향으로 할당되는 LIFO(후입선출, Last in Last out) 방식

 

* 스택 프레임 (Stack Frame) : 함수의 지역변수, 매개변수, 반환 주소값 등 함수의 호출 정보

* 스택 오버플로우 (Stack Overflow) : 메모리 공간이 부족하여, 스택이 힙 공간을 침범하는 경우

 

 

반응형

 

반응형

댓글