CS/운영체제
메모리의 구조
5witch
2022. 5. 2. 21:57
사용자가 프로그램을 실행하면 프로그램 정보를 읽어서 메모리에 로드한다.
그러면 cpu는 프로그램 코드를 가져다 메모리를 관리하고 명령문을 실행한다.
컴퓨터의 운영체제는 프로그램의 실행을위해 메모리공간을 제공하는데,
메모리공간에는 크게 4가지 종류가 있다.
1. code
소스코드영역, 실행할 프로그램의 코드가 들어가는 영역이다.
텍스트 영역이라고도 부르며, CPU는 코드영역에 저장된 명력어를 하나씩 가져가서 처리한다.
2. data
data영역은 전역변수와 정적변수가 할당되는 공간이다.
데이터 영역은 프로그램의 시작과 함께 할당되며, 프로그램이 종료되면 소멸한다.
3. heap
사용자가 직접 관리하는 영역으로 사용하면서 데이터가 동적으로 할당되는 공간이다.
낮은주소의 메모리에서 높은 주소 방향으로 할당되며, 런타임에 크기가 결정된다.
4. stack
함수의 호출정보, 지역변수와 매개변수가 저장되는 공간이다.
컴파일 타임에 크기가 결정되며, 함수의 호출이 완료되면 소멸한다.