1. BSS와 Data 영역
- 프로세스 구조에서 Data 영역은 BSS와 Data 영역으로 나뉜다.
a) BSS
- 초기화 값이 없는 전역변수를 의미한다.
b) Data
- 초기화 값이 있는 전역변수를 의미한다.
2. 코드를 통해서 살펴보자
- 예제 코드
int global_data1; //초기화 값이 없는 변수
int global_data2 = 1; // 초기화 값이 있는 변수
int main()
{
int *data;
data = (int *) malloc(sizeof(int));
*data = 1;
printf("%d\n", *data);
return 0;
}
- 프로세스
- 딱 두가지만 확인하자.
- main 함수 내부에 있는 변수(= 지역변수)는 Stack에 쌓인다.
- main 함수 밖에 있는 변수(= 전역변수)는 초기값의 유무에 따라서 BSS 또는 Data에 쌓인다.
'컴퓨터공학기초 개념 > 운영체제' 카테고리의 다른 글
18. 프로세스 - IPC의 개념 (0) | 2021.04.21 |
---|---|
17. 프로세스 구조 - 컨텍스트 스위칭(context switching) (0) | 2021.04.20 |
15. 프로세스 구조(3) - Heap (0) | 2021.04.14 |
14. 프로세스 구조(2) - Stack (0) | 2021.04.13 |
13. 프로세스 구조(1) (0) | 2021.04.09 |
댓글