Una librería de software, un control backbone y unas estrategias de recuperación para usuario específico destinados a mejorar la confiabilidad de sistemas

embebidos aplicación puede ser hecha tolerante a fallas en este marco de enfoque. Resumen La tolerancia a fallas en sistemas embebidos distribuidos requiere flexibilidad. Las soluciones podrían estar basadas en elementos preconstruidos y reutilizables, específicas para diferentes aplicaciones y portable para diferentes plataformas. Para este fin, un framework es presentado, sonsistente de una librería de usuario, un control backbone y un lenguaje de descripción de alto nivel (RL). La librería de usuario contiene funciones básicas para tolerancia a fallas. La capa de control engancha estas funciones juntas y permite acciones coordinadas. RL permite desarrollar la aplicación como una clase de capa de aplicación secundaria; esto separa funcionalmente aspectos de recuperación de una aplicación, recortando los ciclos de desarrollo y mejorando la capacidad de mantenimiento. Este artículo describe los requerimientos para cuál de estos frameworks se adhiere y el contexto en el cual puede ser creada una solicitud; detallamos las tres entidades y explicamos cómo una 1. Introducción En el mercado de sistemas embebidos distribuidos dos evoluciones se están tomando lugar: 1) los sistemas tienen que incrementar su confiabilidad para cumplir con su servicio, 2) la faulttolerant aplicaciones de tolerancia a fallas se beneficiarían de soluciones más baratas, y basadas en software. Esto sugiere que propuestas exitosas para tolerancia a fallas en estos sistemas industriales deberían basarse en soluciones reutilizables y prefabricadas, personalizables para diferentes aplicaciones y portable para diferentes plataformas. En este contexto, este artículo presenta una aproximación software que provee coapacidades de tolerancia a fallas para sistemas embebidos, permitiendo soluciones reutilizables y económicas, explotando el sistema de hardware distribuido. Los desarrolladores de aplicaciones pueden seleccionar configurar e integrar en su propio ambiente una variedad de funciones basadas en software para la detección de error, confinamiento y recuperación

confinamiento.Un eje central de control para extraer información acerca de la topología de la aplicación y su progreso.El programador de aplicaciones puede enfocar las aplicaciones en desarrollo e incorporar estrategias de recuperación en una lato nivel (separación de preocupaciones de diseño) . Los elementos de una librería y el control centralizado son paramétricos y soportan un sencillo proceso de configuración.. de acuerdo de acuerdo a los requerimientos adaptando las entidades de la librería. aquí. recuperación y enmascaramiento de fallas. La posibilidad de expresar estrategias de recuperación es un punto esencial del contexto de aproximación. reduciendo costo y tiempo de lanzamiento al mercado. el control centralizado ejecuta acciones de recuperación (especificadas en RL) via los elementos básicos de la librería de usuario. Los objetivos de las aplicaciones son aquellos por los cuales la confiabilidad puede ser mejorada a un costo relativamente bajo por soluciones de tolerancia a fallas por software.Una librería de usuario que provee elementos básicos para la detección de error. Los mayores beneficios son: .El nivel de tolerancia a fallas puede negociarse con la eficiencia. integridad son incluidos) Esta aproximación consiste de la siguientes tres entidades: . esta aproximación apunta a aplicaciones . es decir indicar estrategias de recuperación detallando las acciones de aislamiento. y coordinar las acciones de tolerancia a fallas. (La confiabilidad es usada en un término general. eso significa que puede ser entendido en los términos de disponibilidad pero también los términos de mantenibilidad. El desarrollador es asistido por un manual para seleccionar el mecanismo más apropiado para tolerancia a fallas. En tiempo real. Esta aproximación será acompañada por un conjunto de herramientas y documentación para soportar a los desarrolladores cuando combinen las funciones seleccionadas dentro de sus propias estrategias de recuperación para obtener el nivel requerido deconfiabilidad. . . más específicamente. reconfiguración y recuperación a seguir para la detección de un error.Un lenguaje de alto nivel (RL) para separadamente especificar estas acciones de tolerancia a fallas. Los módulos de tolerancia a fallas son reutilizables y se pueden hacer mantenimientos.disponible en uuna librería de usuario.

La sección 3 detalla cada una de las tres entidades de la aproximación. eficiencia.) Estas interactivas cajas de resonancia realizaron un sondeo para las respuestas industrialmente relevantes concernientes al procesamiento del error y tratamiento de fallas. El resto de este artículo está estructurado como sigue.1. mientras que las acciones . donde los mecanismos de la librería de usuarioy el control centralizado son ordenados de acuerdo a su tiempo de reacción: del comportamiento en tiempo real más duro al más suave. elementos para tolerancia de fallos (detención. Estas características esperadas han puesto en un marco más pragmático el manejo de las decisiones de diseño. la contención de fallas debe ser más rápida que la recuperación de errores. tanto en características funcionales como no funcionales (portabilidad en diferentes plataformas. Concluimos con una discusión de la aproximación en un contexto práctico. 2. limitaciones e implicaciones de el uso del marco de trabajo y sus elementos. Los requerimientos del marco de trabajo y el contexto de diseño Los requerimientos para este marco de trabajo han sido recogidos de varias aplicaciones industriales representativas en el dominio de la automatización. Esto permite entender la arquitectura y sus implicaciones en el ambiente. Por ejemplo.. La motivación subyacente es que la estrategia de tolerancia a fallas podría permitir tomar acciones locales para enmascaramiento de fallas o contención de fallas inmediata y localizadamente sobre los nodos del proceso. Sección 2 describe los requerimientos a los cuales este marco de contexto se adhiere y el contexto en los cuales ha sido diseñado. etc. Ello permite clarificar el uso. y ellos tienen mas o menos estrictas limitaciones de tiempo real. etc…) han sido seleccionados.. Esto es dibujado en figura 1 como rectángulo. 2. Sección 4 describe los pasos que un desarrollador sigue para mejorar la confiabilidad de una aplicación y explica los posibles escenarios de ejecución. etc… A través de las llamadas cajas de resonancia . flexibilidad. contención. recuperación. Desde varias aplicaciones representativas en sistemas embebidos distribuidos.embebidas en plataformas paralelas y distribuidas. El contexto del diseño La figura 1 describe el contexto de las entidades del marco de trabajo. enmascaramiento. estos profesionales industriales clarificaron las características que ellos esperarían de un marco de trabajo. ilustrando el proceso de diseño que conduce al marco de trabajo. procesamiento de imágenes. procesamiento de señal.

de recuperación global requiere información para ser intercambiada a través del control centralizado antes de que una acción distribuida tome lugar en una forma coordinada. la aplicación objetivo.3. su interacción y las fallas y los errores pueden formar la entrada para actividades de modelamiento o especificación formal. Requerimientos de la implementación de los elementos y de la capa de control. los requerimientos funcionales para una instanciación específica del marco de trabajo pueden ser escogidos. Consecuentemente. Requerimientos no funcionales El marco de trabajo será portable en diferentes plataformas. Desde este contexto de diseño. manejo automático de la redundancia o interfaces para mecanismos de detección de error en el kernel o su nivel de aplicación.Requerimientos en el hardware (5). los elementos básicos. flecha 2 indica las interacciones entre esas entidades básicas. En esta figura. Cómo ellos interactúan en tiempo real es determinado por las estrategias de recuperación de usuario específicado que son discutidas en la sección 3. etc. En (7). procedimientos industriales específicos. para ser considerado con el proceso de desarrollo: costos permitidos. Las fallas y errores (3) originando en los sistemas y su ambiente definen cuáles elementos son requeridos. (9) representa limitaciones globales del marco de referencia entero. Esto es una edición de aplicación específica o sistema específico: los ejemplos incluyen funcionalidad watchdog. la especificación de los elementos necesarios produce: .Requerimientos en el sistema operando en tiempo real o en el kernel. política de agendamiento. por ejemplo plataforma ocn interfaces requerida.2. etc. Ello define cómo los diferentes elementos pueden trabajar juntos para proveer tolerancia a fallas a nivel de sistemas y a nivel de componentes. reduciendo . administración de tareas. el ambiente. (Estos temas no son discutidos más en este artículo) Finalmente. . los usuarios. procesamiento. confiabilidad requerida. Por ejemplo en comunicación. por ejemplo disponibilidad de una unidad de manejo de memoria o de mecanismos corrección de error en el hardware de comunicación. la posibilidad de resetear enlaces de comunicación. Esto permite también derivar el impacto (8) en la efectividad (ej: confiabilidad y eficiencia) de la instanciación del marco de trabajo. comportamiento en el tiempo. gastos generales en tiempo o recursos. 2.

recuperación y mecanismos de enmascaramiento de fallas.tanto como sea posible el trabajo de adaptación. el marco de trabajo debe ser adaptable a las diferentes necesidades del usuario en términos de . con entidades relacionadas a la detección del error.Localización de los componentes en los nodos de proceso. diferentes plataformas piloto han sido seleccionadas de la cuales una evaluación y una examinación han sido y están siendo implementadas durante varios proyectos. contención de fallas.Escalabilidad Los gastos generales en tiempo o recursos podrían fijarse con los requerimientos para la sensibilidad del sistema. diferentes aproximaciones han sido adoptadas: adherencia a estándares apropiados (ej: POSIX y su extensión RT).Uso combinado o individual de los componentes. . encapsulation de los RTOS interfaces en una correcta “capa de adaptación” escondiendo peculiaridades del sistema operativo y proveyendo una estable y homogénea interface a otros niveles. el control centralizado para una coherente coordinación de estas entidades básicas y el lenguaje de descripción para especificar las estrategias de recuperación. En cuanto a la flexibilidad. Para manejar la implementación del marco de trabajo en una forma portable. Para obtener esta portabilidad. .Parametrización de los mecanismos propuestos . 3. . Atención particular es pagada en los mecanismos de la detección y aislamiento que necesita para actuar rápida y localizadamente. La aproximación del marco de trabajo Esta sección describe las tres mayores entidades del marco de trabajo: la librería del usuario. mientras un gran número de los gastos es asumido por estos mecanismos relacionados a las acciones de recuperamiento distribuidas.

Sign up to vote on this title
UsefulNot useful