PLANIFICACION POR PLAZOS

 

La mayoría de los sistemas operativos actuales en tiempo real se diseñaron con el objetivo de dar inicio a las tareas de tiempo real tan rápidamente como fuera posible, y por lo tanto, hacen hincapié en una rápida gestión de las interrupciones y expediciones de las tareas. De hecho, no hay medidas particularmente útiles en la evaluación de los istemas operativos en tiempo real. En las aplicaciones en tiempo real generalmente no preocupa la velocidad absoluta, sino completar las tareas en el momento mas apropiado, ni antes ni después, a pesar de las peticiones dinámicas de recursos y los conflictos, la sobrecarga de proceso y los fallos de hardware o software.

Todas las planificaciones desarrolladas para tal fin se basan en rescatar más información sobre las tareas. Estas son algunas de las mas utilizadas:

 

v   Instante en que esta lista: el instante en que la tarea pasa a estar lista para ejecución. En el caso de una tarea repetitivao periódica, es en realidad una secuencia de instantes conocido con anterioridad. En el caso de una tarea aperiódica, este tiempo puede ser conocido con anterioridad o bien el sistema operativo puede tener conocimiento de él solamente cuando la tarea ya se encuentre lista.

 

v   Plazo de comienzo: instante en el que la tarea debe comenzar.

 

v   Plazo de finalización: instante en el que la tarea debe terminar.Las aplicaciones típicas, de tiempo real tienen normalmente un plazo de comienzo o un plazo de finalización pero no ambos.

 

v   Tiempo de proceso: el tiempo necesario para ejecutar una tarea hasta su finalización. En algunos casos, este tiempo es facilitado, pero, en otros, el sistema operativo calcula un promedio. En otros sistemas de planificación no se usa esta información.

 

v   Exigencas de recursos o requerimientos del sistema: el conjunto de recursos (ademas del procesador) que necesita una tarea durante su ejecución.

v   Prioridad: Medición de importancia relativa de la tarea. Las tareas rígidas de tiempo real pueden tener una prioridad “absoluta”, produciéndose un fallo del sistema si un plazo se pierde. Si el sistema continúa ejecutándose pase lo que pase, tanto las tareas rígidas de tiempo real como las flexiblesrecibirán una prioridad relativa como guía para el planificador.

 

v   Estructura de subtareas: una tarea puede ser descompuesta en una subtarea obligatoria y otra subtarea opcional. Sólo la subtarea obligatoria tiene un plazo rígido.

 

 

Tabla  10.2  Perfil de ejecución de dos

                   tareas periódicas.

 

Para una estrategia de apropiacióndada, tanto si se emplean plazos de inicio como de terminación, usar la política de planificación de la tarea con el plazo más próximo minimiza la proporción de tareas que no cumplen sus plazos. Esta conclusión es válida tanto para configuraciones monoprocesadores como multiprocesadores.

 

El otro punto crítico del diseño es la apropiación. Cuando se especifican unos plazos de comienzo, tiene sentido unplanificador no preferente. En cambio para un sistema con plazos de terminación, es más apropiada una estrategia preferente.

 

Para las tareas que son periódicas y predecibles, se usa un método de planificación con tablas estáticas.

 

 

Figura 10.5  Planificación de tareas periódicas de tiempo real

 con plazos de terminación.

 

 

Un método sencillo consiste en planificar la tarea lista con el plazo más próximoy dejar que la tarea se ejecute hasta el final. Cuando se usa este método puede ocurrir, que una tarea específica requiera un servicio inmediato y se le niege. Este es el riesgo de tratar con las tareas aperiódicas, especialmente con plazos de inicio. Un refinamiento de la política mejorará el rendimiento si los plazos se conocen antes del instante en que la tarea esté lista. Esta política, conocida como la del plazo más próximo con tiempos libres no forzosos, funciona de la siguiente forma: siempre se planifica la tarea elegible con el plazo más próximo y se deja ejecutar hasta que finalice. Una tarea elegible puede no estar lista y esto puede originar que el procesador quede libre aunque haya tareas listas.

El resultado es que, aunque el procesador no se utiliza con la máxima eficiencia, se cumplen todos los requisitosde planificación.

 

 

Figura 10.6  Planificación de tareas aperiódicas de tiempo real

 con plazos de inicio.

 

Indice