Zephyr: El sistema operativo de Linux para dispositivos IoT

Linux trata de abordar la necesidad de un sistema operativo propio para equipos IoT

Linux Foundation acaba de presentar el llamado ‘Proyecto Zephyr’, que consiste en un sistema operativo para dispositivos de Internet de las Cosas (IoT). Acorde a especialistas en seguridad en redes del Instituto Internacional de Seguridad Cibernética, el objetivo de este proyecto es crear un sistema operativo en tiempo real (real time operating system) de fuente abierta que pueda ser instalado en dispositivos IoT.

Con este proyecto, Linux Foundation espera que Zephyr se convierta en el estándar de la industria de los sistemas operativos en tiempo real para esta clase de dispositivos: “Esperamos que, por su fácil uso, Zephyr se convierta en una de las plataformas líderes en software IoT, diseñadas específicamente teniendo en cuenta la seguridad en un mundo donde todo está conectado a Internet”, menciona Linux Foundation en un comunicado.

Acorde a los especialistas en seguridad en redes, Zephyr trabaja en un diseño de kernel modular; los servicios esenciales de RTOS están dentro del nanokernel. Este kernel será responsable de ejecutar los procedimientos altamente prioritarios, desde interrupciones hasta tareas ejecutadas en segundo plano.

El nanokernel se basa en una serie de pequeños hilos (apodados fibras). Estas fibras sólo podrán ejecutar una tarea a la vez. Cuando sea necesario, los desarrolladores podrán usar el nanokernel para ejecutar sus dispositivos IoT. Esto sólo estará limitado a dispositivos con huellas de memoria muy bajas, como sensores ambientales, identificadores de radiofrecuencia o LEDs.

Aún así, la mayor parte de los dispositivos IoT podrán usar el microkernell de Zephyr completo. Esto permitirá incrementar las habilidades multitarea y servicios como: grupos de memoria, mapas de memoria, entre otras.

Las tareas que se encuentren en el microkernel estarán programadas por un archivo de servidor en el nanokernel, lo que permite que las tareas prioritarias se ejecuten dentro del nanokernel sin obstáculos.

Cuando todas las fibras terminen de ejecutar una tarea, la fibra del servidor enviará al nanokernel la siguiente tarea prioritaria. Si hay dos tareas vinculadas, el sistema seleccionará la que haya estado en el microkernel por más tiempo. El plan es mantener pequeñas las pilas de memoria y asignar procesos a la nube cuando sea posible. 

Actualmente, la API común de Zephyr permitirá que RTOS sea compatible con las siguientes implementaciones:

Redes de comunicación

  • Bluetooth
  • Bluetooth de baja energía
  • IEEE 802.15.4
  • 6LoWPAN
  • WiFi
  • Conexión por cable

Puertos de entrada y salida

  • UART
  • GPIO
  • SPI
  • I C
  • Radios

Arquitectura de tablero

  • Arduino 101
  • Arduino Due
  • Intel Galileo Gen 2
  • NXP FRDM-K64F Freedom board

La Fundación Linux también hizo hincapié en que su nuevo RTOS tiene un enfoque importante en la seguridad de los dispositivos IoT. El proyecto planea incluir un grupo de trabajo de seguridad dedicado y un encargado de seguridad.

Acorde a expertos en seguridad en redes, Linux Foundation está buscando desarrolladores, ingenieros y organizaciones para trabajar en la expansión y próxima implementación del sistema operativo Zephyr.