Existen similitudes entre los sistemas multiprocesadores y
multicomputadores debido a que ambos fueron pensados con un mismo
objetivo: dar soporte a operaciones concurrentes en el sistema. Sin
embargo, existen diferencias importantes basadas en el alcance de los
recursos compartidos y la cooperación en la solución de un problema.
Un sistema multicomputador consiste de diversas computadoras
autónomas que pueden o no comunicarse entre sí.
Un sistema multiprocesador está controlado por un sistema operativo
que provee la interacción entre losprocesadores y sus programas a
nivel de dato, proceso y archivo
Caracteristicas
Multiprocesadores
Tiene dos o más procesadores similares de capacidades comparables.
Los procesadores comparten la memoria principal y la E/S, y
están interconectados mediante un bus u otro tipo de sistema de
interconexión, de manera que el tiempo de acceso a memoria es
aproximadamente el mismo para todos los procesadores.
Todos los procesadores comparten los dispositivos de E/S, pero pueden
hacerlo bien a través de los mismos canales, o bien a través de otros
caminos de acceso al mismo dispositivo.
El sistema está controlado por un sistema operativo que posibilita la
interacción entre los procesadores y sus programas.
A los multiprocesadores también se les suele llamar fuertemente acoplados
Multicomputadoras
La memoria es privada (es decir, cada procesador tiene un mapa de direcciones
propio que no es accesible directamente a los demás).
La comunicación entre procesadores es por paso de mensajes a través de una red
de interconexión.
En un multicomputador, cada nodo es una computadora clásica.
Los nodos colaboran para resolver juntos un mismo problema (ejecutar la misma
aplicación).
La compartición de datos es explícita, ya que el acceso a datos comunes es por
paso de mensajes.
Desventajas
Multiprocesadores
Son necesarias técnicas de sincronización para controlar el acceso a las
variables compartidas.
La contención en la memoria puede reducir significativamente la
velocidad del sistema.
No son fácilmente ampliables para acomodar un gran número de
procesadores.
Poca estabilidad de procesadores.
Multicomputadoras
Acceso remoto a memoria es lento.
Programación complicada.
Se necesitan técnicas de sincronización para acceder a las variables compartidas.
La memoria es privada.
Ventajas
Multiprocesadores
Las tareas tanto del sistema operativo como de los usuarios
pueden ser distribuidas en forma balanceada todos a todos los
procesadores.
Facilidad de programación.
Tiempo de inactividad mínima.
Respuesta contra fallos.
Mayor portabilidad.
Localización.
Fácil sincronización de datos.
Procesos simultáneos.
Reduce la varianza entre los sistemas.
Multicomputadoras
Facilita crear un hilo emergente.
No tiene problema de consistencia ni de coherencia de caché.