Red de conocimiento informático - Conocimiento informático - ¿Qué tal la especialización en software integrado?

¿Qué tal la especialización en software integrado?

Los sistemas integrados han sido una especialidad popular en China en los últimos años, al igual que la especialidad de informática en años anteriores. En los últimos años, la informática ha sido una especialidad popular en los colegios y universidades, pero debido a la escasez de profesores y a los materiales didácticos atrasados, los estudiantes no pueden encontrar trabajo después de graduarse.

En los últimos años, los sistemas integrados han vuelto a ser populares y las principales universidades están compitiendo por contratar personal. Sin embargo, algunas universidades están mal equipadas y carecen de docentes. En un futuro próximo, la profesión integrada seguirá el camino de las computadoras. Hoy en día, muchos estudiantes universitarios y trabajadores están muy interesados ​​en carreras integradas. Hablo de métodos de aprendizaje integrados basados ​​en la experiencia personal. Si hay alguna deficiencia, por favor avise.

La definición de sistema embebido es un sistema informático especial, centrado en aplicaciones, basado en tecnología informática, y cuyo software y hardware pueden personalizarse. Es adecuado para una variedad de aplicaciones con requisitos estrictos de funcionalidad, confiabilidad, costo, volumen y consumo de energía. Generalmente consta de un microprocesador integrado, dispositivos de hardware periféricos, un sistema operativo integrado y aplicaciones de usuario, que se utilizan para controlar, monitorear o administrar otros dispositivos. Los sistemas integrados incluyen casi todos los equipos eléctricos de la vida, como PDA, dispositivos informáticos móviles, decodificadores de TV, Internet móvil, televisores digitales, multimedia, automóviles, hornos microondas, cámaras digitales, sistemas de automatización del hogar, ascensores, aires acondicionados y seguridad. sistemas y máquinas expendedoras, aviones de carga, teléfonos móviles, equipos electrónicos de consumo, instrumentos de automatización industrial e instrumentos médicos, etc.

Los sistemas integrados generalmente se refieren a sistemas que no son de PC, incluidos hardware y software. El hardware incluye procesador/microprocesador, memoria y periféricos, puertos de E/S, controlador de gráficos, etc. La parte de software incluye el software del sistema operativo (SO) (que requiere operación multitarea en tiempo real) y el diseño de la aplicación. A veces los diseñadores combinan los dos software. Las aplicaciones controlan el funcionamiento y el comportamiento del sistema; el sistema operativo controla la interacción entre las aplicaciones y el hardware.

En este momento, los sistemas integrados se dedican al desarrollo de equipos relacionados con la computadora. ¿Cómo pueden las escuelas a las que no les fue bien en la enseñanza de informática en los últimos años participar en la enseñanza integrada?

Para los estudiantes universitarios, se requieren conocimientos básicos del lenguaje C, pero las habilidades ópticas no son suficientes. Deberías leer más libros clásicos extranjeros, por ejemplo, este es un conocimiento esencial para cualquiera que aprenda a programar. Debido a que los sistemas integrados son el producto de una combinación de software y hardware, también es esencial aprender los sistemas operativos y los principios de las microcomputadoras. Sin embargo, en la actualidad, las principales universidades solo se centran en explicar conocimientos teóricos sin aspectos prácticos, lo que hace que los estudiantes no puedan mejorar su interés y solo puedan utilizarlos para los exámenes. Por lo tanto, para aprender bien los principios de los sistemas operativos y las microcomputadoras se requiere una combinación de teoría y práctica. También está la estructura de datos del curso, que hay que mencionar. Este libro escrito por Yan Weimin de la Universidad de Tsinghua es muy famoso en China. Aprender bien estas cosas equivale a practicar habilidades internas en las novelas de artes marciales.

Con estos como base, aprenderás otras cosas rápidamente.

Embedded se divide en desarrollo de software integrado y desarrollo de hardware integrado. El desarrollo de software integrado debería ser como un pato en el agua después de dominar los aspectos anteriores.

Tome el sistema de cursos de Wanda Embedded Linux Training como ejemplo. Personalmente, creo que es bastante bueno. Lo enumeró así:

Conceptos básicos de Linux, desarrollo de aplicaciones de Linux, desarrollo de programas de red Linux integrados, desarrollo de bases de datos e interfaz gráfica integrada, construcción del entorno de desarrollo de Linux integrado, introducción de funciones y estructura interna de S3C2440, análisis y trasplante de BootLoader , Trasplante de kernel de Linux, análisis y trasplante de código fuente de uCOSII, producción de sistema de archivos raíz, BootLoader, análisis integral del kernel, depuración del sistema Linux, depuración de simulación ADS y operación de interfaz de hardware S3C2440, interfaz ARM11, controlador de dispositivo de caracteres Linux, controlador de dispositivo Linux next Block, Linux

Si quieres aprender algo, primero debes aprender su funcionamiento. Estos son los conceptos básicos de Linux, que son operaciones de Linux de uso común. Hay demasiados libros como este, simplemente busque algunos prácticos y léalos. El siguiente paso es aprender a desarrollar programas en Linux basándose en el lenguaje C aprendido previamente. Este curso no se ofrece actualmente en muchas escuelas y es un curso muy importante para los desarrolladores de programas. Sin embargo, Wanda Embedded separa el desarrollo de programas de red, el desarrollo de interfaces gráficas y el desarrollo de bases de datos. De hecho, se trata de desarrollo de aplicaciones en Linux y es posible que se organicen más claramente para facilitar la comprensión de este curso por parte de todos. Estos contenidos son los contenidos más utilizados en el desarrollo empresarial, que son el llamado desarrollo de capa de aplicaciones integradas.

Con una base profunda en lenguaje C, estos contenidos son fáciles de aprender. Los libros más conocidos incluyen "Programación avanzada en el entorno UNIX" del Sr. Steves, que se puede decir que es la Biblia de la programación UNIX. Este libro debe leerse con atención. El desarrollo de programas de red también se basa en la programación de red UNIX del Sr. Stevens. Si desea dominarlo en profundidad, puede echar un vistazo al Volumen 3 del protocolo TCP/IP. Para el desarrollo de interfaces gráficas, eche un vistazo a Programación CGUIQt4 de Jasmin Blanchette (segunda edición). Una vez que los domine, básicamente podrá participar en el desarrollo de la capa de aplicaciones. Existe una necesidad urgente de estas tecnologías dentro de las empresas.

Debido a que el desarrollo integrado no se utiliza en la plataforma x86 que usamos habitualmente, debemos colocar los programas que escribimos en la plataforma correspondiente. En este momento, utilizamos la construcción de un entorno de desarrollo integrado (consulte el sistema del curso anterior). La construcción del entorno de desarrollo es principalmente la construcción del entorno de desarrollo de compilación cruzada. Puede conectarse en línea o hacerlo usted mismo, pero debe crearlo usted mismo para su uso real. Se recomienda que lo use usted mismo primero y luego aprenda lentamente a construirlo.

Para el funcionamiento de ARM9, existen principalmente 2410 y 2440 en el mercado. Cualquiera de los dos está bien, el contenido no es muy diferente. Un estudio cuidadoso de uno es suficiente. Para el funcionamiento de ARM11, no se debe considerar 6410 primero, y es más razonable instalarlo en el sistema de cursos integrado de Wanda. Algunas operaciones en la interfaz operan el ARM como un microcontrolador. Para un libro de este tipo, puede leer el libro de Zhou Ligong, que habla mucho sobre ARM, pero no utiliza productos Samsung, pero está bien saber un poco sobre otras operaciones.

Después de completar la operación 2440, podrá aprender BootLoader. En el sistema integrado Wanda, es BootLoader. Aquí, es sólo un término general. Incluye principalmente u-boot, vivi, LILO, etc. Si usa ARM, puede elegir un pequeño BootLoader, como vivi, para aprender. Después de aprender esto, podrás operar todo lo demás de la misma manera.

El proceso general de trasplante de un sistema operativo es el mismo. Principalmente le permite crear un sistema mínimo para facilitar el aprendizaje del conductor en el futuro. Para el trasplante de sistemas integrados, realmente no hay muchos buenos libros en esta área. Puedes buscar en línea tú mismo.

Una vez que haya dominado los conocimientos básicos, podrá centrarse en el desarrollo de controladores. Este es un proceso largo. Debes calmarte, leer el código lentamente y aprender lentamente. Puede leer libros como "Análisis de escenarios del código fuente del kernel de Linux" y "Comprensión profunda del kernel de Linux". En el sistema de cursos integrado de Wanda, se hablan de muchos ejemplos de desarrollo de conductores, y este es efectivamente el caso. El desarrollo de conductores debe estar expuesto a algunos casos típicos de desarrollo de conductores. Puede aprender lentamente de acuerdo con el sistema de cursos.

El otro es el desarrollo de hardware embebido, principalmente los llamados FPGA, DSP, VHDL, etc. Estas cosas se aprenden básicamente en la universidad. Todos pueden aprenderlos e intentar hacer algo propio. Por ejemplo, copie el tablero y dibuje poco a poco.

Bien, eso es todo para el aprendizaje integrado. Si hay algún error, corríjalo.