Thread 1
Stack 1 · Register set 1 · PC 1
프로세스는 자원 소유 단위, 스레드는 CPU가 실행하는 흐름 단위로 구분한다.
Stack 1 · Register set 1 · PC 1
Stack 2 · Register set 2 · PC 2
Stack 3 · Register set 3 · PC 3
| 구분 | 프로세스 | 스레드 |
|---|---|---|
| 핵심 역할 | 자원을 소유하는 독립 실행 단위 | 프로세스 안에서 CPU가 실행하는 흐름 |
| 자원 공유 | 대체로 독립된 주소 공간 | 같은 프로세스의 코드, 데이터, 힙 공유 |
| 문맥 교환 비용 | 상대적으로 큼 | 상대적으로 작음 |
| 주의점 | 프로세스 간 통신은 별도 IPC가 필요 | 공유 데이터 동기화 문제가 생길 수 있음 |