1. 프로세스 개요


1-1. PCB(프로세스 제어 블록)

1-2. 문맥 교환

<aside> ❕

문맥 교환을 너무 자주하면 오버헤드가 발생할 수 있음

</aside>

1-3. 프로세스의 메모리 영역

<aside> ❕

일반적으로 힙 영역은 메모리 낮은 주소부터, 스택 영역은 높은 주소부터 할당되어서 겹칠 일이 없음

</aside>

분류(커널/사용자) 분류(정적/동적) 사용자 영역 분류 역할
커널 영역 - - -
사용자 영역 정적 할당 영역 코드(텍스트) 영역 기계어로 이루어진 명령어 저장(읽기 전용)
데이터 영역 프로그램이 실행되는 동안 유지할 데이터 저장 ex. 전역변수
동적 할당 영역 힙 영역 개발자가 직접 할당할 수 있는 저장공간 (메모리 누수 조심)
스택 영역 데이터를 일시적으로 저장하는 공간 ex. 매개변수, 지역변수

2. 프로세스 상태와 계층 구조