Qué aprender sobre el desarrollo de aplicaciones LINUX integradas
1. Conceptos básicos de Linux
Instalar el sistema operativo Linux, el sistema de archivos de Linux, los comandos comunes de Linux, explicación detallada del proceso de inicio de Linux, estar familiarizado con los servicios de Linux y ser capaz de instale el sistema operativo Linux de forma independiente
Sé competente Utilice los comandos básicos del sistema Linux para comprender los servicios comunes del sistema Linux. Instale el sistema operativo Linux. Practique los comandos básicos de Linux para personalizar. Servicios de Linux.
Conceptos básicos de programación de Shell. Utilice vi para editar archivos. Utilice Emacs para editar archivos.
2. Introducción a Shell, familiarizado con la programación Bash del programa en segundo plano, familiarizado con el entorno de edición en el sistema Linux, familiarizado con varios Shell en Linux, experto en programación de shell, familiarizado con las operaciones básicas de vi
p>
Be familiarizado con las operaciones básicas de Emacs, comparar las diferencias entre diferentes shells, escribir un script de shell para probar si el servidor está conectado, escribir un script de shell para verificar si el proceso existe
Escribir un shell con un bucle Declaración Programa de script
3. Conceptos básicos de la programación C en Linux
Descripción general del entorno del lenguaje Linux C Uso de G Tecnología de depuración Gdb Autoconf Automake Optimización del código Makefile
Familiarizado con Linux system Familiarizado con el compilador G y las reglas Makefile para escribir programas Hello y World Utilice el comando make para compilar el programa y escribir un programa con un bucle.
Depurar un programa problemático
4. Conceptos básicos del desarrollo de sistemas integrados
Descripción general del sistema integrado Configuración de compilación cruzada Configuración del servicio TFTP Descarga del servicio NFS Cargador de arranque y kernel
Proceso de desarrollo de software de aplicaciones Linux integradas Familiarizado con los conceptos y el desarrollo de sistemas integrados procesos Establecer un entorno de desarrollo de sistema integrado, crear una cadena de herramientas cross_g, compilar y descargar U-boot
Compilar y descargar el kernel de Linux, compilar y descargar aplicaciones de Linux
5. trasplante
Análisis de código relacionado con la plataforma de código del kernel de Linux La plataforma ARM presenta las tecnologías clave del trasplante de plataforma Trasplante el kernel de Linux a la plataforma ARM y comprenda el concepto de trasplante
Poder trasplantar. el kernel de Linux y trasplantar el kernel de Linux2.6 a la placa de desarrollo ARM9
6 Comunicación en serie bajo Linux integrado
Conceptos básicos del proceso de desarrollo de software de aplicaciones de Linux integrado de E/S en serie Linux. archivos y dispositivos del sistema y configuración de llamadas al sistema relacionadas con archivos super Terminal y MiniCOM
Estar familiarizado con la comunicación en serie y la E/S de archivos, escribir programas de comunicación en serie y escribir programas de comunicación multiserie
7. Programación multiproceso en sistemas integrados
Descripción general de los procesos del sistema Linux, características de los procesos del sistema integrado, operaciones de proceso, llamadas al sistema relacionadas con demonios, comprender el concepto de procesos en el sistema Linux, ser capaz de escribir programas multiproceso, escribir programas multiproceso
Escribir un programa demonio dormir Llamada al sistema administración, sincronización y comunicación de tareas Descripción general de las tareas de Linux Señales de canalización de programación de tareas ***API de administración de tareas de memoria compartida Comprender Linux mecanismo de gestión de tareas del sistema
Estar familiarizado con varios métodos de comunicación entre procesos Familiarizarse con Linux integrado Sincronización y comunicación entre tareas Escriba un programa de canalización simple para implementar la transferencia de archivos. /p>
8.Programación multihilo en sistemas embebidos
Threading Conocimientos básicos de métodos de programación multihilo, problemas de sincronización en aplicaciones de subprocesos, comprender el concepto de subprocesos, poder escribir multiprocesos simples. -Programas de subprocesos, escriba un programa de subprocesos múltiples
9. Programación de redes Linux integradas
Red Conocimientos básicos Estructura de red TCP/IP en Linux integrado
Análisis de funciones API comúnmente utilizadas en programación et Implementación del comando Ping Gestión básica de licencias de programación de sockets UDP
Protocolo PPP GPRS Comprender la arquitectura de red Linux integrada y poder realizar programación de sockets en el entorno Linux integrado. con protocolo UDP y PPP Familiarizado con el protocolo GPRS
Utilice sockets para escribir un servidor proxy. Utilice sockets para escribir un enrutador. Señale las ventajas y desventajas de TCP y UDP. Servidor web Escriba un reproductor de red que se ejecute en la plataforma ARM
10. Desarrollo de programas GUI
Conceptos básicos de GUI Tipo de GUI del sistema integrado Compilar QT Realizar QT. desarrollo Familiarizado con la GUI comúnmente utilizada en sistemas integrados Ser capaz de realizar programación QT Usar QT para escribir el programa "Hola mundo"
Depurar una instancia que une señales/ranuras y manejar eventos sobrecargando los métodos de clase QWidget
11. Controlador de dispositivo de caracteres de Linux
Conceptos básicos del controlador de dispositivo Conocimiento del controlador de dispositivo de caracteres del módulo del sistema Linux, análisis de la estructura fs_operation, carga del controlador, comprensión del concepto de controlador de dispositivo
Comprensión de la estructura del controlador de dispositivo de caracteres de Linux, capacidad de escribir el controlador del dispositivo de caracteres, escribir el controlador Skull, escribir el controlador del teclado, escribir el controlador de E/S Análisis de un controlador de vigilancia
Comparar las diferencias entre controladores de dispositivos de caracteres en el kernel de Linux 2.6 y el kernel 2.4 Controlador de dispositivos de bloques de Linux Principio de funcionamiento del controlador de dispositivos de bloques Análisis típico del controlador de dispositivos de bloques
Cola de solicitudes de lectura y escritura del dispositivo de bloques Comprender la estructura del controlador de dispositivos de bloques de Linux y ser capaz de escribir un controlador de dispositivo de bloque simple Comparar las similitudes y diferencias entre dispositivos de caracteres y dispositivos de bloque Escribir un controlador de tarjeta MMC para analizar un sistema de archivos
Comparar las diferencias entre controladores de dispositivo de bloque en el kernel de Linux 2.6 y 2.4 kernel
12. Sistema de archivos
Establecimiento del sistema de archivos virtual sistema de archivos ramfs sistema de archivos de memoria proc sistema de archivos devfs sistema de archivos MTD Introducción técnica Inicialización del dispositivo de bloque MTD
Operaciones de lectura y escritura del dispositivo de bloque MTD Comprender el sistema de archivos del sistema Linux Comprender el sistema de archivos de Linux integrado Comprender la tecnología MTD Ser capaz de escribir un sistema de archivos simple Agregar soporte MTD para la placa de desarrollo ARM9
Transplantar el JFFS2 sistema de archivos y modifique los parámetros del sistema operativo a través del sistema de archivos proc. Analice el código fuente del sistema de archivos romfs y cree un sistema de archivos cramfs.
No importa la dirección que elija, se requieren conocimientos básicos de Linux, otros. Los conocimientos que deben dominarse incluyen ARM (el procesador integrado más utilizado) y programación en lenguaje C. El dominio de cada aspecto del conocimiento determina en última instancia la capacidad integral de un individuo para desarrollar Linux integrado.