Red de conocimiento informático - Conocimiento informático - Introducción al desarrollo integrado: plan de aprendizaje del sistema

Introducción al desarrollo integrado: plan de aprendizaje del sistema

Aprendiendo sobre el desarrollo de sistemas integrados: desde principiantes hasta expertos

Muchos principiantes aprenden sobre sistemas integrados y no están seguros de por dónde empezar a aprender con tantos conocimientos sobre timones y libros de referencia. Empecé, pero perdí el rumbo sobre qué aprender primero y qué aprender después. Aquí están las respuestas que deseas que te ayuden a guiarte.

Este es el programa del curso que encontré en el sitio web de capacitación de ITjob. Creo que es un buen método de aprendizaje para implementar y aprender paso a paso como paso de aprendizaje para el desarrollo de sistemas integrados :) Incluso como referencia. ¡también una buena relación calidad-precio!

Con la aceleración del proceso de informatización en la sociedad moderna, los sistemas integrados se utilizan ampliamente en diversos aspectos de la sociedad, como el ejército, el hogar, la industria, el comercio, la oficina y la atención médica, lo que demuestra un fuerte valor de inversión. Desde una perspectiva internacional, el mercado de sistemas integrados, que son el núcleo de los productos de información electrónica digital, ha superado los 200 mil millones de dólares en herramientas de desarrollo de hardware y software. El valor de la producción industrial global anual generado por los sistemas integrados ha alcanzado el billón de dólares. Con el crecimiento continuo de la economía global y el desarrollo acelerado de la informatización, el mercado de sistemas integrados seguramente crecerá aún más.

Este curso está diseñado para satisfacer las necesidades actuales de rápido desarrollo de Linux integrado. El objetivo del curso es permitir a los estudiantes alcanzar las cualidades básicas adecuadas para el desarrollo de software de aplicaciones integradas, el desarrollo de sistemas integrados o el desarrollo de controladores integrados. . El curso lo lleva paso a paso al mundo del desarrollo integrado, utilizando las plataformas de desarrollo de software y hardware más utilizadas (Linux y Arm) para garantizar que esté lo más cerca posible de las necesidades empresariales actuales.

Los pasos de aprendizaje son los siguientes: (paso a paso:)

1. Conceptos básicos de Linux

Instalación del sistema operativo Linux

Sistema de archivos Linux

Comandos comunes de Linux

Explicación detallada del proceso de inicio de Linux

Familiar con los servicios de Linux y capaz de instalar el sistema operativo Linux de forma independiente

Capaz de utilizar el sistema Linux con competencia Comandos básicos

Comprender los servicios comunes del sistema Linux e instalar el sistema operativo Linux

Práctica de comandos básicos de Linux

Establecer Variables de entorno de Linux

Personalizar los conceptos básicos de programación del Shell de servicios de Linux Usar vi para editar archivos

Usar Emacs para editar archivos

Usar otros editores

2. Conceptos básicos de programación Shell

Introducción a Shell

Comprensión de los programas en segundo plano

Familiarizado con la programación Bash y el entorno de edición en el sistema Linux

Familiarizado con varios Shells en Linux

Competente Realizar programación de shell y familiarizarse con las operaciones básicas de vi

Estar familiarizado con las operaciones básicas de Emacs

Comparar los diferencias entre diferentes shells

Escribe un programa de script de shell para probar si el servidor está conectado

p>

Escribe un script de shell para verificar si existe un proceso

Escribir un script de shell con declaraciones de bucle

3. Conceptos básicos de la programación C en Linux

Descripción general del entorno del lenguaje C de Linux

Cómo usar Gcc

Tecnología de depuración Gdb

Autoconf

Automake

Makefile

Optimización de código y familiaridad con el entorno de desarrollo bajo Sistema Linux

Familiarizado con el compilador Gcc

Familiarizado con las reglas Makefile para escribir programas Hello y World

Utilice el comando make para compilar un programa

Escribir un programa con un bucle

Depurar un programa problemático

4. Conceptos básicos del desarrollo de sistemas integrados

p>

Descripción general del sistema integrado

Compilación cruzada

Configuración del servicio TFTP

Configuración del servicio NFS

Descarga del gestor de arranque y el kernel

Proceso de desarrollo de software de aplicaciones Linux integradas

Familiarizarse con los conceptos de sistemas integrados y los procesos de desarrollo

Establecer un entorno de desarrollo de sistemas integrados y crear una cadena de herramientas cross_gcc

Compilar y descargar U-boot

p>

Compile y descargue el kernel de Linux

Compile y descargue la aplicación de Linux

5. Trasplante del sistema integrado

Código del kernel de Linux

Análisis de código relacionado con la plataforma

Introducción a la plataforma ARM

Tecnologías clave para el trasplante de plataforma

Trasplante del kernel de Linux para comprender el concepto de trasplante en el Plataforma ARM

Poder trasplantar el kernel de Linux y trasplantar el kernel Linux2.6 a la placa de desarrollo ARM9

6. Comunicación en serie bajo Linux integrado

Serial. Conceptos básicos de E/S

Proceso de desarrollo de software de aplicaciones Linux integradas

Archivos y dispositivos del sistema Linux

Llamadas al sistema relacionadas con archivos

Configure HyperTerminal y MiniCOM para familiarizarse con la comunicación en serie

Estar familiarizado con la E/S de archivos y escribir programas de comunicación en serie

Escribir múltiples programas de comunicación en serie

7. Programación multiproceso en sistemas embebidos

Descripción general de los procesos del sistema Linux

Características de los procesos de los sistemas embebidos

Operaciones del proceso

Proceso demonio

Llamadas al sistema relacionadas Comprender el concepto de proceso en el sistema Linux

Ser capaz de escribir programas multiproceso y escribir programas multiproceso

Escribir un programa demonio

Descripción general de las tareas de Linux de gestión, sincronización y comunicación de tareas de llamadas del sistema de suspensión

Programación de tareas

Pipeline

Signal

***Memoria compartida

API de administración de tareas Comprender el mecanismo de administración de tareas del sistema Linux

Estar familiarizado con varios métodos de comunicación entre procesos

Sincronización y comunicación entre tareas familiares en Linux integrado

Escriba un programa de canalización simple para implementar la transferencia de archivos

Escriba un programa que use memoria compartida

8. Programación multiproceso en sistemas integrados

Conocimientos básicos de subprocesos

Métodos de programación multiproceso

Problemas de sincronización en aplicaciones de subprocesos Comprender el concepto de subprocesos

Capacidad para escribir programas multiproceso simplesEscribir un programa multiproceso

Programación de redes Linux integrada

Conocimientos básicos de redes

Estructura de red TCP/IP integrada en Linux

Programación de sockets

Funciones API de uso común

Análisis de la implementación del comando Ping

Programación básica de interfaz de socket UDP

Administración de licencias

Protocolo PPP

GPRS Comprender la arquitectura de red integrada de Linux

Ser capaz de realizar programación en el entorno Linux integrado Programación de sockets

Familiarizado con el protocolo UDP y el protocolo PPP

Familiarizado con GPRS y usando socket para escribir servidor proxy

Usando socket para escribir enrutador

Escribir servidor de licencias

Señalar las ventajas y desventajas de TCP y UDP

Escribir un servidor web

Escribir una red reproductor que se ejecuta en la plataforma ARM

10. Desarrollo de programas GUI

Conceptos básicos de GUI

Tipos de GUI de sistemas integrados

Compilar QT

Desarrollar QT y estar familiarizado con la GUI de sistemas integrados de uso común

Capacidad para realizar programación QT Usar QT para escribir programas "Hola, mundo"

Depurar una instancia que agrega señales /slots

Sobrecargando métodos de clase QWidget Procesamiento de eventos

11. Controlador de dispositivo de caracteres Linux

Conocimientos básicos de controladores de dispositivos

Sistema Linux módulos

Análisis del controlador de dispositivo de caracteres

Estructura fs_operation

Cargue el controlador y comprenda el concepto de controlador de dispositivo

Comprenda el dispositivo de caracteres de Linux estructura del controlador

Poder escribir dispositivos de caracteres Controlador de escritura Controlador Skull

Escribir controlador de teclado

Escribir controlador de E/S

Analizar un controlador de vigilancia

Comparación de Linux2. La diferencia entre los controladores de dispositivo de caracteres en el kernel 6 y el kernel 2.4

Principio de funcionamiento del controlador de dispositivo de bloque de Linux

Bloque típico análisis de controladores de dispositivos

Colas de solicitudes de lectura y escritura de dispositivos de bloque Comprender la estructura del controlador de dispositivos de bloques de Linux

Poder escribir un controlador de dispositivo de bloques simple para comparar dispositivos de caracteres

Similitudes y diferencias con los dispositivos de bloque

Escribir el controlador de la tarjeta MMC

Analizar un sistema de archivos

Comparación de las diferencias entre los controladores de dispositivos de bloque en el kernel 2.6 y 2.4 de Linux

12. Sistema de archivos

Sistema de archivos virtual

Creación de sistema de archivos

sistema de archivos de memoria ramfs

proc Sistema de archivos

sistema de archivos devfs

Introducción a la tecnología MTD

Inicialización del dispositivo de bloque MTD

Comprensión de las operaciones de lectura y escritura del bloque MTD dispositivo en el sistema Linux Sistema de archivos

Comprender el sistema de archivos de Linux integrado

Comprender la tecnología MTD

Ser capaz de escribir un sistema de archivos simple para agregar soporte MTD la placa de desarrollo ARM9

Portar el sistema de archivos JFFS2

Modificar los parámetros del sistema operativo a través del sistema de archivos proc

Analizar el código fuente del sistema de archivos romfs

Crear un sistema de archivos cramfs

p>