El multiprocesamiento (MP) es la utilización de dos o más unidades centrales de procesamiento (CPU) dentro de un único sistema informático. Este término se refiere tanto a la capacidad de un sistema para soportar más de un procesador como a la habilidad de distribuir tareas entre ellos para optimizar el rendimiento y la eficiencia.
Definición y Contexto
Un multiprocesador es un sistema informático que posee dos o más CPUs que comparten la memoria principal y los periféricos para procesar programas de manera simultánea. Dependiendo del contexto, la definición de multiprocesamiento puede variar según cómo se defina el procesador: ya sea como núcleos múltiples en una sola pastilla de silicio (multi-core), múltiples pastillas en un solo encapsulado o múltiples encapsulados en una unidad de sistema.
Multiprocesamiento vs. Multitarea
A nivel de sistema operativo, es común confundir el multiprocesamiento con la multitarea. Mientras que la multitarea puede utilizar un solo procesador alternando el tiempo de ejecución entre diversas tareas (time-sharing), el multiprocesamiento implica la ejecución paralela real de múltiples procesos utilizando más de un procesador.
Tipos de Simetría de Procesadores
En un sistema de multiprocesamiento, las CPUs pueden ser iguales o estar reservadas para propósitos especiales, lo que determina la simetría del sistema:
- Multiprocesamiento Simétrico (SMP): Sistemas que tratan a todas las CPUs por igual, distribuyendo la carga de trabajo de manera equitativa.
- Multiprocesamiento Asimétrico (ASMP): Sistemas donde las CPUs no son iguales; algunas pueden tener roles específicos o privilegios restringidos.
Sistemas Maestro/Esclavo
En un sistema de multiprocesador maestro/esclavo, una CPU maestra controla la computadora y las CPUs esclavas realizan las tareas asignadas. Estas CPUs pueden diferir significativamente en velocidad y arquitectura. Un ejemplo histórico es el TRS-80 Model 16, que utilizaba un Zilog Z80 como maestro inicial para luego transferir el control al Motorola 68000, quedando el Z80 encargado de las operaciones de entrada y salida (I/O).
Flujos de Instrucciones y Datos
Según la taxonomía de Flynn, los multiprocesadores se clasifican según cómo manejan las instrucciones y los datos:
| Tipo | Descripción |
|---|---|
| SIMD (Single Instruction, Multiple Data) | Una sola secuencia de instrucciones se ejecuta en múltiples contextos (común en el procesamiento de vectores). |
| MISD (Multiple Instruction, Single Data) | Múltiples secuencias de instrucciones actúan sobre un único dato (utilizado principalmente para redundancia en sistemas críticos). |
| MIMD (Multiple Instruction, Multiple Data) | Múltiples secuencias de instrucciones se ejecutan en múltiples contextos (la categoría donde entran la mayoría de los multiprocesadores modernos). |
Acoplamiento de Procesadores
Los sistemas se dividen generalmente en sistemas fuertemente acoplados, donde los procesadores comparten la memoria principal y el reloj del sistema, y sistemas débilmente acoplados, donde cada procesador tiene su propia memoria local y se comunican mediante el paso de mensajes.

