OS - 메모리 구조
OS - 메모리 구조
메모리 구조
| 영역 | 설명 |
|---|---|
| Code | 프로그램이 메모리에 올라올 때 컴파일된 기계어 코드가 저장되는 영역. |
| Data | 프로그램이 메모리에 올라올 때 정적(static), 전역(global) 변수가 저장되는 영역. |
| Heap | 런타임 도중 동적 할당되는 메모리 영역으로, 개발자가 명시적으로 생성(new, malloc) 및 해제해야 함. |
| Stack | 함수의 매개변수, 지역 변수, 반환값 등이 저장되는 영역으로, 함수 호출 시 자동으로 생성·해제됨. |
Heap은 낮은 주소에서 높은 주소 방향으로, Stack은 높은 주소에서 낮은 주소 방향으로 저장됨.
두 영역은 서로 마주보는 구조로 배치되어 있으며, 한쪽이 과도하게 커지면 서로의 영역을 침범하여 오류(예: 스택 오버플로우, 힙 오버플로우)가 발생할 수 있음.
This post is licensed under CC BY 4.0 by the author.
