Está en la página 1de 13

ARQUITECTURA

MULTIPROCESADOR
FUNDAMENTOS DE DESARROLLO DE SISTEMAS

DEFINICION
Un sistema multiproceso o multitarea es aquel que permite ejecutar
varios procesos de forma concurrente, la razn es porque
actualmente la mayora de las CPUs slo pueden ejecutar un
proceso cada vez. La nica forma de que se ejecuten de forma
simultnea varios procesos es tener varias CPUs (ya sea en una
mquina o en varias, en un sistema distribuido.
Se denomina multiprocesador a un computador que cuenta con
dos o ms microprocesadores (CPUs).
Gracias a esto, el multiprocesador puede ejecutar simultneamente
varios hilos pertenecientes a un mismo proceso o bien a procesos
diferentes

El multiproceso no es algo difcil de entender: ms


procesadores significa ms potencia computacional. Un
conjunto de tareas puede ser completado ms
rpidamente si hay varias unidades de proceso
ejecutndolas en paralelo. Esa es la teora, pero otra
historia es la prctica, como hacer funcionar el
multiproceso, lo que requiere unos profundos
conocimientos tanto del hardware como del software. Es
necesario
conocer
ampliamente
como
estn
interconectados dichos procesadores, y la forma en que el
cdigo que se ejecuta en los mismos ha sido escrito para
escribir aplicaciones y software que aproveche al mximo
sus prestaciones.

Para lograrlo, es necesario modificar varias facetas del


sistema operativo, la organizacin del cdigo de las
propias aplicaciones, as como los lenguajes de
programacin.

Se configuran dos computadoras de gran capacidad


interconectados electrnicamente entre si. Esta
configuracin recibe el nombre de multiproceso y se
caracteriza porque permite proceso de datos continuo
an en el caso de que surjan problemas de
funcionamiento en alguno de las computadoras.

ste es un modelo sencillo de un sistema de control de


trfico areo. Un conjunto de sensores distribuidos
recolecta la informacin del flujo de trfico y la procesa
localmente antes de enviarla al cuarto de control. Los
operadores toman decisiones utilizando esta informacin
y dan instrucciones a un proceso de control de diversas
luces de trfico. En este ejemplo existen varios procesos
lgicos para administrar los sensores, el cuarto de
control y las luces de trfico. Estos procesos lgicos son
procesos sencillos a un grupo de procesos. En este
ejemplo se ejecutan en procesadores diferentes.

Los sistemas de software compuestos de


procesos mltiples no necesariamente son
sistemas distribuidos. Si ms de un procesador
est disponible, entonces se puede implementar
la distribucin, pero los diseadores del sistema
no siempre consideran lo puntos de distribucin
durante el proceso de diseo. El enfoque de
diseo para este tipo de sistemas es
esencialmente el mismo que para los de tiempo
real.

Ventajas & Desventajas


VENTAJAS

DESVENTAJAS

Es econmica.

La limitante fsica

El uso de componentes
comnmente disponibles

Barreras fsicas infranqueables,


tales como la velocidad de la luz

Las computadoras paralelas son


inherentemente escalables,
Una arquitectura paralela se
puede actualizar en trminos de
rendimiento simplemente
agregando ms procesadores.

Los ordenadores multiprocesador presentan problemas de


diseo que no se encuentran en ordenadores
monoprocesador. Estos problemas derivan del hecho de
que dos programas pueden ejecutarse simultneamente 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 direccin de memoria, lo
hace nicamente sobre su copia local en cach. Si otro
microprocesador tiene almacenada la misma direccin 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 diseado para ello. La
mayora de los sistemas operativos actuales poseen esta
capacidad.

Memoria Central

Compartida por todos los procesadores, y accesible


desde cualquiera.
tambin llamados multiprocesadores simtricos:
Symmetric (shared memory)
Multiprocessors.
Descompuesta en varios mdulos, para permitir el
acceso concurrente de varios procesadores.
Cada procesador debe tener un espacio de
direccionamiento suficientemente amplio como para
poder direccionarla completamente.
El tiempo de acceso a memoria es el mismo,
independientemente del par procesador memoria que
intervenga.
Tambin llamadas arquitecturas UMA: Uniform
Memory Access.

Red de Interconexin
Entre procesadores y memoria:
o Cualquier procesador debe poder acceder a cualquier
modulo de memoria.
o El que un procesador acceda a un modulo de memoria
no deber impedir que otro procesador acceda un
modulo de memoria distinto.
o Configuraciones:
o Bus comn
o Mltiples buses.
o Crossbar
o Redes Multietapa.

tiempo de acceso a memoria?

Suma de:
Tiempo de acceso del modulo.
Retardo de la red de interconexin.
Retardo debido a conflictos de acceso al modulo de memoria.
Retardo debido a conflictos de acceso en la red de interconexin.
hay conflictos de acceso a los mdulos de memoria y red de
interconexin.
necesidad de circuitos de arbitraje en la red de interconexin y
memoria.
Tiempo de acceso elevado.
Problema tanto mas grave cuantos mas procesadores hayan.

Como reducir el tiempo de acceso a


memoria?
Antememorias locales a cada procesador.
Problema de la coherencia entre las antememorias.

También podría gustarte