COMPUTER
-
_Process_memory_structureProgramming/_Common 2023. 9. 19. 16:01
프로그래밍을하면 변수의 타입에 따라 변수가 위치할 메모리 섹션이 결정된다. 배열과 객체는 힙영역, 내장 기본 타입의 변수는 스택영역에 할당된다. 메모리 구조를 모른채로 프로그래밍을 하기도 하지만, C++에서는 선언하는 변수에 따라 변수가 위치하는 메모리 섹션이 달라져서 그에 따라 성능에 유의미한 차이를 만든다고 한다. (OS가 가상메모리를 제어한다.) 위의 그림은 32bit 프로세서 메모리 구조로 32bit 시스템에서는 메모리 주소가 32bit로 표현된다. 커널 메모리가 1 ~ 2 GB를 차지하기 때문에 실제로 유저 영역의 메모리 크기는 2 ~ 3 GB이다. 각 박스는 메모리 섹션 또는 세그먼트라고 부른다. 힙(Heap) 힙은 프로세스가 동작하며 동적으로 할당, 해제되는 메모리 섹션이다. OS에서 가용 ..