프로세스란?
프로세스란 실행중인 프로그램입니다. 프로그램이 메모리에 적재되어 CPU를 할당받아 실행하는 것 입니다.
프로세스 메모리 구조
프로세스에 할당되는 메모리 공간은 Code, Data, Stack, Heap 4개의 영역으로 이루어져있습니다. 각 프로세스마다 독립적으로 메모리 공간을 할당 받습니다.
Code 영역 (Text)
사용자가 실행한 프로그램의 코드가 저장되는 메모리 영역
Data 영역 (Bss, GVAR)
전역변수 또는 static 변수가 저장되는 메모리 영역
Heap 영역
프로그래머가 동적으로 공간을 할당하거나 해제하는 메모리 영역 , runtime에 메모리 영역의 크기가 결정된다.
Stack 영역
함수 호출시 생성되는 데이터 (지역변수,매개변수, 리턴값)가 저장되는 임시 메모리 영역
'CS' 카테고리의 다른 글
트랜젝션(Transaction) (0) | 2022.05.03 |
---|---|
가상메모리(virtual memory) (0) | 2022.04.30 |
교착상태(DeadLock) (0) | 2022.04.22 |
스레드와 멀티스레드 (Thread & Multi Thread) (0) | 2022.04.18 |
멀티 프로세스(Multi process), Context 와 Context Switching (0) | 2022.04.14 |