Blogia
Multiprocesadores y Multicomputadores

Multiprocesadores

Multiprocesadores Se denomina multiprocesador a un ordenador que cuenta con dos o más microprocesadores (CPUs) compartiendo memoria y periféricos. Las ventajas más evidentes son mayor potencia de computación y fiabilidad.

Podemos clasificar en sistemas multiprocesadores simétricos, en el cual cada procesador corre una copia idéntica del sistema operativo y se comunica con los demás procesadores según sus necesidades; o multiprocesadores asimétricos, en los cuales cada procesador tiene asignado una tarea predefinida. Un procesador maestro controla el sistema.

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.

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.

6 comentarios

francesco -

La implementación de plataformas multiprocesador se ha convertido en la mejor solución cuando se requiere alta capacidad de proceso. Sin embargo, se suele incurrir en gastos innecesarios, cuando no se determina las necesidades de red y aplicaciones que se utilizaran. Hay que estar claro que esta es una tecnología que se usa cuando se requiere ejecutar muchos procesos en paralelo o en su defectos que la capacidad de respuesta sea inmediata, para lo que tendríamos que dividir un proceso en pequeñas partes y enviarle cada una a cada procesador disponible. Hoy en día exitenten soluciones mas económicas y accesibles al publico en general, con el surgimiento de los procesadores DUAL – CORE que lanzo al mercado Intel, y que mas tarde lanzo su contraparte AMD. Aunque se trata de un procesador físico, este posee 2 núcleos que se comportan como 2 procesadores individuales, ofreciendo casi los mismos beneficios de un implementación tradicional. Así mismo, ya se encuentra en el mercado los procesadores QUAD – CORE de Intel, que emulan a 4 procesadores individuales; su precio oscila por los 1000 $.

Yetsyka dominguez -

Es difícil dar una definición exacta de un sistema multiprocesador, aunque podemos establecer una clasificación de los sistemas de procesadores en:

SISD o secuencia única de instrucciones y datos (Single Instruction, Single Data): una sola secuencia de instrucciones opera sobre una sola secuencia de datos (caso típico de los ordenadores personales).
SIMD o secuencia única de instrucciones y múltiple de datos (Single Instruction, Multiple Data): una sola secuencia de instrucciones opera, simultáneamente, sobre múltiples secuencias de datos (array processors).
MISD o múltiples secuencias de instrucciones y única de datos (Multiple Instruction, Single Data): múltiples secuencias de instrucciones operan, simultáneamente, sobre una sola secuencia de datos (sin implementaciones útiles actualmente).
MIMD o múltiples secuencias de instrucciones y datos (Multiple Instruction, Multiple Data): múltiples secuencias de instrucciones operan, simultáneamente, sobre múltiples secuencias de datos.

Los sistemas multiprocesadores pueden ser clasificados con mayor propiedad como sistemas MIMD. Ello implica que son máquinas con múltiples y autónomos nodos de proceso, cada uno de los cuales opera sobre su propio conjunto de datos. Todos los nodos son idénticos en funciones, por lo que cada uno puede operar en cualquier tarea o porción de la misma.

Yaneth De Abreu -

Cuando un sistema informático tiene más de un único procesador, aparecen varios elementos nuevos en el diseño de la tarea de planificación. Se va a comenzar con una breve introducción a los multiprocesadores y, después, se estudiarán las distintas consideraciones a tener en cuenta para llevar a cabo la planificación en el nivel de los procesos o en el nivel de los hilos.

Los sistemas multiprocesador pueden clasificarse de la siguiente manera:

ð Agrupación o multiprocesador débilmente acoplado o distribuido: consiste en una colección de sistemas relativamente autónomos, cada procesador tiene su propia memoria principal y canales de E/S.

ð Procesadores funcionalmente especializados: en este caso hay un procesador principal de propósitos generales y procesadores especializados que son controlados por el procesador principal y le proveen servicios a él. Un ejemplo es el procesador de E/S.

ð Multiprocesamiento fuertemente acoplado: consiste en un grupo de procesadores que comparten una memoria principal en común y están bajo el control integrado de un sistema operativo.

Eiro Medina -

aqui un poco de historia sobre los multiprosesadores.
El concepto de trabajo en equipo, el dividir una tarea entre varias unidades de ejecución para que pueda completarse más rápidamente, fue naturalmente llevado al mundo de las computadoras prácticamente desde sus inicios. David Slotnick, quien fuera colaborador de Von Neumann, le hizo la propuesta de una máquina que contara con varias unidades de procesamiento central; sin embargo, al sentir de Von Neumann, la tecnología de la época no permitía la realización de semejante proyecto. Aun así, Slotnick continuó con sus ideas, lo que eventualmente daría origen a la ILLIAC IV (1964), considerada una de las primeras computadoras masivamente paralelas de la historia. En la actualidad, las computadoras más rápidas del mundo son las máquinas masivamente paralelas.

Willian Lopez -

En Resumen se puede decir que la función de un Multiprocesador no es mas que la de dividir una tarea en varias unidades de ejecución para que pueda completarse de manera mas rápida, es decir, puede ser completada rapidamente si hay varias unidades de proceso ejecutándolas en paralelo. Esto trae como ventaja el aumento de la potencia computacional.

Albert -

Es muy importante cuándo nosotros hablamos de multitarea, monotarea, multiusuario y monousuario porque estos términos nos ayudan a tener una comprensión de como los SO's manejan internamente los procesos de ususario, independientemente de las políticas que los SO's implementen para atender a los procesos. Si es un SO monotarea solo puede atender un proceso a la vez, que ocupa a su vez toda la memoria, si es multitarea, aproximandonos ya a un SO tradicional actual puede ajecutar más de un proceso de usuario a la vez etc... Pienso que un ejemplo muy importante de multiprocesamiento lo vemos reflejado en el proyecto GNU / HURD de Richard Stallman, que como mencioné anteriormente es multitarea, que hace mención a su característica escalable a través de su multiprosesamiento simétrico al ejecutar tareas simultaneas compartidas entre los procesadores que se encuentren en una misma tarjeta madre y adaptable a estándares como ANSI/ISO, BSD, POSIX, Single Unix, SVID, y X/Open.