Sotr

64
Sistemas Operativos de Tiempo Real Ing. José Roberto Vignoni Año 2004 1 Instrumentación y Comunicaciones Industriales

description

543545

Transcript of Sotr

Sistemas Operativos de Tiempo Real Tiempo RealIng. Jos Roberto VignoniAo 20041 Instrumentacin y Comunicaciones Industriales Un sistema de tiempo real es un sistema informtico que: Interacciona repetidamente con su entorno fsico Responde a los estmulos que recibe del mismo dentro de un plazo de tiempo determinado dentro de un plazo de tiempo determinado Podemos decir que el procesamiento en tiempo real, es un tipo de procesamiento en el que la exactitud del sistema no depende solo del resultado lgico de un clculo, sino tambin del instante en que se produzca este resultado.2 Instrumentacin y Comunicaciones IndustrialesEjemplos de aplicacin Avinica Control de trfico areo Control de trenes Control de automviles Control de automviles Telecomunicaciones Produccin y distribucin de energa elctrica Electrnica de consumo Sistemas multimedia3 Instrumentacin y Comunicaciones IndustrialesControl de PosicinActuador MotorSensorCargaControladorReferenciaVariable Medida4 Instrumentacin y Comunicaciones IndustrialesControl de FabricacinmquinastransporteControlador 1 Controlador 2 Controlador 35 Instrumentacin y Comunicaciones IndustrialesControl de ProcesocontroladorV1nivelTBus de campocalefactorV2T6 Instrumentacin y Comunicaciones IndustrialesSistemas embebidos o empotrados (embedded systems) Son las aplicaciones en que los sistemas de tiempo real realizan funciones de control como componentes de otros sistemas.Ejemplos-Automviles-Electrnica de consumo:TV,celular, etc.-ElectrodomsticosCaractersticas-El controlador y/o el SO no es accesible-Los recursos son limitados7 Instrumentacin y Comunicaciones Industriales Adquisicin de datos Variables Cada variable pertenece al entorno de control de un sistema o subsistema. Fuera de su entorno se puede observar pero no cambiar. La imagen (valor) de una variable en un STR tiene La imagen (valor) de una variable en un STR tiene un intervalo de validez. Las secuencias de tomas de datos pueden estar disparadas por tiempo o por sucesos.8 Instrumentacin y Comunicaciones IndustrialesInteraccin con las personas Interfaz con el usuario (HMI) presentacin de datos presentacin de alarmas presentacin de tendencias registro de datos registro de datos generacin de informes9 Instrumentacin y Comunicaciones IndustrialesRestricciones temporalesPlazo de ejecucinLmite temporalactivacinLas tareas en un SOTR se ejecutan, generalmente en forma repetitiva siempre dentro de intervalos de tiempo determinadosTiempo de respuestaEjecucin de la tarea inicioterminacin10 Instrumentacin y Comunicaciones IndustrialesEl controlador muestrea peridicamente la variable controlada, la compara con la referencia (set point), calcula la variable de control, utilizando el algoritmo de control.El controlador tarda un cierto tiempo de respuesta en calcular la accin de control.TtRmedida medidaTJJ es la variacin (Jitter) en el tiempo de respuesta:J = Rmax - Rmin11 Instrumentacin y Comunicaciones IndustrialesFiabilidad y seguridad Fiabilidad Es la posibilidad de que el SO proporcione el servicio especificado. Tiempo medio entre fallas o averas MTTF = 1/ Donde es una tasa de fallas constante en fallas por hora Un sistema con MTTF> 109 se denomina ultrafiable Seguridad Seguridad Tipos de averas: malignas y benignas Una avera maligna tiene un coste muy superior a la utilidad del sistema Sistemas crticos Deben ser ultrafiables respecto a las averas malignas En muchos casos se exige una certificacin de seguridad efectuada por un organismo independiente12 Instrumentacin y Comunicaciones Industriales Mantenibilidad Medida del tiempo necesario para reparar una avera benigna. Tiempo medio de reparacin: MTTR = 1/ Para una tasa de reparacin de reparaciones / hora Disponibilidad Disponibilidad Fraccin de tiempo en que el sistema est disponibletfallafalla reparacinMTTR MTTFMTBF13 Instrumentacin y Comunicaciones IndustrialesClases de Sistemas de Tiempo RealSegn las propiedades del sistema controlado sistemas crticos y sistemas no crticos sistemas con parada segura y sistemas con degradacin aceptableSegn las propiedades del sistema de tiempo real Segn las propiedades del sistema de tiempo real sistemas con tiempo de respuesta garantizado y sistemas que hacen lo que pueden sistemas con recursos adecuados y sistemas con recursos inadecuados sistemas disparados por tiempo y sistemas disparados por eventos14 Instrumentacin y Comunicaciones IndustrialesSOTR Crticos y no crticosSe distinguen por sus requisitos temporales y de fiabilidadSOTR Crticos(hard real time systems)SOTR No Crticos(soft real time systems Plazo de respuesta flexible Plazo de respuesta estricto Comportamiento temporaldeterminado por el entorno Comportamiento en sobrecargaspredecible Requisitos de seguridad crticos Redundancia activa Volumen de datos reducido Plazo de respuesta flexible Comportamiento temporaldeterminado por el computador Comportamiento en sobrecargasdegradado Requisitos de seguridadno crticos Recuperacin de fallos Gran volumen de datos15 Instrumentacin y Comunicaciones IndustrialesSistemas con parada segura ysistemas con degradacin aceptableSe distinguen por su comportamiento en caso de fallaSistemas con parada Sistemas con degradacinaceptable (fail-soft)Sistemas con parada segura (fail-safe) Detencin en estado seguro Probabilidad de deteccin de fallos elevadaaceptable (fail-soft) Funcionamiento con prdidaparcial de funcionalidad oprestaciones Tambin hay sistemas contolerancia de fallos completa(fail operational)16 Instrumentacin y Comunicaciones IndustrialesSistemas con respuesta garantizada ysistemas que hacen lo que puedenSe distinguen por su grado de determinismo temporalSistemas con respuestagarantizada (guaranteedSistemas que hacen lo que pueden (best-effort systems)response systems) Comportamiento temporalgarantizado analticamente Hace falta caracterizar conprecisin la carga mxima y los posibles fallossystems) Comportamiento temporal de tipo lo mejor que se pueda No se hace una caracterizacin precisa de carga y fallos Slo sirve para sistemas no crticos17 Instrumentacin y Comunicaciones IndustrialesSistemas con recursos adecuados einadecuadosSe distinguen por la cantidad de recursos disponiblesSistemas con recursos adecuados (resource adequateSistemas con recursosinadecuados (resource inadequate systems) adequatesystems) Diseo con suficientes recursos para garantizar el comportamiento temporal con mxima carga y en caso de fallosinadequate systems) Diseo con recursos razonables desde un punto de vista econmico Slo sirve para sistemas no crticos18 Instrumentacin y Comunicaciones IndustrialesSistemas disparados por tiempoy por sucesosSe distinguen por la forma de arrancar la ejecucin de sus actividadesSistemas disparados por Sucesos (event-Sistemas disparados por tiempo (time - Sucesos (event-triggered systems) Arranque cuando se produce un suceso de cambio de estado Mecanismo bsico: interrupcionespor tiempo (time -triggered systems) Arranque en instantes de tiempopredeterminados Mecanismo bsico: reloj19 Instrumentacin y Comunicaciones IndustrialesResumen Los sistemas operativos convencionales no sonadecuados para realizar tareas de tiempo real no tienen un comportamiento determinista no permiten garantizar los tiempos de respuesta Un sistema operativo de tiempo real debe soportar concurrencia: procesos ligeros (threads) con memoria concurrencia: procesos ligeros (threads) con memoria comn temporizacin: medida de tiempos y ejecucin peridica planificacin: prioridades fijas con expropiacin, acceso a recursos con protocolos de herencia de prioridad dispositivos de E/S: acceso a recursos de hardware einterrupciones20 Instrumentacin y Comunicaciones IndustrialesLenguajes de Programacin para SOTRUn lenguaje de programacin de sistemas de tiempo real debe facilitar la realizacin de sistemas concurrentes, fiables, con un comportamiento temporal analizable.Hay tres clases de lenguajes de inters para SOTR: Hay tres clases de lenguajes de inters para SOTR: Lenguajes ensambladores Flexibles y eficientes, pero costosos y poco fiables Lenguajes secuenciales (Fortran, Pascal, C, ...) Necesitan servicios especiales para concurrencia y tiempo real Lenguajes concurrentes (Modula, Ada, ...) Concurrencia y tiempo real incluidos en el lenguaje21 Instrumentacin y Comunicaciones IndustrialesC Es un lenguaje muy utilizado para programacin de sistemas estructurado, con bloques sin tipado fuerte muy flexible (pero a veces poco seguro) No tiene integrada la concurrencia ni el tiempo real No tiene integrada la concurrencia ni el tiempo real se consigue invocando servicios del sistema operativo de forma explcita- No facilita la descomposicin en mdulos ni la programacin con objetos se puede hacer con C++(una extensin de C para programar con objetos)22 Instrumentacin y Comunicaciones IndustrialesADA Es un lenguaje diseado especficamente para sistemas de tiempo real concurrencia tiempo real acceso al hardware e interrupciones Es un lenguaje imperativo, descendiente de Pascal Es un lenguaje imperativo, descendiente de Pascal estructura en bloques fuertemente tipado paquetes (mdulos) y esquemas genricos extensin de tipos con herencia biblioteca jerrquica interfaces normalizadas con otros lenguajes (C, Fortran)23 Instrumentacin y Comunicaciones IndustrialesPOSIX Es un conjunto de normas IEEE/ISO que definen interfaces de sistemas operativos Permiten desarrollar software porttil y reutilizable (Portable Operating System Interface) + X (Portable Operating System Interface) + X Las normas definen servicios que se pueden incluir o no en un sistema operativo particular Adems se definen perfiles de aplicacin con conjuntos de servicios estndar Hay interfaces para C, Ada, y otros lenguajes24 Instrumentacin y Comunicaciones IndustrialesEl tiempo en SOTR Acceso al tiempo real leer el paso del tiempo en relojes retrasar la ejecucin de los procesos durante un tiempo definir lmites temporales para la ocurrencia de un suceso (time-outs) de un suceso (time-outs) ejecutar acciones en determinados instantes Representacin de los requisitos temporales perodos de activacin plazos de ejecucin25 Instrumentacin y Comunicaciones IndustrialesRelojes Los relojes son mdulos de hardware y software quepermiten medir el tiempo real. Pueden ser internos o externos Caractersticas importantes: Caractersticas estticas (representacin del tiempo) Resolucin Resolucin Intervalo de valores Caractersticas dinmicas Granularidad Exactitud Estabilidad26 Instrumentacin y Comunicaciones IndustrialesRelojes de tiempo de ejecucin Permiten medir el tiempo de ejecucin que ha consumidouna actividad (hebra de sistema operativo o tarea de Ada) desde su inicio Se pueden usar para medir el tiempo de ejecucin de unsegmento de cdigo problema: cmo medir el tiempo de ejecucin en el problema: cmo medir el tiempo de ejecucin en el peor caso? (WCET) los programas no se ejecutan siempre igual algunos componentes de la arquitectura introducen variaciones importantes (caches, segmentacin, ejecucin expropiativa) soluciones: modelos, procesadores ms sencillos27 Instrumentacin y Comunicaciones IndustrialesRetardos Un retardo suspende la ejecucin de una tarea durante un cierto tiempo Hay dos tipos Retardo relativo: la ejecucin se Retardo relativo: la ejecucin se suspende durante un intervalo de tiempo relativo al instante actual Retardo absoluto: la ejecucin se suspende hasta que se llegue a un instante determinado de tiempo absoluto28 Instrumentacin y Comunicaciones IndustrialesTemporizadores Un temporizador es un mecanismo (de hardware ysoftware) que permite avisar que ha transcurrido uncierto tiempo una sola vez desde que se arma peridicamente El mecanismo por el cual se avisa depende del sistemaoperativo y del lenguaje de programacin POSIX: seales Ada: mecanismos del lenguaje (seleccin temporizada)29 Instrumentacin y Comunicaciones IndustrialesRequisitos Temporales Los marcos temporales suelen ir asociados a tareas o procesos Generalmente se trata de Ejecutar tareas peridicas Ejecutar tareas espordicas cuando ocurren Ejecutar tareas espordicas cuando ocurren los sucesos correspondientes Completar la ejecucin de todas las tareas dentro de su plazo de respuesta A veces se exige que la entrada o salida de una tarea se efecte a intervalos regulares La desviacin se llama fluctuacin o jitter30 Instrumentacin y Comunicaciones IndustrialesAnlisis Temporal Si el sistema cumple determinadas propiedadesestructurales (modelo de tareas) se puede analizar sucomportamiento temporal condiciones para cumplir los plazos clculo del tiempo de respuesta Los mtodos de anlisis temporal estn estrechamenterelacionados con la planificacin de las tareas el mtodo de planificacin debe asegurar un comportamiento temporal previsible y analizable31 Instrumentacin y Comunicaciones IndustrialesFallos Temporales Una tarea puede incumplir su plazo por varias razones, por ejemplo: El tiempo de cmputo no est bien calculado El anlisis de tiempos de respuesta no es realista Las herramientas de anlisis contienen errores No se cumplen las hiptesis de diseo(por ejemplo, separacin mnima entre eventos) En estos casos hay que detectar los fallos Si el sistema es crtico, debe recuperarse32 Instrumentacin y Comunicaciones IndustrialesResumen Hay cuatro aspectos importantes relacionados con eltratamiento del tiempo medida del tiempo mediante relojes retardos y temporizadores limitacin del tiempo de espera especificacin de requisitos temporales especificacin de requisitos temporales Los atributos ms importantes de un marco temporal(generalmente asociado a una tarea) son: esquema de activacin (peridico, espordico) plazo de terminacin latencia de activacin tiempo de cmputo mximo33 Instrumentacin y Comunicaciones IndustrialesCriticidadUna tarea de tiempo real puede ser Crtica (hard) : No se puede admitir que se sobrepase elplazo de respuesta especificado ni una sola vez Acrtica (soft) : Es admisible que se sobrepase el plazo el plazoocasionalmente Firme (firm) : El plazo no es crtico, pero una respuestatarda no sirve para nada Interactiva : No se especifican plazos de respuesta, sino tiempos de respuesta medios34 Instrumentacin y Comunicaciones IndustrialesFallos temporalesUna tarea puede incumplir su plazo por varias razones, por ejemplo: El tiempo de cmputo no est bien calculado El anlisis de tiempos de respuesta no es realista realista Las herramientas de anlisis contienen errores No se cumplen las hiptesis de diseo(por ejemplo, separacin mnima entre eventos) En estos casos hay que detectar los fallos Si el sistema es crtico, debe recuperarse35 Instrumentacin y Comunicaciones IndustrialesPlanificacin en tiempo realEn el estudio de los algoritmos de planificacinde tiempo real, se observa que los mtodos deplanificacin dependen de: Si el sistema lleva a cabo un anlisis deplanificacin planificacin En caso afirmativo si se realiza en formaesttica o dinmica Si el resultado del anlisis genera un plan conrespecto al cual se expiden las tareas durantela ejecucin.36 Instrumentacin y Comunicaciones Industriales Mtodos con tablas estticas:Realizan un anlisis esttico de las planificaciones posibles. El resultado del anlisis es un plan que determina, cuando debe comenzar o terminar la En base a las consideraciones anteriores se pueden identificar las siguientes clases de algoritmos:ejecucin de una tarea. Es aplicable a tareas peridicas. Los datos iniciales son: Tiempo peridico de llegada Tiempo de ejecucin Plazo peridico de finalizacin Prioridad relativa de cada tarea37 Instrumentacin y Comunicaciones Industriales El planificador intenta trazar un plan que lepermita cumplir las exigencias de todas lastareas peridicas. Es un mtodo predecible einflexible, ya que cualquier cambio deexigencia en una tarea, requiere un nuevoplan.38 Instrumentacin y Comunicaciones IndustrialesMtodos apropiativos con prioridadesestticas:Tambin se realiza un anlisis esttico, perono se traza ningn plan. En cambio, se usadicho anlisis para asignar prioridades atareas, con lo que se puede usar unplanificador apropiativo con prioridades planificador apropiativo con prioridadesconvencional. En este caso la asignacin deprioridades se encuentra relacionada con lasrestricciones de tiempo asociadas a cadatarea.39 Instrumentacin y Comunicaciones IndustrialesModelo de TareasConsideraremos un modelo simple: El conjunto de tareas es esttico Todas las tareas son peridicas Las tareas son independientes unas de otras Los plazos de respuesta de todas las tareas son Los plazos de respuesta de todas las tareas son iguales a los perodos respectivos El tiempo de ejecucin mximo de cada tarea es conocido Las operaciones del ncleo de multiprogramacin son instantneas40 Instrumentacin y Comunicaciones IndustrialesConsideremos un ejemplo de planificacin peridica de tareas con plazo de terminacin. Dados dos sensores A y B, el plazo para EjemploLleg. Ejec. PlazoA1 0 10 20A2 20 10 40A3 40 10 60sensores A y B, el plazo para tomar datos del sensor A es cada 20 ms y del sensor B cada 50 ms. Se tarda 10 ms, incluida la sobrecarga del SO para procesar los datos de A y 25 ms los datos de B.A3 40 10 60A4 60 10 80A5 80 10 100B1 0 25 50B2 50 25 10041 Instrumentacin y Comunicaciones IndustrialesA1 A2 A3 A4 A5B1 B230 20 10 40 50 70 80 90 60 100Consideremos el caso de planificacin por prioridades con A de mayor prioridad que BA1B2 A2 B1 A4 A3A5,B2A5 B1 B2 A1A2 A4 A3 B1B2Plazo de TerminacinVemos que en este caso B1 no es ejecutado en su totalidad.42 Instrumentacin y Comunicaciones IndustrialesA1A2 B1 A3A5,B2A5 B2A2 A4 A3 B1Plazo de terminacinVeamos el mismo caso anterior cuando B tiene mayor prioridad que APodemos observar que tanto A1 como A4 no pueden ser ejecutados dentro de sus respectivos plazos de terminacin.43 Instrumentacin y Comunicaciones IndustrialesConsideremos ahora el caso de una planificacin que, en el instante de apropiacin, da prioridad a la tarea con plazo ms corto de finalizacin.B2 B1 B1 A1 A2 A3 A4 A5A1 A5,B2 A2 A4 A3 B1Plazo deTerminacinEn este caso, pueden cumplirse todos los requisitos del sistema. Puesto que todas las tareas son peridicas y predecibles, se usa un mtodo de planificacin con tablas estticas.44 Instrumentacin y Comunicaciones IndustrialesConsideremos un esquema que trate con tareas aperidicas con plazos de inicio segn la siguiente tablaLleg Ejec. PlazoA 10 20 110B 20 20 20C 40 20 50D 50 20 90E 60 20 70 E 60 20 70B302010 40 50 70 80 90 60 100E DC AInstantes de llegadaPlazos deinicio110AB DC E45 Instrumentacin y Comunicaciones IndustrialesConsideremos en primer lugar un caso de planificacin con plazo de inicioE D C ABA E CED BDCAVemos que en este caso la tarea B no puede ser cumplida, aun cuando requiera servicio inmediato. Este es un riesgo comn en la planificacin de tareas aperidicas, especialmente con plazos de inicio.46 Instrumentacin y Comunicaciones IndustrialesUna variante de esta poltica, conocida como la del plazo ms prximo con tiempos libres no forzosos, mejora el rendimientoE D CBBE D C AAInstante de llegadaA E C D BPlazo de InicioEn este caso, se consideran conocidos los plazos de terminacin de cada tarea, antes de que ellas estn listas. Siempre se planifica la tarea con plazo ms prximo y se deja ejecutar hasta que finalice.47 Instrumentacin y Comunicaciones IndustrialesMtodos dinmicos de planificacin: Se determina la viavilidad durante la ejecucin (dinmicamente), en vez de antes de empezar la ejecucin (estticamente). Se acepta una nueva tarea para ejecutar solo si es factible cumplir con sus restricciones de tiempo.48 Instrumentacin y Comunicaciones IndustrialesMtodos dinmicos de mejorresultado:No se realiza ningn anlisis de viavilidad, ya que las tareas sonviavilidad, ya que las tareas son generalmente aperidicas. El sistema intenta cumplir todos los plazos y abandona cualquier proceso ya iniciado y cuyo plazo no se haya cumplido.49 Instrumentacin y Comunicaciones IndustrialesSe pueden conseguir mejores resultados realizando laplanificacin dinmicamente en funcin de los requisitos temporales y de los recursos disponiblesDos mtodos dinmicos interesantes son: Primero el ms urgente (earliest deadline first, EDS) Primero el menos holgado (least slack first, LSF)Ambos son ptimos para tareas independientes se garantizan los plazos hasta el 100% de utilizacin se garantizan los plazos hasta el 100% de utilizacin se comportan bien cuando hay muchas tareas espordicasProblemas: el comportamiento en caso de sobrecarga es imprevisible no est bien resuelta la interaccin entre tareas50 Instrumentacin y Comunicaciones IndustrialesFiabilidad y Tolerancia a Fallos Fallos de Funcionamiento Los fallos de funcionamiento de un sistema pueden tener su origen en Una especificacin inadecuada Errores de diseo del software y/o hardware Averas en el hardware Interferencias transitorias o permanentes en las comunicaciones51 Instrumentacin y Comunicaciones IndustrialesConceptos bsicosLa fiabilidad (reliability) de un sistema es una medida de su conformidad con una especificacin autorizada de sucomportamiento Una avera (failure) es una desviacin del comportamiento de un sistema respecto de su especificacin Las averas se manifiestan en el comportamiento Las averas se manifiestan en el comportamiento externo del sistema, pero son el resultado de errores (errors) internos Las causas mecnicas o algortmicas de los errores se llaman fallos (faults) Los fallos pueden ser consecuencia de averas en los componentes del sistema52 Instrumentacin y Comunicaciones IndustrialesTipos 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 software ejemplo: roturas de hardware, errores de software Fallos intermitentes fallos transitorios que ocurren de vez en cuando ejemplo: calentamiento de un componente de hardware Debe impedirse que los fallos de todos estos tiposcausen averas53 Instrumentacin y Comunicaciones IndustrialesPrevencin y tolerancia a fallos Hay dos formas de aumentar la fiabilidad de un sistema: Prevencin de fallos Se trata de evitar que se introduzcan fallos en el sistema antes de que entre en funcionamiento sistema antes de que entre en funcionamiento Tolerancia de fallos Se trata de conseguir que el sistema contine funcionando aunque se produzcan fallos En ambos casos el objetivo es desarrollar sistemas con modos de fallo bien definidos54 Instrumentacin y Comunicaciones IndustrialesPrevencin de fallosSe realiza en dos etapas: Evitacin de fallos Se trata de impedir que se introduzcan fallos durante la construccin del sistema fallos durante la construccin del sistema Eliminacin de fallos Consiste en encontrar y eliminar los fallos que se producen en el sistema una vez construido55 Instrumentacin y Comunicaciones IndustrialesTcnicas de evitacin de fallos Hardware Utilizacin de componentes fiables Tcnicas rigurosas de montaje de subsistemas Apantallamiento de hardware Software Especificacin rigurosa o formal de requisitos Especificacin rigurosa o formal de requisitos Mtodos de diseo comprobados Lenguajes con abstraccin de datos y modularidad Utilizacin de entornos de desarrollo con computador (CASE) (Computer Aided Software Engineering) adecuados para gestionar los componentes56 Instrumentacin y Comunicaciones IndustrialesTcnicas de eliminacin de fallosComprobaciones Revisiones de diseo Verificacin de programas Inspeccin de hardware (analizadores)Pruebas (tests) Son necesarias, pero tienen problemas: Son necesarias, pero tienen problemas: no pueden ser nunca exhaustivas slo sirven para mostrar que hay errores, no que no los hay a menudo es imposible reproducir las condiciones reales los errores de especificacin no se detectan57 Instrumentacin y Comunicaciones IndustrialesLimitaciones de la prevencin de fallos Los componentes de hardware fallan, a pesar de las tcnicas de prevencin La prevencin es insuficiente si la frecuencia o la duracin de las reparaciones es inaceptable es inaceptable no se puede detener el sistema para efectuar operaciones de mantenimiento La alternativa es utilizar tcnicas detolerancia de fallos58 Instrumentacin y Comunicaciones IndustrialesGrados de tolerancia de fallos Tolerancia completa (fail operational) El sistema sigue funcionando, al menos durante un tiempo, sin perder funcionalidad ni prestaciones Degradacin aceptable (failsoft). El sistema sigue funcionando con una prdida parcial El sistema sigue funcionando con una prdida parcial de funcionalidad o prestaciones hasta la reparacin del fallo Parada segura (failsafe). El sistema se detiene en un estado que asegura la integridad del entorno hasta que se repare el fallo59 Instrumentacin y Comunicaciones IndustrialesRedundancia La tolerancia de fallos se basa en la redundancia Se utilizan componentes adicionales para detectar los fallos y recuperar el comportamiento correcto comportamiento correcto Esto aumenta la complejidad del sistema y puede introducir fallos adicionales Es mejor separar los componentes tolerantes del resto del sistema60 Instrumentacin y Comunicaciones IndustrialesTipos de redundancia Redundancia esttica Los componentes redundantes estn siempre activos Se utilizan para enmascarar los fallos Ejemplo: Redundancia modular triple ( N) Redundancia dinmica Redundancia dinmica Los componentes redundantes se activan cuando se detecta un fallo Se basa en la deteccin y posterior recuperacin de los fallos Ejemplos: sumas de comprobacin bits de paridad61 Instrumentacin y Comunicaciones IndustrialesSeguridad y fiabilidad Un sistema es seguro si no se pueden producirsituaciones que puedan causar muertes, heridas,enfermedades, ni daos en personas, equipos o medioambiente Un accidente es un suceso imprevisto que puede producir daos inadmisibles producir daos inadmisibles Un sistema es fiable si cumple sus especificacionesLa seguridad es la probabilidad de que no se produzcansituaciones que puedan conducir a accidentes,independientemente de que se cumpla la especificacin o no62 Instrumentacin y Comunicaciones IndustrialesBibliografa W. Stallings, Operating Systems, Prentice Hall, 1997. Sistemas de Tiempo Real, [email protected], 2006.63 Instrumentacin y Comunicaciones IndustrialesConfiabilidadLa confiabilidad (dependability) es una propiedad de lossistemas que permite confiar justificadamente en elservicio que proporcionan64 Instrumentacin y Comunicaciones Industriales