A Agustín, mi padre
I
AgradecimientosEn primer lugar, quisiera agradecer a mis directores de tesis, Ana García Fornes y Alfons Crespo i Lorente, su dedicación. Sin ellos, esta tesis nunca hubiera podido ser terminada y, mucho más importante, comenzada. Mi agradecimiento, como seguro ambos saben, va más allá de la labor que han realizado como mis directores.Quisiera también agradecer a mis compañeros y compañeras de los grupos Tecnología Informática e Informática Industrial el privilegio de poder trabajar con ellos. A dos de estos compañeros, Andrés Terrasa Barrena y Vicente Botti Navarro, les debo algo muy especial. A Andrés, las incontables ocasiones que ha tenido que soportar que le pidiese ayuda y su infinita paciencia. A Vicente, su constancia en animarme en mi trabajo y su particular forma de hacerlo.Porúltimo, y sobre todo, gracias a mi mujer Amparo y a mis hijos Víctor y Andrea. Han sido muchos los días que han tenido que apoyarme para que yo pudiera realizar esta tesis, y por ello les estoy y estaré inmensamente agradecido.
III
ResumenEsta tesis se ha centrado en el estudio de las políticas basadas en la extracción de holgura y en la asignación dual de prioridades, ambas orientadas a dar servicio a tareas aperiódicas en sistemas de tiempo real estricto. Estas políticas constituyen una interesante alternativa a las políticas basadas en servidores de carga aperiódica y han sido ampliamente estudiadas en numerosos trabajos. No obstante, la posibilidad de ser aplicables en la práctica todavía no había sido evaluada en detalle, yéste ha sido el principal objetivo de esta tesis.En este trabajo, ambas políticas son revisadas en profundidad. En el caso de la política basada en la extracción de holgura, algunas de sus principales debilidades han sido corregidas. En particular, se muestra que es posible compartir recursos entre tareas críticas y aperiódicas de una forma sencilla y eficiente, utilizando para ello los mismos protocolos de herencia de prioridad que pueden aplicarse en sistemas en los que sólo existen tareas críticas.La aplicabilidad de estas políticas ha sido valorada incorporándolas en los dos entornos más relevantes hoy en día para la programación de sistemas de tiempo real estricto, el lenguaje de programación Ada y los servicios POSIX. Con este fin se han definido nuevas interfaces para ambas políticas en estos entornos, coherentes con sus principios de diseño y con los servicios que actualmente ofrecen. El diseño de estas interfaces ha supuesto una adaptación de ambas políticas buscando, en todo momento, un equilibrio entre prestaciones y eficiencia. Como parte de este diseño, estas interfaces han sido implementadas en el sistema operativo MaRTE OS. El proceso de implementación ha servido para validar las distintas alternativas que han sido consideradas.Un aspecto importante de una política de planificación es su eficiencia, por lo que este aspecto ha sido evaluado en detalle. Se ha caracterizado de forma analítica el efecto de la implementación de estas políticas en los tiempos de respuesta de ...