Está en la página 1de 22

Coplanificacion

3.5 Coplanificacion.

Por lo general, cada procesador hace su


planificacin local (si tiene varios
procesos en ejecucin), sin preocuparse
por
lo
que
hacen
los
dems
procesadores. Sin embargo, si un grupo
de procesos relacionados entre s y con
gran interaccin se ejecutan en distintos
procesadores,
la
planificacin
independiente no es el camino ms
eficiente.

Lo que se necesita es una forma de


garantizar que los procesos con
comunicacin frecuente se ejecuten de
manera
simultnea.
Aunque es difcil determinar en forma
dinmica los patrones de comn entre
los procesos, en muchos casos, un grupo
de procesos relacionados entre s
iniciarn
juntos.

Ousterhout
(1982)
propuso
varios
algoritmos con base en un concepto
llamado coplanificacin, el cual toma en
cuenta los patrones de comunicacin
entre
los
procesos
durante
la
planificacin para garantizar que todos
los miembros de un grupo se ejecutan al
mismo tiempo.

La esencia de esta idea es que cada


procesador utilice un algoritmo de
planificacin round-robin,

Si todos los miembros de un grupo se


colocan en el mismo numero de espacio,
pero en procesadores distintos, se tiene
la ventaja del paralelismo de nivel N, con
la garanta de que todos los procesos se
ejecutarn al mismo tiempo, lo cual
maximiza
el
desempeo
de
Ia
comunicacin.

As, en la figura 4-20(b), los cuatros


procesos que se deben comunicar entre
s tendran que colocarse en el espacio 3
de los procesadores 1, 2,3 y 4, para
obtener un desempeo ptimo.

TOLERANCIA A FALLOS

Tolerancia a Fallos
Se dice que un sistema falla cuando no se
cumple la especificacin que este tiene
Las fallas en diversos sistemas distribuidos pueden traer consigo
lo que en el mundo comercial se le conoce como perdidas,
ejemplificando esto se tiene un sistema de ventas distribuido. La falla en
dicho sistema vendra a afectar en gran manera a la empresa en cuanto
que se pierden ventas y dinero, mientras se presenta tal falla; por lo
consiguiente es una prioridad evitar tales fallas.

Fallos?
Fichero corrupto almacenado en el disco.
Consecuencia: avera en el sistema que utiliza el fichero.
Qu provoc el fallo?

Error en el programa que escribi el fichero (fallo de diseo).


Problema en la cabeza del disco (fallo en el componente).
Problema en la transmisin del fichero por la red (fallo HW)

El error en el sistema podra ser corregido (cambiando el fichero) pero los fallos
podran permanecer.
Importante distinguir entre fallos y errores.

Mas Fallos?
Explosin del Ariane 5 en 1996
Enviado por la ESA en junio de 1996 (fue su primer viaje)

Coste del desarrollo: 10 aos y 7.000 millones de dlares.


Explot 40 seg. Despus del despegue a 3.700 metros de altura.
El fallo se debi a la prdida total de la informacin de altitud.
Causa: error del diseo software.

El SW del sistema de referencia inercial realiz la conversin de un valor real en coma


flotante de 64 bits a un valor entero de 16 bits. El nmero a almacenar era mayor de 32.767
(el mayor entero con signo de 16 bits) y se produjo un fallo de conversin y una excepcin.

Clasificacin de fallas
FALLA DE COMPONENTES:
Qu es una Falla?
Es un desperfecto, causado ya sea por un error de diseo, de
fabricacin, de fabricacin, programacin, dao fsico, deterioro por el paso de
tiempo, condiciones ambientales adversas, entradas inesperadas, entre otras
muchas.

Fallas

Transistorias

Intermitentes

Permanentes

Falla de Componentes
FALLAS TRANSITORIAS:
Estas ocurren cuando ocurren una vez y despus desaparecen. Si la
operacin se repite, la falla ya no se presenta.
FALLAS INTERMITENTE:
Este consta de una falla que desaparece y reaparece.
FALLA PERMANENTE:

Es aquella que continua existiendo hasta reparar el componente con el


desperfecto. Circuitos quemados y el rompimiento de la cabeza del disco
ejemplifican este tipo de falla.

Cul es el objetivo de la creacin de sistemas tolerantes a fallos?


El objetivo del diseo y construccin de sistemas tolerantes
a fallos, consiste en garantizar que el sistema contine funcionando
de manera correcta como u todo; aun despus de presentarse
fallas.

Niveles en los que se puede presentar un fallo en cuanto a


componentes?
Transistores, circuitos, tarjetas, procesadores, sistemas operativos,
programas del usuario.

Falla de Sistema
Analizando un poco lo anterior se aterriza en algo muy fundamental,
tiene mayor importancia el tener un sistema que pueda sobrevivir a fallas en los
componentes VS. Hacer que las fallas sean poco probables; Para un sistema
distribuido crtico.
Se considera a las confiabilidad de un sistema distribuido, una
particularidad importante; debido a que se cuentan con una cantidad robusta de
componentes. De esta ltima depende en gran parte la posibilidad de falla en uno
de estos.

Tipos de falla al
procesador

Fallas silentes:

Silentes

Un procesador que falla solo se detiene y no


responde a las entradas subsecuentes ni produce ms
entradas, excepto que puede anunciar que ya no es
funcionando, nombradas tambin fallas de detencin.
Fallas Bizantinas:

Bizantinas

Un procesador que falla contina su ejecucin,


proporcionando respuestas incorrectas a las preguntas, y
posiblemente trabajando de manera maliciosa junto con otros
procesadores que han fallado, da la intencin de que todo
funciona correctamente aunque lo anterior no se cierto.

Silentes
Fallas del
sistema
Bizantinas

un procesador que falla slo


se detiene y no responde a
las entradas subsecuentes ni
produce ms entradas.
un procesador que falla contina
su ejecucin, proporcionando
respuestas incorrectas dando la
impresin de que todos funcionan
de manera correcta

Sistemas sncronos vs. Asncronos


Un tercer eje ortogonal trata del desempeo en un sentido abstracto. Supongamos
que tenemos un sistema en el cual, si un procesador enva un mensaje a otro, se
garantiza que obtiene una respuesta dentro de un tiempo T conocido de antemano. Si
no se obtiene una respuesta, esto significa que el sistema receptor ha fallado. El tiempo
T incluye el tiempo suficiente para considerar la prdida de mensajes (envindolos
hasta n veces).

En el contexto de la investigacin relativa a la


tolerancia de fallas, un sistema que tiene la propiedad
de responder siempre a un mensaje dentro de un lmite
finito conocido, si est funcionando, es sncrono. Un
sistema que no tiene esta propiedad es asncrono.
Debe ser claro que los sistemas asncronos
sern ms difciles de tratar que los
sncronos

Un termino mas familiar.


Un sistema que tiene la propiedad de
responder siempre a un mensaje dentro de
un
lmite
finito
conocido,
si
est
funcionando, es sncrono. Un sistema que
no tiene esta propiedad es asncrono.

Redundancia
El mtodo general para la tolerancia a fallos consiste en usa la redundancia.

Tipos de implementacion
de redundancia

Redundancia de la informacin
Se agregan algunos bits para poder recuperar los bits
revueltos.
Redundancia de
la informacion

Redundancia de tiempo

Redundancia del
tiempo

Se realiza una accin y entonces, en caso de ser


necesario se vuele a realizar.

Redundancia
fisica

Redundancia Fsica
Se agrega un equipo adicional para permitir que el
sistema como un todo tolere la prdida o el mal
funcionamiento de algunos componentes.

Tcnicas para manejo


redundancia fsica.

La rplica activa (RA), tambin conocida como mastermaster:


Replica activa

Respaldo
primario

En esta tcnica, todas las rplicas manejan la


misma informacin, el estado de los servidores es
nicamente alterado por las operaciones de escritura,
ms no las de lectura.
La rplica primaria (RP):
Existe un servidor primario que realiza todo el
trabajo y los dems se mantienen idntico a no ser que
se presente un caso de falla, donde toman el control.

Tolerancia de fallas mediante


respaldo primario

La idea esencial del mtodo de respaldo


primario es que en cualquier instante, un
servidor es el primario y realiza todo el
trabajo. Si el primario falla, el respaldo
ocupa su lugar.