Multiprocesador

computador que te permite abrir programas en más de una CPU

Se denomina multiprocesador a un computador que te permite abrir programas en más de una CPU

Gracias a esto, el multiprocesador puede ejecutar simultáneamente varios hilos pertenecientes a un mismo proceso o bien a procesos diferentes.

Los ordenadores multiprocesador presentan problemas de diseño que no se encuentran en ordenadores monoprocesador. Estos problemas derivan del hecho de que dos programas pueden ejecutarse simultáneamente y, potencialmente, pueden interferirse entre sí. Concretamente, en lo que se refiere a las lecturas y escrituras en memoria. Existen dos arquitecturas que resuelven estos problemas:

  • La arquitectura UMA, donde todos los procesadores comparten toda la memoria de forma simétrica.
  • La arquitectura NUMA, donde cada procesador tiene acceso y control exclusivo a una parte de la memoria. Por lo que el acceso a esta memoria no es simétrico entre todos los CPU.
  • La arquitectura COMA, donde cada procesador tiene acceso y control exclusivo a una parte de la memoria caché.
  • Arquitectura UMA
    Arquitectura UMA
  • Arquitectura NUMA
    Arquitectura NUMA
  • Arquitectura COMA
    Arquitectura COMA

Esta última debe lidiar con el problema de la coherencia de caché. Cada microprocesador cuenta con su propia memoria caché local. De manera que cuando un microprocesador escribe en una dirección de memoria, lo hace únicamente sobre su copia local en caché. Si otro microprocesador tiene almacenada la misma dirección de memoria en su caché, resultará que trabaja con una copia obsoleta del dato almacenado.

Para que un multiprocesador opere correctamente necesita un sistema operativo especialmente diseñado para ello. La mayoría de los sistemas operativos actuales poseen esta capacidad.

Véase también

editar