¿Qué es un sistema operativo integrado?

Un sistema operativo integrado es esencialmente el cerebro de un sistema informático integrado, que define la funcionalidad de un producto. Está diseñado y optimizado para mejorar la eficacia del control de los recursos de hardware, impulsar el procesamiento de gráficos y reducir el tiempo de respuesta de las tareas realizadas por el dispositivo. En este artículo, ampliaremos esta definición de SO embebido con ejemplos, y arrojaremos luz sobre los entresijos de los sistemas operativos embebidos, que pueden encontrarse en casi todos los dispositivos inteligentes de hoy en día.
 
En la era digital actual, la mayoría de los vehículos, electrodomésticos y dispositivos portátiles necesitan sistemas operativos integrados para controlar la funcionalidad y realizar las tareas con eficacia. En lugar de controlar cada parte del sistema individualmente, un sistema operativo integrado gestiona todas las operaciones de hardware programables y fijas. Aunque estos sistemas han tomado el mundo de la electrónica por asalto, la gente todavía no es consciente de lo que pueden aportar. Vamos a adentrarnos en nuestra discusión sobre los sistemas operativos para ordenadores embebidos.

Imagen que representa un sistema operativo integrado

Sistemas operativos integrados: Lo básico

Un sistema operativo empotrado es un ordenador a pequeña escala de un sistema empotrado con un número limitado de funciones. Está diseñado para llevar a cabo una función o un conjunto de funciones de un producto electrónico final. Al igual que un PC de sobremesa que necesita un sistema operativo como Windows, Linux o Mac OS para ejecutar aplicaciones básicas, los sistemas embebidos también necesitan un sistema operativo para facilitar y agilizar su funcionalidad.

Por ejemplo, todos los teléfonos móviles tienen integrado un sistema operativo como Android o iOS que se pone en marcha al encender el teléfono. Sin el sistema operativo, implantar una aplicación en cada teléfono móvil con hardware diferente habría sido una pesadilla para los desarrolladores. Les permite salvar todas las distancias y crear una aplicación unificada específica para el sistema operativo. El sistema operativo embebido también se conoce como sistema operativo en tiempo real (RTOS) en algunos casos, de los que hablaremos en otra sección.

Estas son algunas características comunes de un sistema operativo embebido:

  • Potencia eficiente
  • Menos capacidades de almacenamiento 
  • Menor potencia de procesamiento
  • Rápido y ligero
  • Flexibilidad de los dispositivos de E/S
  • Funcionamiento en tiempo real
  • Adaptado al caso de uso previsto

El software incorporado en un sistema operativo integrado es fundamental para la funcionalidad de un producto. En Digi, casi todos nuestros productos utilizan un SO integrado para proporcionar sus características y rendimiento. En el caso de nuestros Digi SOMsUn sistema operativo integrado completo, utilizado por los desarrolladores, aporta enormes ventajas a la hora de desbloquear las sofisticadas funciones del hardware SOM y proporcionar bibliotecas de código y herramientas de desarrollo fáciles de usar y listas para la producción, con el fin de crear productos altamente escalables y preparados para el futuro en el menor tiempo posible.

Desarrollador de software integrado
 

¿Cómo funciona un sistema integrado?

La gente suele preguntarse cómo funciona un sistema embebido porque hay una gran demanda de tecnología de productos sofisticados y, en consecuencia, existen excelentes oportunidades para los desarrolladores de software embebido. A diferencia de un PC de sobremesa, que carga o ejecuta aplicaciones, un sistema operativo integrado está configurado para menos propósitos y suele gestionar una única aplicación en un dispositivo.

Aunque el alcance de las funciones del sistema operativo es limitado, debe ser fiable y funcionar sin problemas incluso con limitaciones de tamaño, potencia de procesamiento y memoria, porque esa aplicación específica es crucial para la funcionalidad del producto final. Algunos ejemplos de los mejores sistemas operativos embebidos para aplicaciones comerciales e industriales son Embedded Linux y Android, Wind River VxWorks, Green Hills Integrity y QNX.

¿Se pregunta si los sistemas operativos integrados se pueden actualizar o no? Sí, los sistemas operativos embebidos pueden actualizarse si el producto está diseñado con memoria flash y si el chip en el que se implementa es flasheable. Por ejemplo, un televisor inteligente puede contener un sistema operativo integrado y un sinfín de funciones y complejidades. Cuantas más funciones, más errores y vulnerabilidades de seguridad hay que gestionar. Los sistemas operativos de estos dispositivos están diseñados para actualizarse con el fin de eliminar errores o añadir nuevas funciones y ofrecer la mejor experiencia al cliente.

Descubra la familia SOM en Digi ConnectCore

Módulos de sistema integrado basados exclusivamente en los procesadores de aplicaciones NXP i.MX, diseñados para una mayor duración y escalabilidad, en aplicaciones industriales IoT

Descargar PDF

Sistemas embebidos y no embebidos

Dispositivo de imagen médica
Un sistema operativo integrado se ejecuta en un dispositivo que se incorpora a un producto final y suele tener aplicaciones limitadas. Algunos dispositivos que pueden incluir sistemas operativos integrados son:

  • Bombas de infusión
  • Hornos industriales
  • Vehículos eléctricos 
  • Sistemas de infoentretenimiento para vehículos
  • Paneles solares
  • Reguladores de paneles solares

Mujer que trabaja con un portátil
A sistema operativo no integrado o Sistema operativo de uso general (GPOS) se ejecuta en un dispositivo independiente que es el producto final. Estos sistemas operativos suelen ser más grandes, más personalizables y ofrecen una mayor variedad de aplicaciones. Algunos ejemplos de dispositivos no integrados son:

  • PC de sobremesa
  • Ordenador portátil
  • Servidor dedicado

Así, para entender un sistema operativo embebido frente a un sistema operativo de escritorio, se podría decir que un producto como una bomba de infusión contiene un ordenador que ejecuta un SO embebido para funcionar, mientras que un SO no embebido se ejecuta en un ordenador utilizado para realizar trabajos automatizados, como la escritura o el diseño gráfico.

Productos de lavandería antiguos sin sistemas integrados

Entre los ejemplos de aplicaciones sin sistema operativo se encuentran los productos 100% mecánicos o que incluyen una electrónica sencilla. Estos son algunos ejemplos de dispositivos sin sistema operativo:

  • Electrodomésticos viejos
  • Vehículos antiguos
  • Walkie-talkies/dispositivos de comunicación por radio

Para resumir:

  • Un dispositivo integrado es un ordenador integrado en un producto final. Puede requerir un sistema operativo si la funcionalidad del ordenador es compleja, pero no necesariamente.
  • Un dispositivo no integrado es un ordenador que funciona por sí mismo, y es el propio producto final.
  • Un producto sin dispositivo integrado no incorpora un ordenador en absoluto.

Historia de los sistemas operativos integrados

Ordenador de guiado Apollo - 1966
Aunque Linux y Android son relativamente nuevos, el concepto de sistemas operativos integrados se remonta a los años 60, con la introducción del Computadora de guiado Apollo. El AGC "se instaló a bordo de cada Módulo de mando Apolo (CM) y Módulo lunar Apolo (LM). El AGC proporcionaba computación e interfaces electrónicas para el guiado, la navegación y el control de la nave espacial". (Fuente: Wikipedia)

Los sistemas informáticos embebidos han recorrido un largo camino desde entonces, y la evolución parece estar lejos de terminar, gracias a los avances de la tecnología de microcontroladores de 8 bits a 16 bits y posteriormente a 32 bits. Debido a la creciente complejidad de los sistemas informáticos embebidos, los sistemas operativos se convirtieron en la clave para gestionar el software embebido con eficacia.
 
En la actualidad, hay una gran variedad de sistemas operativos integrados. El desarrollo en el diseño y la implementación de los sistemas operativos embebidos se ha visto impulsado por la necesidad de controlar aplicaciones de software que aprovechen el rápido avance del hardware.
 

Sistemas operativos integrados: Usos comunes

Los sistemas operativos embebidos se utilizan habitualmente en muchos ámbitos diferentes, por ejemplo: reproductores multimedia, sistemas de navegación para aviones, sistemas de navegación para coches y equipos médicos. A continuación explicamos cómo esta tecnología agiliza el funcionamiento de estos ejemplos.
 

Uso común - Medición de aparcamiento

Para gestionar las entradas de los usuarios y hacer un seguimiento del tiempo y las tarifas, los parquímetros urbanos inteligentes necesitan un sistema operativo integrado. Estos dispositivos llevan incorporada una serie de funciones, según el diseño. Por ejemplo, algunos utilizan sensores para detectar la llegada y la salida de los vehículos, mientras que otros requieren que el conductor introduzca la plaza de aparcamiento o la licencia del vehículo. Una interfaz de usuario ofrece al conductor la posibilidad de seleccionar, por ejemplo, la hora de regreso prevista y pagar en consecuencia.

Parquímetro
 

Uso común - Sistema de navegación de un avión

El sistema de navegación de un avión es un excelente ejemplo de sistema operativo en tiempo real. Es el ordenador principal de un avión que está interconectado con la mayoría de los sistemas de control como el motor, el ala, la seguridad y los controles de presión. Por lo tanto, está diseñado específicamente para operar dentro de un avión y ayudar a realizar operaciones como el despegue, el aterrizaje y las emergencias.

Sistema de navegación para aviones
 

Uso común - Sistema de navegación del coche

El sistema de navegación del coche es un pequeño ordenador que incluye una pantalla táctil que permite al conductor recorrer varios menús como el GPS y la cartografía de rutas, la reproducción de audio, la radio, las llamadas de manos libres y los sistemas de control del nivel de combustible y la presión de los neumáticos. En vehículos conectados estos sistemas son aún más complejos, ya que incorporan sistemas de vehículo-a-cualquier cosa o "V2X" sistemas de comunicación. El ordenador está diseñado para realizar todas estas tareas y mejorar la experiencia de conducción.

Sistema de navegación del coche
 

Uso común - Equipo médico 

Médico Los equipos integrados con sistemas operativos embebidos controlan automáticamente las bioconstantes, administran los medicamentos y envían alertas al personal en caso de que las bioconstantes superen o no el valor umbral. Así, los equipos médicos pueden ayudar a los médicos a tratar a sus pacientes, controlar su salud y salvar sus vidas.

Dispositivo médico con pantalla gráfica
 

Sistemas operativos en tiempo real (RTOS)

Un sistema operativo en tiempo real (RTOS) es un sistema operativo con funciones reducidas que soporta aplicaciones multihilo proporcionando salidas procesadas dentro de unas limitaciones de tiempo especificadas y posee un comportamiento determinista. Dado que estas aplicaciones son críticas en cuanto al tiempo, deben ejecutarse exactamente cuando se espera que lo hagan para mantener el funcionamiento de todo el sistema. 
 
Los airbags de nuestros vehículos son el mejor ejemplo de este concepto. Cuando un coche que va a gran velocidad sufre un accidente, los airbags deben desplegarse en un plazo de 10 a 20 milisegundos tras el choque. Un retraso de incluso unos pocos milisegundos puede causar la muerte. Por lo tanto, no hay margen de error, y la tarea debe llevarse a cabo inmediatamente. 

Sistema de bolsas de aireOtros ejemplos comunes de RTOS son:

  • Sistemas de transacción en línea
  • Sistema de cuidados críticos médicos
  • Sistema antibloqueo de frenos
  • Sistema de control de tráfico
  • Sistemas de cotización del ganado
  • Sistemas de control de líneas aéreas

Los RTOS proporcionan una programación meticulosa y la gestión de recursos necesaria para satisfacer la demanda de las aplicaciones y garantizar que las tareas sensibles al tiempo cumplan su plazo. Además, los RTOS son de dos tipos: sistemas operativos en tiempo real blandos y sistemas operativos en tiempo real duros. La principal diferencia es que un RTOS duro debe realizar de forma fiable una función específica en un tiempo determinado, como X milisegundos.

He aquí algunas características de los sistemas operativos en tiempo real:

  • Dirigido por eventos para permitir que el sistema cambie entre las tareas según sus prioridades
  • Programación basada en la prioridad que separa el procesamiento analítico del no crítico 
  • Desarrollo modular basado en tareas que facilita las pruebas modulares basadas en tareas

RTOS vs. SO embebido 

Los RTOS pueden considerarse un subconjunto de los sistemas operativos embebidos. Así, podemos decir que todos los RTOS son sistemas operativos embebidos. Sin embargo, no todos los sistemas operativos embebidos son RTOS. Hablemos de las características en tiempo real de los sistemas operativos embebidos.

La principal diferencia entre los sistemas RTOS y los sistemas operativos embebidos radica en la criticidad temporal del sistema. Un ejemplo de sistema no crítico es un sistema de entretenimiento a bordo al que cada pasajero puede acceder para ver películas, jugar o ponerse al día con los programas de televisión durante su vuelo. Una vez que el pasajero enciende el sistema, no hay un límite de tiempo concreto para ver las películas o los programas.

Por otro lado, el sistema de navegación de un avión, responsable del despegue, el aterrizaje y muchos otros procesos, es crítico en términos de tiempo. Requiere un factor de tiempo real para llevar a cabo una tarea con rapidez. Los retrasos inesperados en un sistema de este tipo nunca serán una opción. A la hora de seleccionar sistemas operativos en tiempo real para informática empotrada, es fundamental evaluar este tipo de requisitos.
 

¿Busca soluciones para sistemas operativos integrados?


Aunque los sistemas operativos embebidos y los de propósito general tienen algunas similitudes, son muy diferentes, especialmente en lo que respecta a su diseño y propósito. Lo más importante es que un sistema operativo embebido está diseñado para funcionar en un hardware específico para satisfacer las necesidades concretas de un producto final, mientras que un sistema operativo de propósito general convencional está diseñado para ser de uso más general. Y buscando sistemas como el Familia de productos Digi ConnectCoreEn el caso de la tecnología de la información, la integración del hardware y el software es el entorno de desarrollo más óptimo.
Placa de desarrollo Digi y software

También es importante tener en cuenta que para cualquier aplicación de tiempo crítico, de misión crítica o de uso intensivo de gráficos, como los sistemas de vehículos conectados y de dispositivos médicos, necesitará no sólo un sistema operativo en tiempo real, sino un procesador ultrarrápido que pueda ofrecer el rendimiento, la seguridad y la fiabilidad necesarios.
 
Ahora que conoces los fundamentos de los SO embebidos, estás listo para sumergirte en un ejemplo real. Los productos Digi Embedded son compatibles con los sistemas operativos embebidos basados en Yocto Project (basado en Linux) o Embedded Android. Proporcionamos imágenes preconstruidas para nuestros kits de desarrollo, junto con documentación, bibliotecas, ejemplos y el marco de seguridad Digi TrustFence para ayudarle a personalizar el SO para su solución embebida específica de forma sencilla y segura.
 
Para más información, consulte nuestro sistema en módulo y kit de desarrolloy visite nuestro portal de documentación integrada. O contacto con nosotros para saber cómo los Servicios de Diseño Inalámbrico de Digi pueden ayudarle a planificar y desarrollar su próximo producto y llegar al mercado rápidamente.

Conozca la familia SOM de Digi ConnectCore
Conozca los modelos Digi ConnectCore 8X, 8M Nano y 8M Mini