메모리는 컴퓨터에서 데이터와 프로그램을 저장하는 공간입니다.
프로그램에서 사용되는 변수들을 저장할 메모리도 필요한데, 운영체제는 프로그램을 실행하기 위해 다양한 메모리 공간을 확보하고 있다.
커널영역
이라고 하며유저 영역
이라고 한다.코드 영역
, 데이터 영역
, 힙 영역
, 스택 영역
이 각자의 공간을 확보하고 있다.스택
은 데이터를 일시적으로 저장하는 공간으로,데이터의 추가와 삭제는 마지막에 추가된 데이터가 먼저 삭제되는 후입선출(Last-In-First-Out, LIFO)
구조입니다.
정적메모리 즉, 함수 호출이나 로컬(지역) 변수 등의 정보를 저장하기 위해 사용됩니다.
힙은 동적으로 할당되는 데이터를 저장하는 공간으로, 데이터의 추가와 삭제에 제약이 없습니다.
전역변수를 다루며 메모리가 동적으로 할당되어야 할 때 사용됩니다.
예를 들어, 프로그램 실행 중에 사용자로부터 입력받은 데이터나, 대용량 데이터 처리를 위해 동적으로 할당되는 배열 등이 힙에 저장됩니다.
메모리
, 스택
, 힙
은 컴퓨터 프로그래밍에서 중요한 개념이며, 프로그램이 메모리
를 어떻게 사용하는지 이해하는 것은 프로그래밍의 기초입니다.