Quiero aprender a desarrollar en Linux integrado. ¿Qué materiales debería necesitar? No tengo el dispositivo integrado, así que planeo usar algún emulador de dispositivo para la PC. Quiero saber cómo cargar el kernel y el sistema de archivos en el dispositivo.Linux incorporado para principiante total
Respuesta
El fabricante del dispositivo debe proporcionar algún tipo de SDK, entorno de desarrollo o, al menos, cierta documentación para cargar un sistema operativo en el dispositivo.
Necesitará algún tipo de compilador cruzado y enlazador para crear ejecutables para el dispositivo. Un depurador remoto sería agradable, pero puede no estar disponible.
Un emulador o simulador que se ejecuta en su estación de trabajo sería muy, muy útil.
Necesitará el hardware que sea necesario para mover datos y ejecutables hacia y desde el dispositivo. Puede ser Ethernet, RS-232, wi-fi, Bluetooth, USB, óptico, quemador eprom o algo raro.
Sin más información sobre exactamente qué tipo de dispositivo tiene como objetivo, no hay mucho más que sugerir.
Dependiendo del dispositivo que vaya a utilizar, puede emularlo usando QUEMU.
Incluso sin un dispositivo, es probable que pudiera empezar por la lectura a través de algunos de los articles en http://www.linuxfordevices.com.
Un buen punto de partida puede ser The Embedded Linux Overview Quick Reference Guide.
Es posible que desee comprobar http://www.linuxfromscratch.org/
La mayoría de las distribuciones estándar de Linux están destinadas para escritorios en toda regla. El enfoque "desde cero" es ideal para plataformas integradas, ya que puedes crear kernels básicos que pueden encajar en huellas de memoria muy pequeñas.
Es bastante común que las computadoras integradas de placa única tengan al menos un puerto serie RS-232 y al menos una interfaz ethernet, y un gestor de arranque almacenado en flash. El gestor de arranque a menudo le permitirá usar el puerto serie para configurar una de varias opciones de arranque, como arranque desde flash incorporado, posiblemente desde SD o flash USB, o use TFTP a través de ethernet, o incluso a través del puerto en serie.
Si desea comenzar rápidamente con algo, le sugiero que utilice los paquetes precompilados QEMU y Angstrom. Puede probar este tutorial: running-qt4-examples-on-embedded-linux
Muchas de las tarjetas más comúnmente usadas usan memoria flash para almacenamiento en "disco". Aprender a crear y manipular imágenes de arranque, incluidas varias imágenes de disco de partición, será una de esas cosas que aprenderá en el camino.
Como respondió un póster anterior, realmente necesita decidir a qué dispositivo desea orientar, y eso significa decidir qué aplicaciones va a desarrollar.
No es que haya pedido una recomendación, pero las placas ALIX de pcegines están ampliamente disponibles, tienen un precio razonable y son relativamente simples para empezar.
Si desea trabajar en una placa real en lugar de emulador, puede probar alguna placa de desarrollo popular como la placa beagle. Descargue un árbol fuente del núcleo y cree su propia compilación, y luego flashee el gestor de arranque y las imágenes del núcleo en el pizarrón.
Sugiero probar desde lo básico y luego subir. Pruebe Cross Linux from Scratch http://www.linuxfromscratch.org/clfs/view/clfs-2.0/arm/?
Otro buen punto de partida, para familiarizarse con Linux incorporado: www.embedded.org. Encontrarás una buena introducción allí. Estoy tratando de familiarizarme con Linux embebido y esta introducción de 7 partes me dio más información sobre las diferencias, cómo funciona y cómo comenzar.
- 1. Linux incorporado o eCos?
- 2. Depuración ligera en Linux incorporado
- 3. ¿Cómo comenzar con Mono en Linux para un principiante?
- 4. Principiante tutorial para Elgg
- 5. Para bucles (principiante)
- 6. Assembler IDE/Simulator para principiante
- 7. GPIO IRQ en ARM basado en Linux incorporado
- 8. Haskell principiante
- 9. ¿Qué es un buen bus de mensajes de fuente abierta para Linux incorporado?
- 10. ¿Algún tutorial XML/XSD para el principiante?
- 11. Frasco o Django para un principiante?
- 12. Pregunta de metaprogramación Clojure (para un principiante)
- 13. Acoplamiento reductor ejemplo simple necesario para principiante
- 14. navegador web incorporado
- 15. línea de comandos de Linux: --- du cómo hacer que se muestre únicamente total para cada directorios
- 16. Dispositivo incorporado habilitado para web SSL
- 17. ¿JQuery ha incorporado soporte completo para JSON2?
- 18. Principiante VSTO Development
- 19. Principiante a Swing
- 20. Principiante Haciendo K & R
- 21. Consejos para un principiante Sobre las aplicaciones N-Tier
- 22. Principiante de Android: onDestroy
- 23. programador haskell principiante
- 24. registros de ensamblaje principiante
- 25. Detener Python incorporado
- 26. Dust.js con JavaScript incorporado
- 27. json.net SelectToken con "." Incorporado.
- 28. Subversion (svn) preguntas del principiante
- 29. jQuery - algunas preguntas de principiante
- 30. ¿Qué EXIF lib puedo usar desde un programa Qt (en linux incorporado)?
Duplicado exacto: http://stackoverflow.com/questions/2160531/is-there-any-good-emulater-for-learning-embedded-linux –
En realidad, no es una pregunta exacta. Mi objetivo aquí es ilustrar cómo o dónde debería comenzar mi desarrollo embebido de Linux. Estoy bastante familiarizado con Linux PC pero tengo cero conocimiento en Linux incorporado o cómo debo ejecutar el Linux embebido en el dispositivo real o en el emulador del dispositivo. gracias – domlao
El pastel de frambuesa es una buena opción, es una junta bastante barata con mucho apoyo de la comunidad – stdcall