본문 바로가기
Computer Science/운영체제

07. 프로세스 구조

by _S0_H2_ 2021. 7. 31.
728x90
반응형

1. 프로세스의 구조를 python, C 의 예로 살펴보자.

: 프로세스는 STACK, HEAP, DATA, CODE 네 가지 영역으로 구성된다. 우리가 프로그램에서 작성하는 코드는 PROCESS의 CODE영역에 binary 형식으로 mapping된다. DATA 영역에는 선언한 변수가 정적으로 mapping 되고, Stack에는 실행 순서대로 변수,값을 저장했다가 사용이 끝나면 삭제된다.

 

2. 프로세스의 구성


1 ) text (code) : 코드
2 ) data : 변수 / 초기화된 데이터

    - BSS : 초기값이 없는 전역변수 ( int data; )

    - DATA : 초기값이 있는 전역변수 ( int data=1; )
3 ) stack : 임시 데이터(함수 호출, 로컬 변수)
4 ) heap : 코드에서 동적으로 만들어지는 데이터

HEAP은 동적 메모리를 할당하기 위해서 사용한다. C에서 malloc로 사용할 만큼의 메모리 크기를 할당하고, free로 해제한다. 

 

728x90
반응형

'Computer Science > 운영체제' 카테고리의 다른 글

09. 프로세스와 IPC  (0) 2021.08.01
08. 프로세스와 Context Switching  (0) 2021.08.01
06. 인터럽트  (0) 2021.07.31
05. 프로세스 상태와 스케쥴러  (0) 2021.07.26
04. 스케줄링 알고리즘  (0) 2021.07.19