1 / 17

Introducción a Sistemas de Tiempo Real

Introducción a Sistemas de Tiempo Real. Rodrigo Camacho I Gabriel Sepúlveda V Programación de Sistemas Segundo Semestre 2005. Idea Principal. Estrategia: Administrar los recursos computacionales adecuadamente para manejar tareas en tiempo real, por ejemplo interrupciones.

gittel
Download Presentation

Introducción a Sistemas de Tiempo Real

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introducción a Sistemas de Tiempo Real Rodrigo Camacho I Gabriel Sepúlveda V Programación de Sistemas Segundo Semestre 2005

  2. Idea Principal • Estrategia: • Administrar los recursos computacionales adecuadamente • para manejar tareas en tiempo real, por ejemplo interrupciones. • Tratar a Linux como una tarea de baja prioridad insertando un microkernel de tiempo real. Un sistema operativo de tiempo real nace bajo la necesidad de poder responder a los requerimientos de determinadas tareas críticas al tiempo en que ellos se producen.

  3. S.O. Tradicional • Arquitectura de sistema operativo: La memoria física se divide en espacio usuario y espacio kernel. • El kernel maneja aplicaciones del espacio usuario.

  4. S.O. Tradicional Las principales labores de un sistema operativo son: • Gestión y planificación de procesos. • Gestión de memoria. • Interacción con el hardware. • Servidor de archivos. • Servidor de comunicaciones La principal función de un S.O en tiempo real es proveer un servicio adecuado a las aplicaciones que requieran respuesta en un intervalo de tiempo determinado.

  5. S.O. de Tiempo Real ¿Qué implica insertar un microkernel? capacidad de interceptar y tratar las interrupciones de hardware con el fin de minimizar los tiempos de espera.

  6. S.O. de Tiempo Real

  7. S.O. de Tiempo Real Se cuantifica esta propiedad mediante dos medidas del tiempo de respuesta: • Latencia: tiempo desde que se produce una interrupción (sofware o hardware) hasta que se ejecuta la primera rutina de tratamiento. • Jitter : el periodo de Jitter cuantifica las desviaciones temporales que presenta la ejecuación de una tarea periódica con respecto al tiempo que demora cada ciclo.

  8. S.O. de Tiempo Real En conclusión: Un sistema operativo de tiempo real deberá asegurar valores bajos de Latencia y Jitter, y dentro de márgenes de variación máxima determinados.

  9. Tipos de Tiempo Real • Tiempo real estricto(Hard Real Time):aplicaciones que tienen plazos estrictos y resulución de tiempo muy fina. Ej: un robot que maneja autos. • Tiempo real flexible(Soft Real Time): aplicaciones que tienen plazos flexibles y resolución de tiempo no muy fina. Ej: editor de texto. • Tiempo real firme(Firm Real Time): aplicaciones que permiten fallar algunos plazos pero que requieren resulución de tiempo muy fina.

  10. Estructura de un S.O. de Tiempo Real En la actualidad hay dos corrientes de diseño: Atención prioritaria en el kernel estándar (Preemptable kernel): Se realizan modificaciones al kernel. Modificaciones sobre le kernel estándar(Patch): Se añade un kernel dual para manejar RT.

  11. Entonces... Este micro-kernel intercepta las interrupciones hardware y asegura que las tareas de tiempo real ejecuten con la mayor prioridad posible de forma que la latencia se minimice. Ejemplo de implementación de esta metodología son RTLinux y RTAI.

  12. Instalando RTAI • Debe recompilarse el kernel parchado. • Instalar Debian, preferentemente usando sistema de archivos ext3. • Descargar el kernel fuente: apt-get install kernel-source-version. • Extraer el kernel fuente: cd /usr/src/ tar xjf kernel-source-version.

  13. Parchar el kernel con RTAI. • Descargar rtai-24.1.11.tgz en home/my_home • Tar xzf rtai-24.1.11.tgz • Cd /usr/src/linux • su • patch –p1 < /home/my_home/rtai- 24.1.11/patches/patch-2.4.18-rthal15g

  14. Compilar kernel (con patch). • cd /usr/src • ln –s kernel-source-version linux • cd Linux • make xconfig (o también: gconfig, menuconfig) • make dep • make bzImage

  15. Compilar kernel (con patch). • make modules • make module_installl • cp arch/i386/boot/bxImage /boot • En nuestro caso se utilizó el gestor de arranque grub por lo que agregamos la nueva editando el archivo /boot/grub/menu.lst • Finalente rebooteamos para comprobar la correcta instalación.

  16. Compilar RTAI. • Se compila RTAI. • Se comprueba su funcionamiento con programas de prueba incorporados.

  17. Proceso de desarrollo de RTAI.

More Related