멀티프로세서 시스템 (Multiprocessor System)
Jan 25, 2026
핵심 개념
섹션 제목: “핵심 개념”멀티프로세서 시스템은 두 개 이상의 프로세서를 가지며, 컴퓨터 버스와 때로는 클럭, 메모리, 주변 장치를 공유하는 시스템이다.
현대 컴퓨터는 모바일 장치부터 서버까지 멀티프로세서 시스템이 컴퓨팅 환경을 지배한다.
주요 장점
섹션 제목: “주요 장점”처리량(throughput) 증가 - 프로세서 수를 늘려 더 적은 시간에 더 많은 작업을 수행할 수 있다.
단, N개 프로세서의 속도 향상 비율은 N보다 작다:
- 여러 프로세서가 협력할 때 오버헤드 발생
- 공유 자원 경합(contention) 발생
대칭 멀티프로세싱 (SMP)
섹션 제목: “대칭 멀티프로세싱 (SMP)”가장 일반적인 멀티프로세서 시스템 구조:
| 특징 | 설명 |
|---|---|
| 대등한 CPU | 모든 CPU가 운영체제 기능과 사용자 프로세스 수행 |
| 개별 레지스터 | 각 CPU가 자체 레지스터와 로컬 캐시 보유 |
| 공유 메모리 | 모든 프로세서가 시스템 버스를 통해 물리적 메모리 공유 |
멀티코어 (Multicore)
섹션 제목: “멀티코어 (Multicore)”단일 칩에 여러 컴퓨팅 코어가 상주하는 구조.
멀티코어가 여러 단일 코어 칩보다 효율적인 이유:
- 통신 속도: 칩 내 통신이 칩 간 통신보다 빠름
- 전력 소비: 전력 소비가 적음 (모바일 장치에 중요)
듀얼 코어 설계에서 각 코어는 자체 L1 캐시를 가지고, L2 캐시는 두 코어가 공유한다.
NUMA (Non-Uniform Memory Access)
섹션 제목: “NUMA (Non-Uniform Memory Access)”각 CPU(또는 CPU 그룹)에 자체 로컬 메모리를 제공하는 구조:
| 장점 | 단점 |
|---|---|
| 로컬 메모리 접근이 빠름 | 원격 메모리 접근 시 지연 증가 |
| 시스템 인터커넥트 경합 없음 | |
| 프로세서 확장에 효과적 |
용어 정의
섹션 제목: “용어 정의”| 용어 | 설명 |
|---|---|
| CPU | 명령어를 실행하는 하드웨어 |
| Processor | 하나 이상의 CPU를 포함하는 물리적 칩 |
| Core | CPU의 기본 연산 단위 |
| Multicore | 동일 CPU에 여러 컴퓨팅 코어 포함 |
| Multiprocessor | 여러 프로세서 포함 |
- Operating System Concepts, 10th Edition, Chapter 1, p.15-19
관련 개념
섹션 제목: “관련 개념”- 분산 시스템 (Distributed System) - 메모리를 공유하지 않는 프로세서들의 집합으로, 멀티프로세서와 대비되는 구조
- VMM CPU 스케줄링 (VMM CPU Scheduling) - 멀티프로세서 환경에서 가상 CPU를 물리 CPU에 매핑하는 스케줄링
- 가상화 (Virtualization) - 멀티프로세서 하드웨어를 여러 가상 환경으로 분할하는 기술
- 분산 시스템의 확장성 (Scalability) - 프로세서 추가를 통한 수평 확장과 관련된 설계 원칙