Introducción
Actualmente me estoy preparando el que espero sea el último examen de la carrera (que bien suena, pensé que nunca llegaría a decirlo
), que oficialmente es mañana. El caso es que a éstas alturas del verano y tras haber pasado, pongamos (por poner), 24 meses en los que se puede decir que me ha pasado de todo, ahora estoy que no me entra nada en la cabeza ni soy capaz de estar mas de cinco minutos concentrado con nada, así que me he dicho “pues escribe a ver si así te concentras mas”, y aquí estoy.
Sobre lo que voy a escribir ahora es acerca de algunos conceptos sobre planificación en Sistemas Críticos, que es el tema que me ocupa ahora (y que, para qué engañarnos, el que mas me preocupa). Hay montones de ecuaciones que en principio son sencillas, pero numerosas, y además varios tipos de protocolos y de tipos de asignaciones de prioridad, así que lo mejor que puedo hacer es resumirlas y ya de paso tenerlas a mano, pues me parecen tan útiles como interesantes. Empecemos….
Asignación de prioridades
Bueno, para empezar diré que asumo que todos sabemos lo que es un Ejecutivo Cíclico y en qué consiste un Hiperciclo. También asumo que se tienen claros conceptos como Concurrencia, Período de Activación, Tiempo de Ejecución Máximo, Plazo de Respuesta y un largo etcétera.
Dicho todo lo anterior, prosigamos. Formas de asignar prioridades a las distintas tareas de un ejecutivo cíclico puede haber muchas: según el preriodo de activación de las tareas, el tiempo de cómputo, el número de recursos que se utilizan o la cantidad de procesos con los que se comparten ciertos recursos, por poner unos ejemplos.
Do de éstas formas de asignación son la Asignación de mayor prioridad a las tareas de menor período (Rate monotonic scheduling) y la Asignación de mayor prioridad a las tareas de menor plazo de respuesta (Deadline monotonic sheduling). Las características de éstos sistemas de asignación son las siguientes:
- Rate monotonic scheduling
- Asigna mayor prioridad a las tareas cuyo período de activación (T) es menor.
- Asignación óptima para el modelo de tareas simple: Tareas periódicas, independientes y con plazos iguales a los períodos.
- Si se pueden garantizar los plazos de un sistema de tareas con otra asignación de prioridades, se pueden garantizar con la asignación monónota en frecuencia.
- Deadline monotonic scheduling
- Asigna mayor prioridad a las tareas con menor plazo de ejecución.
- Es válido para modelos en los que existen tareas esporádicas.
- Si los plazos son menores o iguales que los períodos, la asignación de mayor prioridad a las tareas de menor plazo de respuesta es óptima.
Factor de utlización
En un sistema crítico una medida muy importante es el Factor de Utilización del procesador. Éste factor muestra la relación existente entre el tiempo de cómputo de una tarea dada y su periodo de activación, dando una idea del uso total del procesador. El factor de utilización (U) siempre tiene que ser menor o igual a 1.
La ecuación para el cálculo de U en un sistema es la siguiente: siendo N el número de tareas en ejecución, C es el tiempo de cómputo de una tarea dada y T es el periodo de activación.
En el modelo simple de ejecución con prioridades monótonas en frecuencia, los plazos se garantizan si siendo
la Utilización mínima garantizada del sistema para N tareas. Un sistema cumplirá con los plazos siempre que, como se ha comentado anteriormente, . Aunque ésta no es condición necesaria, si que es suficiente.
Mas cosas
Iré añadiendo mas cosillas poco a poco, ya después del examen…
Referencias
Básicamente mis apuntes de clase


