¿Qué debería aprender sobre el desarrollo de software integrado (cuál es el objetivo principal del desarrollo de software integrado)?
Si desea desarrollarse en la dirección del software integrado, la dirección más común en la actualidad es la dirección ARM de Linux integrado. En cuanto a esta dirección, creo que se puede dividir en tres etapas:
1. Aplicaciones de capa superior de Linux integradas, incluido el desarrollo de GUI QT
2. Desarrollo de sistemas Linux integrados
3. son: LINUX, WINCE, VxWorks, etc.
Linux es de código abierto y gratuito, y su código fuente es abierto, lo que es más adecuado para que aprendamos integrado. Entonces, si estudia por su cuenta, puede probar la siguiente ruta:
(1) El lenguaje C es el más potente entre todos los lenguajes de programación. Se puede programar microcontroladores, DSP y varios chips como ARM. con lenguaje C), por lo que debe dominarse con mucha habilidad.
Libros recomendados: El de Tan Haoqiang es muy bueno. "TheC Programming Language" es un libro de texto clásico escrito por un extranjero y también tiene una traducción al chino.
(2) Los principios del sistema operativo son necesarios. Si eres un experto en informática, no importa. Si no eres un experto en informática, debes encontrar un libro de principios informáticos relativamente sencillo para leer. Comprender cuestiones básicas como "proceso", "hilo" y "programación del sistema".
(3) El sistema operativo Linux está escrito en lenguaje C, por lo que también debes aprender a programar Linux primero. Solo si puedes aplicarlo podrás comprender mejor la esencia de su núcleo.
Libro recomendado: "Programación avanzada en entorno UNIX" (2.ª edición)
(4) Comprender la arquitectura, los principios y las instrucciones de ensamblaje de ARM en el desarrollo integrado, en términos generales. Rara vez escribo ensamblaje, pero el requisito mínimo es poder comprender el ensamblaje del brazo.
(5) Al trasplantar el sistema, debe comenzar desde el gestor de arranque inferior y luego trasplantar el kernel, el sistema de archivos, etc. La parte del trasplante depende mucho del hardware, los pasos de configuración son relativamente complicados y no hay mucha información detallada.
(6) Desarrollo de controladores
El diseño de controladores de Linux es a la vez un campo muy desafiante y un contenido amplio y profundo.
El diseño del controlador de Linux pertenece esencialmente a la categoría de programación del kernel de Linux, por lo que existen requisitos para el kernel de Linux y la programación del kernel. Es necesario comprender la composición del kernel de Linux antes de estudiarlo, porque si es necesario estudiar cada parte en detalle, se puede ampliar en un libro grueso. Lo anterior es solo un marco aproximado. Hay muchas cosas involucradas en el desarrollo real, como compilación cruzada, archivos MAKE, scripts de shell, etc., por lo que el ciclo de aprendizaje integrado es más largo y el umbral es incluso más alto. Más necesario. Fuerte capacidad de aprendizaje y habilidades profesionales. ¡Mientras persistas, definitivamente tendrás éxito!