¿Cuáles son los pros y los contras de usar Yocto versus Debian como distribución de Linux Embebido?

Estoy feliz de haber encontrado una pregunta relacionada con Yocto en Quora. 🙂

En mi tesis de maestría trabajé en el proyecto Yocto y durante esa fase probé brevemente otro sistema operativo incorporado. Yo diría que el proyecto Yocto es bueno. No he probado Emdebian pero mi punto de vista sobre Linaro está incluido.

No sabía nada sobre dispositivos / frameworks integrados y comencé desde cero. Estoy usando Ubuntu, por lo que mi elección predeterminada fue Linaro, pero mi supervisor me sugirió que probara Yocto.

Pro:

Documentación : la documentación del proyecto Yocto es impresionante y bien estructurada. Cualquiera puede comenzar simplemente leyendo el Manual de introducción y Yocto. Está escrito con un lenguaje simple y constructivo. Yocto usa la herramienta Bitbake y la documentación de inicio está aquí.

  1. Manual BSP
  2. Kernel Dev manual
  3. Manual de GUI

Todos los manuales de documentación se pueden encontrar aquí: Documentación

Soporte para desarrolladores : el soporte para canales IRC del proyecto Yocto es increíble. Si tiene algún problema, solo pregunte allí. Una vez tuve un gran problema para obtener la receta (configuración) correcta para el código OpenCV. Un desarrollador de irc habló conmigo todo el día (eso también el domingo) y señaló el error que cometí y me ayudó a resolver el problema. También obtienes una respuesta muy rápida para un desarrollador a través de la lista de correo también. Son muy, muy útiles.

GUI : Yocto proporciona Hob GUI para personas que no desean usar el terminal. Es simple, útil y hace el trabajo en minutos. Pruébalo.

Recetas : ¿Necesita una receta estable / más reciente? No hay problema, Yocto ofrece muchos. Simplemente busque cualquier receta / capa / máquina, llévela a su directorio y compílela. Hecho.
Índice de metadatos de OpenEmbedded

Lanzamiento : las recetas de Yocto se actualizan casi todos los días y si puede usar las recetas más recientes / estables.

Emulador : si desea verificar su receta, QEMU es útil. Seguí este documento y fue fácil en comparación con la guía Yocto QEMU 😉

Contras:

Tiempo de compilación: la primera compilación de Yocto lleva un tiempo masivo (~ 2 horas). Después de eso todo es rápido.

Complejidad : si eres un novato como yo, entender a Yocto lleva tiempo. Se requiere mucho tiempo y dedicación.

Recetas : si está escribiendo sus propias recetas, entonces es un poco doloroso el as * ss. Enfrenté serios problemas y consumí mucho tiempo cuando escribía recetas para la receta de la biblioteca de imágenes de TI, y TI no es compatible con Yocto.

En general, en comparación con Doc, Soporte y Tamaño de imagen, Emulador, Yocto es bueno.

Linaro

Acabo de probar Linaro brevemente. Mi vista:

pros:

Derivado de Ubuntu : si está familiarizado con Ubuntu, entonces esto no requiere introducción. Solo úsalo de la manera regular.

Contras:
Documentación y soporte : el soporte para desarrolladores de Linaro es malo. Doc tampoco está bien escrito * o es confuso.
* Lo usé hace casi un año, no tengo idea de lo que es ahora.

Tamaño : Linaro requiere una tarjeta SD de 8 gb. En el caso de Yocto, 2 gb es más que suficiente. El tamaño de la imagen Linaro también es enorme.

En general, sugeriría Yocto como incrustado linux dist. Tiene buen documento, soporte, flexibilidad para escribir / modificar sus recetas, GUI y fácil de usar. Necesitas entender el concepto de escribir recetas o te enfrentarás a problemas.

Actualización: utilicé hardware Gumstix y Yocto Linux. En caso de que tenga problemas, consulte mis preguntas y respuestas sobre stackoverflow. Respondí muchas de mis propias preguntas. Espero eso ayude. Stackoverflow-ItsZaif.

He trabajado en Yocto y también en otras distribuciones Linux integradas, como MVL, windriver Linux, SUSE, pero nunca probé Debian.

Yocto no es realmente una distribución Linux incorporada, pero es un marco para crear su propia distribución Linux en un hardware objetivo específico. Admite n número de placas y arquitectura de procesador.

Si desea utilizar Yocto, necesita cierta curva de aprendizaje para comprender el marco, los archivos de recetas, el entorno de compilación de Yocto, etc. No es muy sencillo. Pero Yocto es bueno para aprender y usar, ya que el conocimiento puede ser valioso para cambiar fácilmente a un objetivo incrustado diferente.

Si Debian admite los controladores, módulos, paquetes, etc. necesarios en su distribución y tienen un buen soporte, etc., puede continuar con Debian.

De hecho, tuve una situación similar al elegir entre Yocto, windriver Linux y TI Linux personalizado. Escribí esto en otra respuesta sobre cómo elegir Linux incrustado. Puedes verificar eso aquí.

La respuesta de Seetaram N T a ¿Qué sistema operativo Linux es mejor para un sistema integrado?

Debe decidir en función de múltiples factores y será el mejor juez, ya que sabe cuál es su posición.