
Buenas tardes
Embox recientemente participó en el festival
TechTrain IT.
¡El flujo de visitantes en nuestro stand fue muy grande! Y, desafortunadamente, no hicimos folletos que describan nuestro proyecto. Y algunos se fueron, sin tener tiempo para entender lo que nos estaba pasando. Nos hicieron muchas preguntas del mismo tipo y decidimos publicar un breve artículo para responderlas.
¿Sois fabricantes de equipos?

En la foto se puede ver que tenemos bastantes piezas de hierro en el stand, algunas parpadeantes, otras móviles, otras dibujando algo. Tal vez por eso las preguntas más comunes fueron: "¿Haces glándulas?" o "¿Qué estás vendiendo?" Y así sucesivamente. La respuesta es simple: "No, no producimos glándulas, y no, no vendemos, al menos, las glándulas mismas". ¡Estamos desarrollando un sistema operativo abierto para sistemas integrados! Todas las glándulas que estaban en el estrado funcionaban bajo el control de Embox. Todos los diseños se pudieron reproducir porque se compraron en tiendas de microelectrónica ordinarias (con la excepción de Elbrus), y el código para crear el firmware está en nuestro repositorio (incluido para Elbrus).
Composición del stand

Describiré brevemente lo que teníamos en el stand.
Había dos autos. Uno es un robot autónomo basado en el STM32F3-Discovery, que detecta una superficie pobre. Hablamos de eso en un
artículo . Otro es un robot basado en stm32f4discovery, controlado por radio. Este robot está equipado con un sensor de luz y un buscador de rango basado en un sensor infrarrojo.

Había un modelo para demostrar robots de múltiples agentes basados en cinco STM32F3-Discovery, interconectados a través de interfaces seriales. Resolvieron conjuntamente el problema de las funciones de suavizado (una descripción más detallada está más allá del alcance de este artículo).
Había un diseño basado en el STM32F7-Discovery. Demostró un ejemplo con el pequeño marco gráfico
Nuklear descrito en el
artículo .
Había un teléfono SIP simulado basado en stm32f4discovery. Esto estaba en el
artículo .
Había un diseño basado en el tablero sk-imx6q con una pantalla LCD, y una escena de demostración de
Mesa3D giraba sobre él.
Bueno, sí, había una unidad del sistema llamada "monocubo" basada en el procesador Elbrus, esto estaba en el
artículo .
¿Es algo así como Arduino?
Como probablemente pueda adivinar de la lista anterior de diseños, a otra pregunta popular "¿Es arduino?", La respuesta también es negativa. Ni siquiera se trata de hardware (no sé si tiene sentido hacer un arduino con un potente procesador imx6q), pero estoy seguro de que no puedo hacer un teléfono SIP en Arduino o ejecutar OpenGL. No, no me malinterpreten, de ninguna manera quiero ofender a los que se desarrollan bajo Arduino. Pero pagar por la facilidad de uso son limitaciones importantes para esta plataforma.
¿Haces robots?
Como teníamos varios robots, a menudo nos hacían esta pregunta. Respuesta: “No, estamos comprometidos con el software del sistema. Los algoritmos de control y los propios robots son más bien nuestro pasatiempo ”.
OS para robots?
No, Embox es un sistema operativo para sistemas integrados. Este es un concepto mucho más amplio. Los robots son un ejemplo muy obvio de aplicación, ya que necesitan hacer cosas que son características de RTOS pequeños (recopilación de lecturas de sensores, motores de control) y lo que es mucho más conveniente hacer en sistemas operativos grandes (algoritmos de control de ajuste fino, control remoto). Y, en consecuencia, en tales tareas, Embox demuestra bien sus ventajas.
¿Es Linux? ¿En qué se basa Embox?
No, esta no es una distribución de Linux. Escribimos los servicios básicos y básicos del sistema desde cero, por supuesto, analizamos otros proyectos de código abierto y, por supuesto, estudiamos el mismo Tanenbaum.
Con el tiempo, agregamos la capacidad de usar aplicaciones de terceros del mundo Linux, el mismo proyecto PJSIP o la biblioteca Mesa3D. Ya que no existe el deseo de hacer lo mismo, sino el suyo.
Tenemos diferencias con las características de Linux. Por ejemplo, los visitantes descubrieron que el diseño de OpenGL tarda solo 7 segundos en cargarse, y esto a pesar del hecho de que el arranque en U, que se usa como gestor de arranque, consume un par de segundos. Bueno, o instalar Linux con la pila SIP en el STM32F4-Discovery, que tiene solo 192 KB de RAM, es poco probable que tenga éxito. Aunque un visitante afirmó que la holgura (probablemente la distribución de
slackware ) se divide en 40 kB. Pero lo más probable es que simplemente confundiera kilobytes con megabytes.
¿Cuál es este tu Embox?
Personalmente, en el festival expliqué alegóricamente: "Linux sin Linux".
Revelar un pequeño tema. Embox tiene un puerto de la biblioteca
Qt abierta (también se demostró en el stand), mostramos OpenGL sobre la base del proyecto
Mesa 3D abierto o, tomamos el mismo teléfono SIP, se hizo sobre la base del proyecto
PJSIP abierto. Todos estos proyectos funcionan muy bien en Linux. Pero si necesita colocar un teléfono SIP en una placa pequeña, entonces Linux no se puede usar allí. Bueno, o algún equipo donde se requiera renderizado 3D. Por ejemplo, un mapa de terreno implica recursos de hardware bastante grandes, lo que significa que se podría usar LInux. Pero, por otro lado, junto con Linux viene un montón de software, y estos son posibles errores y agujeros de seguridad. En Embox, solo puede ensamblar las piezas necesarias para que la aplicación funcione. Y esto le permite simplificar enormemente la aprobación de varios tipos de certificaciones, tanto para el funcionamiento correcto como para la seguridad, por ejemplo, la
ausencia de NDV (marcadores).
¿Puedo obtener una pasantía en Embox, participar en el proyecto y dónde buscarlo?
Embox es un proyecto abierto y, por supuesto, puedes participar en él. Estaremos encantados de ayudar en este esfuerzo.
Recordamos nuestras raíces y trabajamos muy estrechamente con los estudiantes. El proyecto tiene una cantidad decente de cursos y diplomas. La mayor parte del curso en MatMekh SPbSU. Pero había precedentes para el trabajo de otras universidades. Además, el proyecto involucra estudiantes y adquiere experiencia de otras ciudades y países.
El repositorio del proyecto está en githubEl grupo de distribución principal (inglés) para el proyecto:
embox-devel [at] googlegroups.comAdemás, hemos creado un grupo de distribución en ruso:
embox-ru [at] googlegroups.comTambién puedes escribirme personalmente:
anton.bondarev2310 [at] gmail.comFotos de PS del
grupo TechTrain vkontakte