////
Search
Duplicate

프로세스의 메모리 구조 - 주현

프로세스의 메모리 구조

가상 메모리 또는 논리적 메모리

스택과 힙

동적 할당
런타임 단계에서 메모리를 할당 받는 것

스택

지역 변수, 매개변수, 실행되는 함수에 의해 늘어나거나 줄어드는 메모리 영역
함수가 호출될 떄마다 호출될 의 환경 등 특정 정보가 스택에 계속해서 저장
재귀함수 사용 시 새로운 스택 프레임을 매번 사용하기 때문에 다른 인스턴스 변수를 방해 X
참고

동적으로 할당받는 변수
malloc(), free() 함수를 통해 관리
동적으로 관리받는 자료 구조의 경우 힙 영역 사용
참고
스택과 힙 차이

데이터 영역과 코드 영역

정적 할당
컴파일 단계에섯 메모리를 할당하는 것

데이터 영역

BSS segment
전역 변수 또는 static, const로 선언되어 있고 0으로 초기화 또는 초기화가 어떤 값으로도 되어 있지 않은 변수들이 할당되는 곳
Data segment
전역 변수 또는 static, const로 선언되어 있고 0이 아닌 값으로 초기화된 변수가 할당되는 곳
참고
code/text segment
프로그램의 코드
사용자가 작성한 프로그램 함수들의 코드가 CPU에서 수행할 수 있는 기계어 명령 형태로 변환되어 저장되는 공간
참고