1 research outputs found

    Extensiones a los m茅todos de planificaci贸n de sistemas de tiempo real cr铆ticos basados en prioridades

    Get PDF
    Los sistemas de tiempo real tienen un papel cada vez m谩s importante en nuestra sociedad. Constituyen un componente fundamental de los sistemas de control, que a su vez forman parte de diversos sistemas de ingenier铆a b谩sicos en actividades industriales, militares, de comunicaciones, espaciales y m茅dicas. La planificaci贸n de recursos es un problema fundamental en la realizaci贸n de sistemas de tiempo real. Su objetivo es asignar los recursos disponibles a las tareas de forma que 茅stas cumplan sus restricciones temporales. Durante bastante tiempo, el estado de la t茅cnica en relaci贸n con los m茅todos de planificaci贸n ha sido rudimentario. En la actualidad, los m茅todos de planificaci贸n basados en prioridades han alcanzado un nivel de madurez suficiente para su aplicaci贸n en entornos industriales. Sin embargo, hay cuestiones abiertas que pueden dificultar su utilizaci贸n. El objetivo principal de esta tesis es estudiar los m茅todos de planificaci贸n basados en prioridades, detectar las cuestiones abiertas y desarrollar protocolos, directrices y esquemas de realizaci贸n pr谩ctica que faciliten su empleo en sistemas industriales. Una cuesti贸n abierta es la carencia de esquemas de realizaci贸n de algunos protocolos con n煤cleos normalizados. El resultado ha sido el desarrollo de esquemas de realizaci贸n de tareas peri贸dicas y espor谩dicas de tiempo real, con detecci贸n de fallos de temporizaci贸n, comunicaci贸n entre tareas, cambio de modo de ejecuci贸n del sistema y tratamiento de fallos mediante grupos de recuperaci贸n. Los esquemas se han codificado en Ada 9X y se proporcionan directrices para analizar la planificabilidad de un sistema desarrollado con esta base. Un resultado adicional ha sido la identificaci贸n de la funcionalidad m铆nima necesaria para desarrollar sistemas de tiempo real con las caracter铆sticas enumeradas. La capacidad de adaptaci贸n a los cambios del entorno es una caracter铆stica deseable de los sistemas de tiempo real. Si estos cambios no estaban previstos en la fase de dise帽o o si hay m贸dulos err贸neos, es necesario modificar o incluir algunas tareas. La actualizaci贸n del sistema se suele realizar est谩ticamente y su instalaci贸n se lleva a cabo despu茅s de parar su ejecuci贸n. Sin embargo, hay sistemas cuyo funcionamiento no se puede detener sin producir da帽os materiales o econ贸micos. Una alternativa es dise帽ar el sistema como un conjunto de unidades que se pueden reemplazar, sin interferir con la ejecuci贸n de otras unidades. Para tal fin, se ha desarrollado un protocolo de reemplazamiento din谩mico para sistemas de tiempo real cr铆tico y se ha comprobado su compatibilidad con los m茅todos de planificaci贸n basados en prioridades. Finalmente se ha desarrollado un esquema de realizaci贸n pr谩ctica del protocolo.---ABSTRACT---Real-time systems are very important now a days. They have become a relevant issue in the design of control systems, which are a basic component of several engineering systems in industrial, telecommunications, military, spatial and medical applications. Resource scheduling is a central issue in the development of real-time systems. Its purpose is to assign the available resources to the tasks, in such a way that their deadlines are met. Historically, hand-crafted techniques were used to develop real-time systems. Recently, the priority-based scheduling methods have reached a sufficient maturity level to be feasible its extensive use in industrial applications. However, there are some open questions that may decrease its potential usefulness. The main goal of this thesis is to study the priority-based scheduling methods, to identify the remaining open questions and to develop protocols, implementation templates and guidelines that will make more feasible its use in industrial applications. One open question is the lack of implementation schemes, based on commercial realtime kernels, of some of the protocols. POSIX and Ada 9X has served to identify the services usually available. A set of implementation templates for periodic and sporadic tasks have been developed with provisi贸n for timing failure detection, intertask coraraunication, change of the execution mode and failure handling based on recovery groups. Those templates have been coded in Ada 9X. A set of guidelines for checking the schedulability of a system based on them are also provided. An additional result of this work is the identification of the minimal functionality required to develop real-time systems based on priority scheduling methods, with the above characteristics. A desirable feature of real-time systems is their capacity to adapt to changes in the environment, that cannot be entirely predicted during the design, or to misbehaving software modules. The traditional maintenance techniques are performed by stopping the whole system, installing the new application and finally resuming the system execution. However this approach cannot be applied to non-stop systems. An alternative is to design the system as a set of software units that can be dynamically replaced within its operative environment. With this goal in mind, a dynamic replacement protocol for hard real-time systems has been defined. Its compatibility with priority-based scheduling methods has been proved. Finally, a execution t茅mplate of the protocol has been implemented
    corecore