2. MEDITAS DE MANTENIMIENTO EN LOS COMPUTADORES
Cuando vamos a adquirir un computador,
es interesante que conozcamos el
rendimiento que nos va a ofrecer.
A la hora de diseñar un computador, es
interesante contar con herramientas
que nos permitan evaluar sus prestaciones
con objeto de ponderar la relación
coste / rendimiento del mismo.
Vamos a estudiar algunas formas de
caracterizar el rendimiento de un
computador.
3. Definición de rendimiento
El concepto de rendimiento se puede
percibir desde diferentes puntos de
vista:
• Tiempo de respuesta: velocidad
(tiempo) de ejecución.
• Productividad: Número de tareas
completadas en la unidad de tiempo.
4. Medidas para evaluar el rendimiento
• Tiempo desde que se lanza una tarea hasta que se
completa.
• Incluye el tiempo de espera de entrada / salida, el
tiempo consumido por otros procesos activos en
el sistema, etc.
Tiempo de ejecución de UCP o tiempo de ejecución:
• Tiempo consumido por la UCP en ejecutar el
programa.
• No incluye el tiempo de espera de entrada /
salida, el tiempo consumido por otros
procesos activos en el sistema, etc.
• Tiempo de ejecución de UCP = Tiempo de ejecución
de UCP de usuario + tiempo
de ejecución de UCP del sistema.
5. Rendimiento de un sistema:
• Tiempo transcurrido en un sistema sin carga.
Rendimiento de UCP:
• Recíproco del tiempo de ejecución.
Tiempo de ejecución: a veces se mide en ciclos
de reloj.
• Frecuencia de reloj: inversa del ciclo de reloj.
6. Método correcto de calcular el rendimiento:
Factores que influyen en el rendimiento:
• Número de instrucciones de los
programas.
• Número de ciclos de reloj por
instrucción.
• Frecuencia del reloj.
Arte del diseño de computadores:
determinar de forma precisa cómo las
alternativas influyen en el coste y el
rendimiento.
7. Fiabilidad y tolerancia de fallos
Objetivos
Veremos cuáles son los factores que
afectan a la fiabilidad de un sistema
También veremos algunas técnicas para
tolerar fallos de software
8. Fallos de funcionamiento
Los fallos de funcionamiento de un sistema
pueden tener su origen en
- Una especificación inadecuada
- Errores de diseño del software
- Averías en el hardware
- Interferencias transitorias o permanentes en
las comunicaciones
Nos centraremos en el estudio de los
errores de software
9. La fiabilidad (reliability) de un sistema es una
medida de su conformidad con una especificación
autorizada de su comportamiento
Una avería (failure) es una desviación del
comportamiento de un sistema respecto de su
especificación
Las averías se manifiestan en el comportamiento
externo del sistema, pero son el resultado de
errores (errors) internos
Las causas mecánicas o algorítmicas de los
errores se llaman fallos (faults)
10. Fallos encadenados
Los fallos pueden ser consecuencia de
averías en los componentes del sistema
(que son también sistemas)
averia fallo error averia fallo
11. Tipos de fallos
Fallos transitorios
- desaparecen solos al cabo de un tiempo
- ejemplo: interferencias en comunicaciones
Fallos permanentes
- permanecen hasta que se reparan
- ejemplo: roturas de hardware, errores de
diseño de software
Fallos intermitentes
- fallos transitorios que ocurren de vez en
cuando
- ejemplo: calentamiento de un componente
de hardware
12. TÉCNICAS DE EVITACIÓN DE FALLOS
u Hardware
– Utilización de componentes fiables
– Técnicas rigurosas de montaje de subsistemas
– Apantallamiento de hardware
u Software
– Especificación de requisitos rigurosa o formal
– Métodos de diseño comprobados
– Lenguajes con abstracción de datos y modularidad
– Utilización de entornos de desarrollo con
computador (CASE)
adecuados para gestionar los componentes
13. REPARACIÓN DE FALLOS
La reparación automática es difícil y depende del sistema
concreto
u Hay dos etapas
– Localización del fallo
» Se pueden utilizar técnicas de detección de errores
– Reparación del sistema
» Los componentes de hardware se pueden cambiar
» Los componentes de software se reparan haciendo una
nueva versión
» En algunos casos puede ser necesario reemplazar el
componente
defectuoso sin detener el sistema
14. RESUMEN
u La fiabilidad de un sistema es una medida de su
conformidad con
una especificación autorizada de su comportamiento
u La fiabilidad de un sistema se puede aumentar mediante
técnicas de
prevención o de tolerancia de fallos
u La tolerancia de fallos se basa en la redundancia
– estática (por ejemplo, N versiones)
– dinámica (por ejemplo, bloques de recuperación)
u Las excepciones proporcionan redundancia dinámica con
recuperación directa
u La confiabilidad de un sistema es una propiedad más
amplia que la
fiabilidad