Colección de citas famosas - Colección de poesías - ¿Cuáles son los sistemas operativos en tiempo real?

¿Cuáles son los sistemas operativos en tiempo real?

Pregunta 1: ¿Cuál es la diferencia entre un sistema operativo duro en tiempo real y un sistema operativo blando en tiempo real? Hay alrededor de 40 sistemas operativos integrados comunes en el mundo, como: Linux, uClinux, WinCE, PalmOS, Symbian, eCos, uCOS-II, VxWorks, pSOS, Nucleus, ThreadX, Rtems, QNX, INTEGRITY, OSE, C Executive. Básicamente se pueden dividir en dos categorías: una son los sistemas operativos en tiempo real orientados al control, la comunicación y otros campos, como vxworks de la empresa windriver, psos de isi, qnx de la empresa de software del sistema qnx, nucleus de ati, etc.; el otro está orientado al consumidor, para productos electrónicos que no funcionan en tiempo real. Dichos productos incluyen asistentes digitales personales (PDA), teléfonos móviles, descodificadores, libros electrónicos, teléfonos web, etc. Los sistemas incluyen WinCE de Microsoft. Palm 3 y Symbian y Android de Google.

(1) VxWorks

El sistema operativo VxWorks es un sistema operativo integrado en tiempo real (RTOS) diseñado y desarrollado por la empresa estadounidense WindRiver en 1983. Es la clave para Componentes del entorno de desarrollo integrado Tornado. Las buenas capacidades de desarrollo sostenible, el kernel de alto rendimiento y el entorno de desarrollo fácil de usar han ido ocupando gradualmente un lugar en el campo de los sistemas operativos integrados en tiempo real.

VxWorks tiene una estructura de microkernel adaptable; gestión eficiente de tareas; comunicación flexible entre tareas; procesamiento de interrupciones a nivel de microsegundos; admite el estándar de extensión en tiempo real POSIX 1003.1b; Protocolo de red TCP/IP, etc.

Sin embargo, es caro. Dado que el sistema operativo en sí y el entorno de desarrollo son propietarios, el precio es generalmente relativamente alto. Por lo general, construir un entorno de desarrollo utilizable cuesta más de 100.000 yuanes y generalmente se cobran regalías adicionales por cada aplicación. Generalmente, no se proporciona código fuente, sólo código binario. Dado que todos son sistemas operativos dedicados y requieren personal técnico especializado para dominar la tecnología de desarrollo y el mantenimiento, el costo del desarrollo y mantenimiento del software es muy alto. Hay disponible una cantidad limitada de hardware compatible. (2) Windows CE

Windows CE tiene buena compatibilidad con la serie Windows, lo que sin duda es una gran ventaja en la promoción de Windows CE. Entre ellos, WinCE3.0 es un sistema operativo integrado modular en tiempo real para dispositivos inteligentes, móviles, de pequeña capacidad, de 32 bits e inteligentes. Proporciona una plataforma de sistema operativo rica en funciones para crear aplicaciones y servicios dinámicos para dispositivos portátiles e inalámbricos. Puede ejecutarse en una variedad de arquitecturas de procesador y generalmente es adecuado para aquellos con ciertas limitaciones en el uso de memoria. Es un sistema operativo multiproceso, de prioridad total y multitarea diseñado en su conjunto para plataformas con recursos limitados. Su diseño modular permite personalizarlo para dispositivos electrónicos de consumo, desde computadoras portátiles hasta controladores industriales dedicados. El núcleo básico del sistema operativo requiere al menos 200 KB de ROM. Dado que los productos integrados tienen requisitos estrictos en términos de tamaño y costo, el espacio ocupado por la parte del procesador debe ser lo más pequeño posible. La cantidad de memoria disponible y memoria externa del sistema también es limitada, y el sistema operativo integrado se ejecuta en una memoria limitada (generalmente en ROM o memoria flash), por lo que presenta requisitos más altos en cuanto a la escala y eficiencia del sistema operativo. . Desde un punto de vista técnico, Windows CE tiene muchas deficiencias como sistema operativo integrado: no existe un código fuente abierto, lo que dificulta a los desarrolladores de aplicaciones personalizar los productos, su rendimiento en términos de eficiencia y consumo de energía no es sobresaliente, y su rendimiento en términos de eficiencia y consumo de energía no es sobresaliente; es lo mismo que Windows La memoria ocupada del sistema y las enormes tarifas de licencia de derechos de autor de los programas de aplicación también son factores que los fabricantes deben considerar. (3) Linux integrado

Este es un nuevo miembro del sistema operativo integrado. Su característica más importante es que su código fuente es abierto y sigue el acuerdo GPL. Se ha convertido en un punto de investigación en el último año. Según las predicciones de IDG, Linux integrado representará el 50% de la cuota de sistemas operativos integrados en los próximos dos años.

Dado que su código fuente está abierto al público, las personas pueden modificarlo para adaptarlo a sus propias aplicaciones y es fácil comprobar si hay errores. Para cumplir con la GPL, no es necesario pagar una tarifa de licencia por cada aplicación. Hay una gran cantidad de aplicaciones de software disponibles. La mayoría de ellos cumplen con la GPL y son de código abierto y gratuitos. Se puede aplicar al propio sistema del usuario con ligeras modificaciones. Hay muchos gratuitos y excelentes... >>

Pregunta 2: ¿Cuáles son los sistemas operativos en tiempo real? Un sistema operativo en tiempo real es un sistema operativo que garantiza completar funciones específicas dentro de él. un límite de tiempo determinado. Los sistemas operativos en tiempo real se dividen en tiempo real duro y tiempo real suave. El tiempo real duro requiere que la operación se complete dentro de un tiempo específico, lo cual se garantiza durante el diseño del sistema operativo en tiempo real suave; Necesita completar la operación lo más rápido posible de acuerdo con la prioridad de la tarea. El sistema operativo que utilizamos habitualmente puede convertirse en un sistema operativo en tiempo real tras ciertos cambios.

Por ejemplo, se puede diseñar un sistema operativo para garantizar que un robot en una línea de producción pueda acceder a un objeto. En un sistema operativo "duro" en tiempo real, si los cálculos para hacer que el objeto sea accesible no se pueden completar dentro del tiempo permitido, el sistema operativo finalizará con un error. En un sistema operativo "suave" en tiempo real, la línea de producción aún puede continuar funcionando, pero la salida del producto se ralentizará porque el producto no llega dentro del tiempo permitido, lo que provoca que el robot tenga un período corto. de no producción. Algunos sistemas operativos en tiempo real están diseñados para aplicaciones específicas, otros son de propósito general. Algunos sistemas operativos de propósito general se denominan a sí mismos sistemas operativos en tiempo real. Pero hasta cierto punto, la mayoría de los sistemas operativos de propósito general, como Windows NT de Microsoft o OS/390 de IBM, tienen características de sistema en tiempo real. Es decir, incluso si un sistema operativo no es estrictamente un sistema en tiempo real, puede resolver algunos problemas de las aplicaciones en tiempo real.

En general, un sistema operativo en tiempo real (RTOS) requiere:

Multitarea

Manejo de líneas de proceso que se pueden priorizar

Un número suficiente de niveles de interrupción

A menudo se requieren sistemas operativos en tiempo real para pequeños sistemas operativos integrados que se instalan como parte de microdispositivos. Se pueden considerar algunas cuestiones centrales para cumplir con los requisitos de un sistema operativo en tiempo real. Sin embargo, un sistema operativo en tiempo real suele ser más grande que el kernel porque a menudo se requieren otros componentes, como los controladores de dispositivos, de formas especiales.

Pregunta 3: ¿Qué son los sistemas operativos en tiempo real? Un sistema operativo en tiempo real es un sistema operativo que garantiza la realización de funciones específicas dentro de un límite de tiempo determinado. Los sistemas operativos en tiempo real se dividen en tiempo real duro y tiempo real suave. El tiempo real duro requiere que la operación se complete dentro de un tiempo específico, lo cual se garantiza durante el diseño del sistema operativo en tiempo real suave; Necesita completar la operación lo más rápido posible de acuerdo con la prioridad de la tarea. Generalmente usamos...

Pregunta 4: ¿Qué sistemas operativos en tiempo real existen? 1 Los sistemas operativos actuales incluyen PC: Windows; Mac os; WAP; >

Pregunta 5: Tareas en tiempo real de sistemas operativos en tiempo real Debe haber varias tareas en tiempo real en un sistema en tiempo real. Estas tareas generalmente están relacionadas con ciertos dispositivos externos y pueden responder o controlar los correspondientes. dispositivos externos, por lo tanto, con cierto nivel de urgencia. Las tareas en tiempo real se pueden clasificar desde diferentes perspectivas. 1. Divida según si hay cambios periódicos durante la ejecución de la tarea: a. Tareas periódicas en tiempo real: el dispositivo externo envía periódicamente una señal de excitación a la computadora, requiriendo que se ejecute en un ciclo específico para controlar periódicamente un determinado externo. dispositivo. b. Tareas no periódicas en tiempo real Las señales de excitación enviadas por dispositivos externos no tienen una periodicidad evidente, pero deben estar conectadas a un plazo. Se puede dividir en dos partes: fecha límite de inicio (la tarea debe comenzar a ejecutarse antes de un tiempo determinado) y fecha límite de finalización (la tarea debe completarse antes de un tiempo determinado). 2. Divida según los requisitos de fecha límite: a. Tareas difíciles en tiempo real b. Tareas suaves en tiempo real

Pregunta 6: ¿Cuáles son los sistemas operativos Windows en tiempo real? son al menos estos tres.

Pregunta 7: Comparación de sistemas operativos en tiempo real Comparación de características de sistemas en tiempo real y sistemas de tiempo compartido (1) Multiplexación. Los sistemas de procesamiento de información en tiempo real son tan multiplexados como los sistemas de tiempo compartido.

El sistema sirve a múltiples usuarios finales según el principio de tiempo compartido. En cuanto al sistema de control en tiempo real, su naturaleza multicanal se refleja principalmente en la recopilación frecuente de información multicanal en el sitio y el control de múltiples objetos o múltiples actuadores. (2) Independencia. Los sistemas de procesamiento de información en tiempo real son tan independientes como los sistemas de tiempo compartido. Cuando cada usuario final realiza una solicitud de servicio al sistema de tiempo compartido, operan de forma independiente entre sí y no interfieren entre sí. En el sistema de control en tiempo real, la recopilación de información y el control de objetos tampoco interfieren. unos con otros. (3) Puntualidad. Los requisitos de tiempo real de los sistemas de información en tiempo real son similares a los de los sistemas de tiempo compartido, que están determinados por el tiempo de espera aceptable, mientras que la puntualidad de los sistemas de control en tiempo real se basa en la fecha límite de inicio o finalización requerida por; el objeto de control Para determinar, generalmente está en el segundo nivel, cientos de milisegundos, o incluso milisegundos, y algunos son incluso inferiores a 100 microsegundos. (4) Interactividad. Los sistemas de procesamiento de información en tiempo real son interactivos, pero la interacción entre los humanos y el sistema se limita al acceso a algunos programas de servicio dedicados específicos en el sistema. No proporciona servicios de procesamiento de datos, intercambio de recursos y otros servicios a los usuarios finales como un sistema de tiempo compartido. (5) Confiabilidad. Los sistemas de tiempo compartido requieren confiabilidad del sistema; por el contrario, los sistemas en tiempo real requieren que los sistemas sean altamente confiables. Porque cualquier error puede traer enormes pérdidas económicas o incluso consecuencias catastróficas impredecibles. Por lo tanto, en los sistemas en tiempo real, se toman medidas de tolerancia a fallas de múltiples niveles para garantizar la seguridad del sistema y los datos.

Pregunta 8: La diferencia entre un sistema operativo integrado en tiempo real y un sistema operativo integrado en tiempo real. El sistema operativo utilizado en un sistema integrado en tiempo real se denomina sistema operativo integrado en tiempo real. Sistema operativo integrado y sistema operativo en tiempo real. Como sistema operativo integrado, tiene las características únicas del software integrado, como adaptabilidad, bajo uso de recursos y bajo consumo de energía, y como sistema operativo en tiempo real (la discusión de las características del sistema operativo en tiempo real en este artículo es limitada; a un sistema operativo fuerte en tiempo real, el sistema operativo en tiempo real mencionado a continuación también se refiere al sistema operativo fuerte en tiempo real), que es muy diferente de los sistemas operativos de propósito general (como Windows, Unix, Linux, etc.) A continuación compararemos los dos. Las características principales de los sistemas operativos en tiempo real se describen paso a paso a través de las diferencias entre los sistemas operativos.

A lo que estamos más expuestos en nuestro entorno diario de trabajo y estudio son los sistemas operativos de propósito general. Los sistemas operativos de propósito general se desarrollan a partir de sistemas operativos de tiempo compartido. La mayoría de ellos admiten multiusuarios y múltiples. -procesos y son responsables de gestionar muchos procesos y asignarles recursos del sistema. El principio de diseño básico del sistema operativo de tiempo compartido es acortar el tiempo de respuesta promedio del sistema y mejorar la tasa de rendimiento del sistema tanto como sea posible, y brindar servicios a tantas solicitudes de usuarios como sea posible en una unidad de tiempo. De esto se puede ver que el sistema operativo de tiempo compartido se centra en el rendimiento medio y no en el rendimiento individual. Por ejemplo, para todo el sistema, céntrese en el tiempo de respuesta promedio de todas las tareas sin importar el tiempo de respuesta de una sola tarea. Para una sola tarea, céntrese en el tiempo de respuesta promedio de cada ejecución sin importar el tiempo de respuesta de una. ejecución específica. Muchas estrategias y técnicas utilizadas en los sistemas operativos generales reflejan este principio de diseño. Por ejemplo, debido al uso de algoritmos de reemplazo de páginas como LRU en el mecanismo de administración de memoria virtual, la mayoría de los requisitos de acceso a la memoria se pueden completar rápidamente a través de una pequeña memoria física. parte de los requisitos de acceso a la memoria deben completarse mediante paginación, pero en general, el tiempo promedio de acceso a la memoria no mejora mucho en comparación con no usar tecnología de memoria virtual y, al mismo tiempo, el espacio virtual puede ser mucho mayor que la memoria física. beneficios de capacidad, etc., por lo que la tecnología de memoria virtual se ha utilizado ampliamente en sistemas operativos de propósito general. Hay muchos ejemplos similares, como el mecanismo de consulta de índice indirecto para ubicaciones de almacenamiento de archivos en el sistema de archivos Unix. Incluso la tecnología de caché en el diseño de hardware y la tecnología de predicción de ramas dinámicas de la CPU también reflejan este principio de diseño. Se puede ver que el impacto de este principio de diseño que se centra en el rendimiento promedio, es decir, las características estadísticas de rendimiento, es de gran alcance.

El sistema operativo en tiempo real, RTOS (sistema operativo en tiempo real), significa que cuando se generan eventos o datos externos, puede aceptarlos y procesarlos a una velocidad lo suficientemente rápida, y los resultados del procesamiento pueden ser procesado dentro del tiempo especificado Para controlar el proceso de producción o responder rápidamente al sistema de procesamiento dentro de un tiempo determinado, y controlar el sistema operativo para que todas las tareas en tiempo real se ejecuten de manera coordinada.

En cuanto al sistema operativo en tiempo real, hemos mencionado antes que, además de cumplir con los requisitos funcionales de la aplicación, también debe cumplir con los requisitos en tiempo real de la aplicación. Las muchas tareas en tiempo real que la componen. Una aplicación tiene diferentes requisitos en tiempo real. Además, puede haber algunas correlaciones y relaciones de sincronización complejas entre tareas en tiempo real, como restricciones de orden de ejecución, requisitos de acceso mutuamente excluyentes para recursos compartidos, etc., lo que plantea muchos desafíos. para garantizar el rendimiento en tiempo real del sistema. Por lo tanto, el principio de diseño más importante que sigue un sistema operativo en tiempo real es adoptar varios algoritmos y estrategias para garantizar siempre la previsibilidad del comportamiento del sistema. La previsibilidad significa que, en cualquier momento y bajo cualquier circunstancia, cuando el sistema se está ejecutando, la estrategia de asignación de recursos del sistema operativo en tiempo real puede asignar recursos razonablemente a múltiples tareas en tiempo real que compiten por los recursos (incluida la CPU, la memoria, el ancho de banda de la red, etc.). .), para que se puedan cumplir los requisitos en tiempo real de cada tarea en tiempo real. A diferencia de los sistemas operativos generales, los sistemas operativos en tiempo real no se centran en el rendimiento promedio del sistema, sino que, en el peor de los casos, requieren que cada tarea en tiempo real cumpla con sus requisitos en tiempo real. centrarse en el desempeño individual. Más exactamente, es el peor desempeño de un individuo. Por ejemplo, si el sistema operativo en tiempo real utiliza tecnología de memoria virtual estándar, el peor de los casos para una tarea en tiempo real es que cada acceso a la memoria requiere paginación, por lo que el tiempo de ejecución acumulado de la tarea en el peor de los casos es imposible de predecir. , por lo que no se puede garantizar la realización en tiempo real de esta tarea. Se puede ver que la tecnología de memoria virtual ampliamente utilizada en sistemas operativos de propósito general no es adecuada para uso directo en sistemas operativos en tiempo real.

Dado que los principios básicos de diseño de los sistemas operativos en tiempo real y los sistemas operativos de propósito general son muy diferentes, la selección de muchas estrategias de programación de recursos...>>

Pregunta 9: Características de los sistemas operativos en tiempo real 1) Sistema de sincronización de alta precisión La precisión de la sincronización es un factor importante que afecta el rendimiento en tiempo real. En los sistemas de aplicaciones en tiempo real, a menudo es necesario determinar con precisión si se debe operar un dispositivo o realizar una determinada tarea en tiempo real, o calcular con precisión una función de tiempo. Estos dependen no sólo de la precisión del reloj proporcionada por algunos hardware, sino también de las funciones de sincronización de alta precisión implementadas por el sistema operativo en tiempo real. 2) Mecanismo de interrupción multinivel Un sistema de aplicación en tiempo real generalmente necesita procesar una variedad de información o eventos externos, pero la urgencia del procesamiento se divide en prioridades. A algunas se debe responder de inmediato, mientras que a otras se puede aplazar. Por lo tanto, es necesario establecer un mecanismo de procesamiento de anidamiento de interrupciones de múltiples niveles para garantizar una respuesta y un procesamiento oportunos de eventos en tiempo real con un alto grado de urgencia. 3) Mecanismo de programación en tiempo real El sistema operativo en tiempo real no solo debe responder a interrupciones de eventos en tiempo real de manera oportuna, sino también programar y ejecutar tareas en tiempo real de manera oportuna. Sin embargo, la programación del procesador no se puede realizar a voluntad porque implica cambiar entre dos procesos, que solo se puede realizar en un momento que garantice un "cambio seguro". El mecanismo de programación en tiempo real incluye dos aspectos, uno es la estrategia de programación y el otro. El algoritmo garantiza que las tareas en tiempo real se programen con prioridad; en segundo lugar, se establecen más puntos de tiempo de "cambio seguro" para garantizar la programación oportuna de las tareas en tiempo real. Características de los sistemas operativos en tiempo real El Subcomité IEEE Real-Time UNIX cree que un sistema operativo en tiempo real debe tener los siguientes puntos: 1. Respuesta a eventos asincrónicos 2. Determinación del tiempo de conmutación y tiempo de retardo de interrupción 3. Interrupciones y programación de prioridad 4 Programación preventiva