두개 이상 다수의 프로세서(CPU)가 협력적으로 하나 이상의 작업(Task)을 동시에 처리하는 것이다.
각 프로세스 간 메모리 구분이 필요하거나 독립된 주소 공간을 가져야 할 경우 사용한다.
독립된 구조로 구성되어 있기 때문에 안전성이 높은 장점이 있다.
즉, 프로세스 중 하나에 문제가 생겨도 다른 프로세스에 영향을 주지 않아 작업속도가 느려지는 문제는 생기지만 정지되거나 하는 문제는 생기지 않는다.
여러개의 프로세스가 처리되어야 할 때 동일한 데이터를 사용하고, 이러한 데이터를 하나의 디스크에 두고 모든 프로세서(CPU)가 이를 공유하면 비용적으로 저렴하다.
CPU에서는 하나의 프로세스만 처리 할 수 있기 때문에 너무 잦은 context-switching 이 일어날 경우 캐시 메모리를 pcb에 저장해야하는 멀티프로세싱의 구조상 오버헤드가 발생하여 성능저하가 발생 할 수 있다.
한마디로 정의하자면, 오버 헤드는 특정 기능을 수행하는데 드는 간접적인 시간, 메모리 등 자원을 말한다.