컴퓨터 구조 시간때 배웠듯이 프로그램이 메모리에 올라가면 다음과 같은 구조로 메모리가 할당되고 실행이 된다.
- 디스크에 저장되어 있는 프로그램이 메모리에 올라가게 된다.
- 메모리에는 크게 코드, 스택, 힙 영역이 있다.
이를 리눅스에서 확인해보려면 다음과 같은 명령어를 사용하면 된다.
cat /proc/self/maps
- 이 명령어가 뜻하는 바는
cat
이라는 프로그램을 실행했을 때의 메모리 구조를 의미한다. - 여기서
self
는 자기 자신을 의미한다.
- 위에서부터 코드 영역, 힙 영역, 스택이 메모리에 할당되어 있는 것을 확인할 수 있다.
- 개념으로만 알고 있던 것을 실제로 눈으로 확인해보니까 더 와닿았다.