728x90
반응형
1. 프로세스 정의
실행 중에 있는 프로그램을 의미
프로세스 내부에는 최소 하나의 스레드를 가지고 있으며 스레드 단위로 스케줄링
2. 프로세스 메모리 구조
- Stack 영역 : 지역변수, 매개변수, 리턴 값 등 사용되었다가 사라지는 데이터 저장 영역
- Heap 영역 : 동적할당을 위한 메모리 영역(C언어 - malloc, free, C++언어-new,delete, Java언어- GC가 해결)
- Data 영역 : 전역변수, static(정적) 변수, 배열, 구조체
- Code 영역 : 실행 파일 내의 명령어가 위치하는 곳, 기계어로 제어되는 메모리 영역
3. 프로세스 스케줄링
CPU를 사용하려고 하는 프로세스들 사이의 우선 순위 관리(CPU 할당 순서 및 방법 결정)
처리율과 이용률을 증가시키고 오버헤드, 응답시간, 반환시간, 대기시간을 최소화 시키는 방법
4. 프로세스 상태변화
- 준비(waiting) : I/O나 다른 이벤트가 발생하기를 기다리는 것, 작업이 끝나면 ready 상태로 돌아감
- 실행(running) : CPU가 해당 프로세스를 실행
- 대기/보류(blocked) : I/O 자원 요청 후 즉시 할당 받을 수 없어, 할당 될때까지 기다리는 상태
반응형
반응형
'운영체제' 카테고리의 다른 글
| [OS] 컴파일러 vs 인터프리터 (0) | 2020.12.23 |
|---|---|
| [OS] 운영체제란 (0) | 2020.12.22 |