</> CodeBooks
    ← Volver a Linux (página 4)
    Portada de Mastering Embedded Linux Programming

    Mastering Embedded Linux Programming

    Chris Simmonds

    Editorial
    Packt
    Año
    2015
    Páginas
    ~418
    Nivel
    Avanzado

    De qué trata

    Guía especializada de Chris Simmonds orientada a dominar el diseño, construcción y depuración de sistemas operativos Linux integrados en dispositivos de hardware dedicado. La obra se apoya en el kernel Linux (series 3.x y 4.x), el gestor de arranque U-Boot y herramientas industriales para la placa de desarrollo BeagleBone Black y el emulador QEMU. Está dirigida a desarrolladores de software de sistemas, ingenieros de firmware y programadores C/C++ de nivel intermedio a avanzado que ya conocen Linux como usuarios y buscan dar el salto al desarrollo a bajo nivel.

    El libro cubre meticulosamente los cuatro pilares del Linux embebido: cadenas de compilación cruzada (toolchains) generadas con crosstool-NG (comparando glibc, uClibc y musl), el bootloader U-Boot (compilación, scripts de arranque y carga en memoria flash), la configuración y compilación del kernel Linux junto con la adaptación de Device Trees (DTS/DTB), y la creación de sistemas de ficheros raíz reducidos con BusyBox. Asimismo, profundiza en la automatización de imágenes completas mediante Buildroot y Yocto Project (Poky y BitBake), el manejo de almacenamiento flash con el subsistema MTD y sistemas de ficheros JFFS2/UBIFS, la escritura de controladores de dispositivo básicos (device drivers), la programación concurrente con hilos POSIX (pthreads), la depuración remota con GDB y gdbserver, el perfilado de rendimiento con perf y ftrace, y la implementación de sistemas de tiempo real con el parche PREEMPT_RT.

    La parte práctica guía la creación desde cero de una plataforma embebida completa y funcional tanto en hardware real (BeagleBone Black) como en simulación con QEMU, culminando con el desarrollo de módulos del kernel y aplicaciones de baja latencia. El libro es una referencia canónica del sector que aporta una visión integral de la arquitectura del sistema, explicando qué ocurre desde que se enciende el procesador hasta que el espacio de usuario responde en tiempo real. Exige conocimientos sólidos de arquitectura de computadores y lenguaje C, dejando fuera el desarrollo de interfaces gráficas pesadas para centrarse puramente en la ingeniería de sistemas base.

    • Linux embebido
    • Kernel Linux
    • U-Boot
    • Device Tree
    • crosstool-NG
    • BusyBox
    • Buildroot
    • Yocto Project
    • Device Drivers
    • POSIX Threads
    • GDB
    • PREEMPT_RT

    ¿Cómo enseña?

    TeóricoPráctico

    Teoría + práctica

    • ✗ Sin ejercicios
    • ✓ Incluye proyectos

    Proyectos

    Plataforma Linux embebida para BeagleBone Black y QEMU

    Construcción integral de un sistema Linux embebido funcional desde cero, incluyendo la cadena de compilación cruzada con crosstool-NG, el bootloader U-Boot, el kernel con Device Tree y el sistema de archivos raíz mediante BusyBox, Buildroot y Yocto Project.

    Controlador de dispositivo y aplicación en tiempo real

    Desarrollo de un módulo de kernel básico para interactuar con hardware y una aplicación multihilo con POSIX threads sobre un kernel con el parche PREEMPT_RT para evaluar latencias.

    Más de Linux con nivel Avanzado