대칭형 다중 처리
대칭형 다중 처리(Symmetric Multiprocessing, SMP)는 둘 이상의 동일한 프로세서를 단일 공유 주 기억 장치에 연결하여 사용하는 컴퓨터 아키텍처입니다. 이 시스템에서 모든 프로세서는 운영 체제 및 사용자 응용 프로그램을 포함한 모든 작업을 실행할 수 있으며, 모든 프로세서는 메모리와 입출력 장치에 동등하게 접근할 수 있습니다. 이는 비대칭 다중 처리(Asymmetric Multiprocessing, AMP)와 대조되는 특징입니다.
SMP 시스템은 여러 프로세서가 동시에 작업을 처리함으로써 전반적인 시스템 성능을 향상시킵니다. 특히, 병렬 처리가 가능한 응용 프로그램에서 그 효과가 두드러집니다. 운영 체제는 프로세서 간에 작업을 효율적으로 분배하여 시스템 자원 활용도를 극대화합니다.
SMP의 주요 이점은 다음과 같습니다.
- 향상된 성능: 여러 프로세서가 동시에 작업을 처리하여 응용 프로그램 실행 속도를 향상시킵니다.
- 높은 가용성: 하나의 프로세서에 장애가 발생하더라도 다른 프로세서가 작업을 대신 처리하여 시스템 중단을 최소화합니다.
- 자원 공유: 모든 프로세서가 메모리와 입출력 장치를 공유하므로 시스템 자원 활용도를 높일 수 있습니다.
- 확장성: 필요에 따라 프로세서를 추가하여 시스템 성능을 확장할 수 있습니다.
하지만 SMP 시스템은 다음과 같은 단점도 가집니다.
- 복잡한 설계: 프로세서 간의 동기화 및 통신을 관리하기 위한 복잡한 설계가 필요합니다.
- 공유 자원 경쟁: 프로세서들이 공유 자원에 동시에 접근하려고 할 때 경쟁이 발생하여 성능 저하를 초래할 수 있습니다.
- 확장성 제한: 프로세서 수가 증가함에 따라 공유 버스 또는 메모리 시스템의 대역폭 제한으로 인해 성능 향상이 제한될 수 있습니다.
SMP는 서버, 워크스테이션, 데스크톱 컴퓨터 등 다양한 컴퓨팅 환경에서 널리 사용되고 있습니다. 현대 운영 체제는 대부분 SMP를 지원하며, 멀티 코어 프로세서의 등장으로 인해 SMP 아키텍처는 더욱 보편화되었습니다.