Categoría de diseño: Otros artículos Fuente: www.lw63.com Computer Paper 32 Hora de actualización: 2008-10-2 14:19:52 |Fuente: Small Da .
2.1.3 Sistema operativo integrado en tiempo real
El sistema operativo en tiempo real (Real Time Operating System) es un sistema basado en las características operativas del sistema operativo, que tiene características reales. -Rendimiento en tiempo y puede admitir control en tiempo real. Su tarea principal es programar todos los recursos disponibles para completar tareas de control en tiempo real y mejorar la confiabilidad. En segundo lugar, se centra en mejorar la eficiencia del sistema y cumplir con las limitaciones y requisitos de tiempo. RTOS es la base y la plataforma de desarrollo para el software de aplicaciones integradas y debe tener las siguientes funciones:
1) Gestión de tareas (multitarea y programación de tareas basada en prioridades);
2) Sincronización. y comunicación entre tareas (semáforos, buzones de correo y colas de mensajes);
3). Gestión de optimización de la memoria (incluida la gestión de ROM)
4).Servicio de reloj en tiempo real
. p>5). Servicio de gestión de interrupciones
Las tareas en el sistema operativo en tiempo real son equivalentes al concepto de procesos en el sistema operativo en tiempo real. Las tareas del sistema tienen cuatro estados: ejecución, lista, suspendida e inactiva.
En ejecución: obtener el control de la CPU;
Listo: ingresar a la cola de espera de tareas y transferir al estado de ejecución mediante programación
Colgar: la tarea está; bloqueada y eliminada La cola de tareas en espera se activa y espera a que eventos en tiempo real del sistema entren en estado listo o en ejecución;
Dormir: tareas que se eliminan debido a su finalización o error.
Solo se está ejecutando una tarea a la vez.
RTOS es una rama importante de la investigación de sistemas operativos. Tiene el mismo lado que los sistemas operativos multitarea comerciales generales (como Unix y Windows), pero también tiene un lado diferente. Para los sistemas operativos comerciales multitarea, su propósito es facilitar a los usuarios la gestión de los recursos informáticos y lograr la máxima utilización de los recursos del sistema. RTOS persigue la programación en tiempo real del sistema, la certeza del tiempo de respuesta y una alta confiabilidad. La evaluación de un sistema operativo en tiempo real generalmente se puede medir desde varios aspectos, como la programación de tareas, la gestión de la memoria, la comunicación de tareas, la sobrecarga de memoria, el tiempo de conmutación de tareas y el tiempo máximo de prohibición de interrupciones. Por tanto, los principales problemas que debe resolver RTOS son los siguientes:
(1) Mecanismo de programación de tareas:
El rendimiento en tiempo real y las capacidades multitarea de RTOS dependen en gran medida de su mecanismo de programación de tareas. En términos de estrategia de programación, se divide en estrategia de programación prioritaria y estrategia de programación de rotación de intervalos de tiempo; en términos de método de programación, se puede dividir en métodos de programación preventivos, no preventivos y preventivos desde la perspectiva del intervalo de tiempo; dividido en rotación de intervalo de tiempo fijo y variable. Simplemente mirando el modo de programación preventiva basado en prioridades, existen muchos métodos para calcular la prioridad.
En la mayoría de los sistemas comerciales en tiempo real, para permitir que el sistema operativo obtenga rápidamente el control del sistema y responda rápidamente cuando ocurre una emergencia, la mayoría proporciona una función de "programación preventiva de tareas". Es decir, el sistema operativo tiene derecho a finalizar la ejecución de una aplicación (tarea de aplicación) y otorgar derechos de ejecución a la tarea con mayor prioridad.
⑵Gestión de memoria
Al igual que los sistemas operativos de tiempo compartido, los sistemas operativos en tiempo real utilizan una unidad de gestión de memoria (MMU) para la gestión de la memoria. El modo de administración de memoria del sistema operativo en tiempo real se puede dividir en modo real y modo protegido (principalmente para Intel x86). Actualmente, los principales sistemas operativos en tiempo real generalmente ofrecen dos modos para que los usuarios elijan según la aplicación.
(3) Sobrecarga mínima de memoria
En el proceso de diseño de RTOS, la sobrecarga mínima de memoria es un indicador importante, porque en algunas computadoras industriales en el campo del control industrial (como bits superiores e inferiores) Para reducir costos, la configuración de la memoria generalmente no es muy grande. En este espacio limitado, no solo se debe cargar el sistema operativo en tiempo real, sino también los programas de usuario. Por lo tanto, en el diseño de RTOS, el tamaño de la memoria que ocupa es un indicador muy importante. Esta es también una de las diferencias obvias entre el diseño de RTOS y otros diseños de sistemas operativos.
(4) Tiempo máximo de desactivación de interrupciones y tiempo de retardo de interrupción
Cuando RTOS se ejecuta en modo kernel o ejecuta algunas llamadas al sistema, la ejecución no se verá interrumpida por la llegada de interrupciones externas.
Solo cuando el RTOS vuelve al modo de usuario puede responder a solicitudes de interrupción externas. El tiempo máximo requerido para este proceso es el tiempo máximo de desactivación de interrupciones.
El tiempo de espera de interrupción se refiere al tiempo requerido por el sistema para confirmar el inicio de la interrupción hasta que se ejecuta la primera instrucción de la rutina del servicio de interrupción. La latencia de interrupción de un sistema operativo en tiempo real está determinada por los siguientes tres factores: el tiempo de retardo del circuito de hardware del procesador, que generalmente es insignificante, el tiempo requerido por el sistema operativo en tiempo real para procesar la interrupción y transferir el control; el controlador correspondiente; interrumpir el tiempo de desactivación.
⑸Tiempo de cambio de tarea (tiempo de cambio de contexto)
Cuando una tarea deja de ejecutarse por algún motivo, RTOS guarda la información del sitio en ejecución y la inserta en la cola correspondiente. Se vuelve a seleccionar un determinado algoritmo de programación. una nueva tarea para ejecutar. El tiempo necesario para este proceso se denomina tiempo de cambio de tarea. Más precisamente, el tiempo de cambio de tarea es el tiempo que tarda un sistema operativo en tiempo real en recuperar el control de la ejecución de una tarea y luego entregárselo a otra. Incluyendo el tiempo requerido para guardar la información en el sitio de la tarea que se está ejecutando actualmente, el tiempo de programación requerido por el RTOS para decidir la siguiente tarea programada y el tiempo requerido por el RTOS para transferir otra tarea al sistema para su ejecución.
Entre ellos, el tiempo máximo de prohibición de interrupciones y el tiempo de cambio de tareas son los dos indicadores técnicos más importantes para evaluar el rendimiento en tiempo real de RTOS.