next up previous
Siguiente: Diseño Conceptual del dispositivo Superior: Dispositivo KURT, KU Tiempo Anterior: Conceptos Básicos de Tiempo

Subsecciones


Trabajo relacionado

Varios esfuerzos se han hecho para tener sistemas operativos de RT. Esas soluciones se pueden clasificar como núcleos pequeños pero rápidos, extensiones a SO comerciales y SO de investigación. En este artículo nos enfocaremos a las extensiones a Linux.No entraremos en los detalles de cada solución.

Hay algunos SO de RT disponibles comercialmente, pero en su gran mayoría son costosos. En cambio, existen soluciones gratuitas basadas en LINUX. Algunas de ellas son:

Cada una de estas soluciones resuelve el problema de cumplimiento de plazos y resolución de tiempo de forma diferente.

KURT

KURT básicamente hace dos modificaciones al núcleo de Linux. Cambia la resolución temporal y usa un planificador de trabajos fuera de línea [3]. Para mejorar la resolución de tiempo y evitar el sobre trabajo en mantener el relog KURT usa el contador del grupo fecha/hora (Time Stamp Counter)  [6]. Para tener mayores información en referencia al TSC se invita al lector revisar la referencia número  [6].

La segunda modifcación es en planificador de trabajos. Este requiere que la aplicación fije los plazos, esto puede ser considerado un ejemplo del paradigma de programar procesos a través de una tabla  [5].

RT-LINUX

RT-Linux provee de una solución distinta. RT-Linux separa los mecanismos usados en RT de los de propósito general en el núcleo . Con el fin de coordinar las multiples llamadas a interrupción Este tiene un proceso el cual atiende las interrupciones. Al igual que KURT modifica el planificador de trabajos y emplea dos modos de planificación de tareas: paso a paso o periodica . La idea usada en RT-Linux se asemeja a la idea de núcleo pequeño propuesta por Ramamritham  [5].

RED-Linux.

RED-Linux usa la resolución de tiempo y el mecanismo de emulación de atención a interrupciones hechos por TR-Linux  [9] pero usa una politica diferente de programamción de tareas. Su programador de tareas se divide en dos partes: reservador y repartidor. El reservador es responsable de preparar los recursos de un nuevo proceso o tarea. Este reservador produce una prioridad efectiva para cada proceso. Basado en esta prioridad el despachador decidirá el order de ejecución  [9]. La prioridad efectiva es una refinación de tres paradigmas de programación: Por prioridad, por tiempo y por proporción.

Linux/RK

Linux/RK reserva recursos como procesador, accesos a disco, etc. Este es similar a una agencia de viajes la cual hace reservaciones para el viajero. Este aprovecha la resolución temporal y emplea una programación dinámica.

Es importante recordar que no existe la solución perfecta. Algunas soluciones se ajustan mejor para un tipo de aplicación que otras. En las investigaciones hechas en nuestra institución KURT ha sido la mejor solución a nuestras necesidades. Además se ha ido adecuando a nuestros requerimientos.


next up previous
Siguiente: Diseño Conceptual del dispositivo Superior: Dispositivo KURT, KU Tiempo Anterior: Conceptos Básicos de Tiempo

Download this document: [src.tar.gz][ps.gz][html.tar.gz][dvi.gz]

Congreso HispaLinux 2000