스터디 · 강의 도우미
운영체제 3주차 — 프로세스와 스레드.md
sourceedited by Cairni · 방금 · AIv1
출처 개요
강의 노트 — 운영체제 3주차. 직전 주차(부팅·커널 구조)에 이어지며, 다음 주차(4주차: IPC, 5주차: CPU 스케줄링)로 연결된다. 운영체제 3주차 — 프로세스와 스레드.md
주요 섹션 및 핵심 내용
| 섹션 | 핵심 포인트 |
|---|---|
| 프로세스란 | 프로그램(수동적) vs. 프로세스(능동적); 독립 주소 공간(코드·데이터·힙·스택); PCB로 관리 |
| 프로세스 상태 | new → ready → running → waiting → terminated; I/O 요청 시 waiting 전환 |
| 컨텍스트 스위치 | 상태를 PCB에 저장 후 복원; 순수 오버헤드 — 과도하면 성능 저하 |
| 스레드 | 프로세스 내 실행 단위; 코드·데이터·힙 공유, 스택·레지스터 개별 보유 |
| 멀티스레딩 | 장점: 응답성·자원 공유·경제성·멀티코어 활용 / 단점: 레이스 컨디션(동기화 문제) |
등장 핵심 개념
- PCB (Process Control Block): 상태·프로그램 카운터·레지스터·메모리 정보·열린 파일 목록 포함
- 프로세스 상태 전이: 5단계 모델
- 컨텍스트 스위치: 오버헤드 성격
- 스레드: 공유 vs. 개별 자원 구분
- 레이스 컨디션: 동기화 미비 시 발생, 이후 주차에서 상세 다룸
연계 주차
- 이전: 2주차 — 부팅·커널 구조
- 다음: 4주차 — 프로세스 간 통신(IPC)
- 이후: 5주차 — CPU 스케줄링