Tolerancia
SISTEMAS TOLERANTES A FALLOS
6.1. Conceptos generales sobre tolerancia a fallos
En este capítulo estudiaremos las técnicas para conseguir que los sistemas continúen funcionando correctamente, a pesar de fallos en su hardware o errores de software. Este tipo de
sistemas se denominan sistemas tolerantes a fallos.
Los conceptos relacionados con la tolerancia a fallos tienen cada vez másimportancia; esto
se debe a la proliferación de los sistemas de cómputo y el uso de éstos cada vez en más ámbitos. Algunas de las aplicaciones de los computadores resultan lo suficientemente críticas como
para protegerlas contra potenciales fallos. En esos entornos, un funcionamiento incorrecto del
sistema resultaría catastrófico y podría causar importantes perjuicios.
Ejemplos de aplicaciones deeste tipo son las centrales nucleares controladas por computador, y por extensión, cualquier otro proceso industrial delicado controlado de esa forma. Otros
ejemplos son los computadores que gobiernan aviones, satélites artificiales y naves espaciales.
Un tipo de aplicaciones que deben ser especialmente tolerantes a fallos, son aquéllas en las que
se prevea un funcionamiento continuo durantelargo tiempo sin posibilidad de intervención (léase, por ejemplo, naves espaciales de largo recorrido que pueden estar varios años en el espacio,
especialmente las no tripuladas).
Definiremos ahora tres conceptos fundamentales en el ámbito de la tolerancia a fallos:
Llamaremos fallo a cualquier defecto, físico o lógico, en cualquier componente, hardware
o software, de un sistema. Dentro de estacategoría incluiremos los contactos accidentales
entre conductores eléctricos, cortes en los mismos, defectos en los componentes, variaciones en el funcionamiento de los elementos electrónicos debidas a perturbaciones externas
(tales como la temperatura u ondas electromagnéticas), etc. Diremos que un fallo se enmarca en el universo físico.
Un error es la manifestación o el resultado de un fallo.Dicho de otra forma, un error
es la consecuencia de un fallo desde el punto de vista de la información. Los errores se
enmarcan dentro del llamado universo informacional.
137
138
Sistemas tolerantes a fallos
Fig. 6.1. Fallos, errores y averías.
Si un error causa un funcionamiento incorrecto del sistema desde el punto de vista externo, es decir, si las consecuencias del fallotrascienden al exterior del sistema, diremos
que se ha producido una avería. Las averías se producen en el universo externo o universo del usuario.
En la figura 6.1 se muestra la relación entre fallos, errores y averías.
Para aclarar estos conceptos, tomaremos como ejemplo un circuito combinacional cualquiera. Si un punto de ese circuito se conecta incorrectamente, de forma transitoria o permanente, alvalor lógico 0, estaremos ante un fallo. Si este hecho lo miramos desde el punto de vista de la
tabla de verdad del circuito, nos encontraremos con un error, ya que dicha tabla habrá cambiado
como consecuencia del fallo. Cuando ese error afecte a otros circuitos, externos al anterior, o a
la salida del sistema, tendremos una avería
En este punto podemos establecer dos nuevas definiciones:
Lalatencia de un fallo es el tiempo que transcurre desde que se produce un fallo hasta
que se manifiesta el error.
La latencia de un error es el tiempo transcurrido entre la aparición de un error y la
manifestación de ese error en el exterior del sistema.
6.2. Causas de los fallos
Para buscar todas las causas de los fallos deberemos analizar todo el proceso seguido desde
el diseño delsistema hasta su explotación, pasando por su implementación. En todas estas fases
puede estar el origen de los fallos.
En primer lugar, puede ya haber fallos causados por errores en el diseño, tanto del hardware como del software, estos errores se concretan en especificaciones erróneas. Siguiendo
el proceso, otra fuente de fallos la encontraremos en la implementación que definiremos como
el proceso...
Regístrate para leer el documento completo.