La mejor manera de aprender es implementar un RTOS. Un buen lugar para comenzar es http://www.freertos.org/
Aquí hay una breve descripción general de RTOS para aquellos que todavía no están comprometidos con un libro o código. [Crédito al profesor Jim Peckol en la Universidad de Washington, esta respuesta se basa en mis notas anteriores de su clase]
Un sistema operativo tiene que proporcionar 3 cosas esenciales:
- Programación de tareas: el programador determina qué tarea ejecutar y cuándo se ejecutará una tarea
- Despacho de tareas: el despachador maneja las operaciones necesarias para preparar una tarea.
- Comunicación entre tareas: este es el mecanismo que controla cómo intercambias datos e información entre tareas y procesos en la misma máquina o desde otras máquinas
Estas 3 cosas esenciales son las que conforman la porción más pequeña de un sistema operativo llamado Kernel.
- ¿Debo aprender programación CNC o aprender algún programa CAD / CAM?
- Para un hablante nativo de inglés, ¿cuál es el mejor idioma para aprender en términos de ampliar la comprensión del mundo?
- ¿Cuánto tiempo se tarda en aprender a usar un teclado?
- ¿Cuáles son los mejores podcasts para aprender francés?
- Cómo aprender carpintería básica.
Un sistema operativo en tiempo real es solo un sistema operativo de propósito especial. La parte del nombre en “tiempo real” no significa que el sistema responda rápidamente, solo significa que hay requisitos de tiempo rígidos que deben cumplirse. Si no se cumplen estos requisitos de tiempo, sus resultados pueden volverse inexactos o poco confiables.
Por lo tanto, desea utilizar un RTOS cuando necesite monitorear y controlar los procesos físicos de manera oportuna. Las restricciones con las que se ha enfrentado al utilizar RTOS son la programación ajustada, la previsibilidad y la solidez.
Hay dos tipos de RTOS:
- Tiempo real difícil: los retrasos del sistema son conocidos o al menos limitados. Se dice que funciona correctamente si el sistema puede devolver resultados dentro de cualquier restricción de tiempo.
- Tiempo real suave: las tareas críticas tienen prioridad sobre otras tareas y mantendrán la prioridad hasta que la tarea se complete. Esta es otra forma de decir que las tareas en tiempo real no se pueden mantener esperando indefinidamente. El suave tiempo real facilita la mezcla del sistema con otros sistemas.
Las otras funciones que maneja el sistema operativo fuera del Kernel son:
- Gestión de proceso
- Gestión de la memoria
- Gestión del sistema de E / S
- Gestión del sistema de archivos
- Proteccion del sistema
- Redes
- Interrupcion de comando