메모리 구조

Minjun_·2022년 1월 18일
0

OS

목록 보기
1/2
post-thumbnail

프로그램이 실행되기 위해서 메모리에 로드된 후 CPU 할당을 받아야한다.

또한, 프로그램에서 사용되는 변수들을 저장할 메모리도 필요하다.

code 영역

  • 실행할 프로그램의 코드가 저장되는 영역, text 영역이라고도 한다.
  • CPU는 이 영역에 저장된 명령어들을 하나씩 가져가서 처리하게 된다.

data 영역

  • 프로그램의 전역, 정적변수가 저장되는 영역이다.
  • 데이터영역은 프로그램의 시작과 함께 할당, 프로그램 종료시 소멸된다.

heap 영역

  • 사용자가 직접 관리할 수 있는 메모리 영역.
  • 사용자에 의해 메모리 공간이 동적으로 할당되고 해제된다.
  • 메모리의 낮은주소 -> 높은 주소의 방향으로 할당된다.

stack 영역

  • 함수 호출과 관계되는 지역 변수와 매개변수가 저장되는 영역.
  • 함수 호출과 함께 할당되며, 함수 호출이 완료되면 소멸한다.
  • Stack Frame : 스택 영역에 저장되는 함수의 호출 정보
  • push, pop 연산으로 데이터를 입출력한다.
  • LIFO(Last-In First-Out)구조
  • 가장 늦게 저장된 데이터가 가장 먼저 인출된다.
  • 메모리의 높은주소 -> 낮은 주소의 방향으로 할당된다.

출처

TCPSchool

profile
졸음을 이겨내자..!

0개의 댓글