¿Cuáles podrían ser los criterios de selección para la distribución de Linux, VxWorks o Threadx RTOS para una aplicación integrada?

  1. ¿Qué tan en tiempo real debe ser el sistema operativo? En otras palabras, si una tarea se ejecuta en X unidades de tiempo, X + n es la ventana más larga y Xm es la más corta, ¿qué valores están permitidos para n y m?
  2. ¿Cuán determinista debe ser el sistema operativo? Si dividió el tiempo en segmentos de tiempo de tamaño fijo, ¿hasta qué punto podría desplazarse el intervalo de tiempo de su tarea antes de que fuera un problema?
  3. ¿Cuál es el tiempo máximo para cambiar de contexto que sea aceptable?
  4. ¿Qué procesadores y buses debe admitir el sistema?
  5. ¿Qué estándares debe cumplir el sistema operativo?
  6. ¿Qué certificaciones debe tener el sistema operativo?

Estos dos últimos son a menudo los más importantes.

Perfiles de certificación (VxWorks)

Sistemas operativos en tiempo real para desarrollo integrado, sistema en tiempo real por Express Logic (ThreadX)

Linux puede ser B3 / EAL5 +, DO-178B (pero generalmente no todos al mismo tiempo). No estoy seguro de qué estándares cumple Automotive Grade Linux.

Básicamente, el tamaño de la memoria de la plataforma tomará la decisión por usted.

Linux necesita al menos 10 MB en flash y aproximadamente 64 MB de RAM para arrancar simplemente el sistema más básico y despojado.

Threadx y VxWorks se pueden ejecutar fácilmente en un sistema con un orden de magnitud menos memoria. RTOS aún más pequeños caben en unos pocos KB.

Linux básicamente intercambia facilidad y velocidad de desarrollo de memoria en sistemas embebidos

Ambos RTOS tienen diferentes ideologías detrás de sus arquitecturas de diseño. Threadx se centra más en ofrecer actuaciones en tiempo real utilizando subprocesos y cambio de contexto, mientras que Vxworks se centró más en ofrecer rendimiento en tiempo real por preferencia y con muchas características (compatibles con los protocolos de red e IoT) a bordo. El que se adapte a sus necesidades sería apropiado para usted.

More Interesting

¿Por qué no se utilizan microcontroladores PIC en la industria? ¿Por qué todos van por PLC?

¿Cuáles son las instrucciones PUSH y POP en los microcontroladores 8051?

¿Cuál es la diferencia entre arduino y pic?

¿Cuál es el beneficio de aprender microcontroladores C y AVR integrados como ingeniero de electrónica y comunicación (durante B.TECH)?

Encuentro muchas similitudes entre Internet de las cosas y un sistema integrado, pero algo me dice que son diferentes. ¿Cómo son exactamente similares y diferentes?

¿Cuál es el alcance del aprendizaje automático en IoT hoy? ¿Los empresarios de IoT buscan ingenieros de Machine Learning?

¿Cuál es la mezcla de C y lenguaje ensamblador en un sistema embebido? ¿Cómo es útil?

¿Debo elegir sistemas embebidos o programación de juegos?

Cómo generar una onda sinusoidal con un microcontrolador

Soy un experimentado ingeniero de software embebido. Me gustaría aprender a diseñar hardware: placas basadas en microcontroladores. ¿Qué habilidades necesito aprender? ¿Qué cursos posibles necesito tomar?

¿Cuál es la diferencia entre BIOS, UEFI, bootloader y firmware?

¿Cuál es el mejor instituto de capacitación para sistemas integrados en kolkata?

¿Debo cambiar mi carrera de TI a sistemas integrados?

¿Debo ir a aprender sistemas integrados en Ahmedabad?

Soy lento en el pensamiento lógico, ¿es conveniente para mí considerar los sistemas integrados y la programación en sistemas integrados como una opción profesional?