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