속도 빠른 core 1개 vs 조금 느린 core n개
- CPU는 매우 빠른 연산능력 가진 반면 주변기기는 이를 못따갈 만큼 느림
- 단순 입출력 대기때문에 CPU가 놀수 있음
- CPU의 연산 속도는 클럭 속도에 따라 결정되지만 한계가 있기에 Core개수를 늘려 조합하는 형태로 발전
- 멀티태스킹 환경에서 CPU 사용 효율을 극대화 가능
멀티스레딩 vs 멀티프로세싱
| 싱글 프로세스 + 멀티스레딩 | 멀티 프로세스 + 싱글 스레딩 |
|---|---|
| 한 프로세스에 모든 스레드가 종속되어 같은 가상 메모리 공간 공유(IPC 불필요) | 각각 프로세스는 개별 가상 메모리 공간 및 접근 권한 별로도 가짐 |
| 프로세스에 할당된 접근 권한을 모든 스레드가 공유 | 각 프로세스간 통신 시 IPC 기술 적용 |
| 한 스레드 오류 시 프로세스가 종료 될 수 있음 | 오류는 각 프로세스 수준에서 통제 될 수 있음 |