언리얼 학습 기록 보관소
로그인
언리얼 학습 기록 보관소
로그인
메모리 영역
Woogle
·
2023년 2월 10일
팔로우
0
0
C++ 공부
목록 보기
9/28
📄 메모리
자료를 저장하는 공간
✏️ Code 영역
실행할 프로그램의 Code가 저장되는 영역 (= Text 영역)
CPU가 코드의 Text를 읽어서 처리
✏️ Data 영역
전역 변수
와
정적(Static) 변수
저장 영역
프로그램 시작 시 할당, 프로그램 종료 시 소멸
✏️ Heap 영역
낮은 주소에서 높은 주소 방향으로 할당 (↑)
사용자
에 의해 직접 관리되는 영역
동적
메모리 공간 (런타임에 크기가 결정)
선입선출 (FIFO)
Heap의 장단점
(상대적으로) 느린 액세스
변수를 전역적으로 액세스할 수 있음
메모리가 조각화되어 해제될 수 있음
메모리의 크기 제한이 없음
✏️ Stack 영역
함수의 호출과 관계되는
지역변수
와
매개변수
를 저장
높은 주소에서 낮은 주소 방향으로 할당 (↓)
정적
메모리 공간 (컴파일 타임에 크기가 결정)
후입선출 (LIFO)
Stack의 장단점
(상대적으로) 빠른 액세스
변수를 명시적으로 할당하거나 해제할 필요가 없음
CPU에 의해 공간이 효율적으로 관리되고, 메모리가 단편화되지 않음
변수의 크기를 조정할 수 없음 (OS에 따라 크기가 다름. Windows 32bit, 64bit)
이미지 출처
https://lxxyeon.tistory.com/70
https://www.javatpoint.com/stack-vs-heap-java
Woogle
노력하는 게임 개발자
팔로우
이전 포스트
디자인패턴 SOLID 원칙
다음 포스트
map, unordered_map
0개의 댓글
댓글 작성