Real Time Operation Sistems Cristian Cisneros Morales
UNIDAD 2: Termonología Básica de RTOS
Tarea / Task / Thread Son procedimientos formados por código de programa que asumen que la CPU está 100% disponible. Trabajan con basa a estados y eventos.
Tiempo
Tarea 1
Tarea 2
Tarea 3
Tarea: Prioridad de ejecución de tareas Tiempo
Tarea 1
Tarea 2
Es una medida de la importancia de la ejecución de una tarea en relación a las demás.
Tarea 3
Suele medirse como: baja - media - alta O con números, por ejemplo del 0 al 9 donde el cero representa la máxima prioridad.
Tarea: Estados de una tarea Una tarea puede encontrarse diferentes estados de ejecución: ● ● ● ● ●
Son entidades usadas por una tarea. Pueden ser una función, una estructura, una variable, un periférico interno del MCU, un dispositivo externo, etc. Un recurso puede ser usado por varias tareas
Evento / Event Son intancias las tareas.
de
notificación
Indican la ocurrencia relevante para las ejecución.
hacia
de un hecho tareas en
Pueden ser provocadas por hardaware interno o externo o por software: timeouts, interrupciones, etc.
Semáforo / Semaphore Son mecanismos de control que proveen al RTOS una forma de prevenir que múltiples tareas realicen acceso al mismo recurso en el mismo tiempo. Se usan además para indicar la ocurrencia de un evento y permiten sincronizar varias actividades.
Mensaje / Message / Mail box Es un objeto que entrega a una tarea.
se
También puede ser un puntero a otra tarea. Este puntero puntero normalmente está inicializado a una estructura de datos que contiene un mensaje.
Bloque de memoria / Buffer Son elementos de memoria contínuos para cada aplicación, permiten crear listas circulares, FIFO o LIFO de cualquier tamaño. Las listas pueden crearse y borrarse de maneda dinámica, permitiendo de esta forma un manejo eficiente de la memoria.
Reloj / Timer / Clock Tick El “Clock Tick” o “tick” es una interrupción que ocurre de forma periódica, le permite al RTOS contar el timepo ques entrega a cada tarea y el manejo de timeouts
Kernel Es la parte responsable por la distribución del tiempo de la CPU para el manejo de las tareas. El servicio fundamental de kernel es el cambio de contexto.
Kernel
Preemtivo; y No preemtivo
Kernel NO preemtivo Un kernel NO preemtivo no suspende la ejecución de una tarea, la tarea devuelve el control de la CPU de forma voluntaria, sin embargo las interrupciones pueden retirar el cotnrol de la CPU en cualquier momento.
Kernel preemtivo Un kernel preemtivo es aquel que suspende la tarea en estado RUN y le pasa el control a una tarea de mayor prioridad. El scheduler en su labor entrega el control siempre a la tarea de mayor prioridad. El tiempo de ejecución de las tareas de alta prioridad es determinístico.
RTOS actuales Lista de RTOS: https://docs.google.com/spreadsheet/ccc?key=0AssDNzrmDn3CdDF0YVZqV0NUVXlOX3R0ay1QZmF6VkE#gid=0
freeRTOS ● Kernel de tiempo real totalmente gratuito ● Ofrece código abierto al ser software libre. ● Es el líder del mercado de RTOS, ya que es soportado por 31 arquitecturas de sistemas embebidos y con 77500 descargas al año, es el sistema operativo en tiempo real más ampliamente utilizado.
Thank you for interesting in our services. We are a non-profit group that run this website to share documents. We need your help to maintenance this website.