Los multiprocesadores son un conjunto de
procesadores interconectados, diseñados para la ejecución conjunta de
aplicaciones. 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 NUMA, donde cada
procesador tiene acceso y control exclusivo a una parte de la memoria.
- La
arquitectura SMP, donde todos
los procesadores comparten toda la memoria.
Esta última debe
lidiar con el problema de la coherencia de caché. Cada microprocesador
cuenta con su propia memoria cache 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.
Ventajas:
·
Para
programas que utilizan mucho la memoria compartida el uso adecuado de los datos
globales en la caché local puede acelerar mucho la ejecución.
·
Los
procesadores comerciales actuales suelen disponer de extensiones hardware que soportan
la coherencia de memoria caché, abaratando la construcción de multiprocesadores
de pocos procesadores.
Desventajas:
Coste
del hardware, especialmente del sistema de coherencia de memoria caché.
Sigue este enlace y conseguiras toda la informacion del contenido.!!!
http://www.mediafire.com/?73qcyjo7ipe3c8u
No hay comentarios:
Publicar un comentario