¿Cuándo sería necesario usar un sistema operativo para una MCU ARM [duplicado]?

1

Supongo que un ARM MCU se puede ejecutar sin un sistema operativo, ¿en qué momento podría ser necesario instalar uno?

¿Se puede ejecutar el SDK de mbed sin el mbed-os o cualquier otro mbed?

    
pregunta M-R

1 respuesta

4

Nunca necesitas un sistema operativo. Es una conveniencia que tiene un costo. Solo usted puede decir si las ventajas superan los costos para su aplicación.

En general, los sistemas operativos le brindan una interfaz abstracta para las capacidades en bruto de la máquina. La abstracción a menudo está diseñada para que la interfaz de la aplicación sea independiente de los detalles del hardware.

La abstracción es más que una capa independiente del hardware sobre el hardware real. También se han agregado abstracciones que son puramente creaciones del software, o solo están parcialmente asistidas por hardware. Por ejemplo, su núcleo ARM solo puede procesar una única secuencia de instrucciones a la vez. Sin embargo, el sistema operativo puede dar la apariencia de múltiples hilos independientes. En sistemas con protección de memoria de hardware, esto se puede expandir a múltiples procesos que se asume que son hostiles entre sí, cada uno con múltiples subprocesos.

Luego, hay muchas otras características que suelen proporcionar los sistemas operativos, como un sistema de archivos por encima del almacenamiento no volátil, la memoria virtual, los temporizadores, los semifores, la memoria compartida, las tuberías y mucho más.

Todo esto tiene un costo, que es un montón de ciclos adicionales y mucho código entre su aplicación y el hardware. En muchos casos, la memoria y los ciclos son más que suficientes para la aplicación, por lo que el costo principal es logístico al tener que integrar su aplicación en el entorno del sistema operativo.

    
respondido por el Olin Lathrop

Lea otras preguntas en las etiquetas