Skip to main content

Section outline

  • Session 1: Getting Comfortable with Embedded Linux Systems (9:00 AM – 10:30 AM)

    • Embedded System Components
    • Target Board Features and Boot Images

    Lab: Booting BeagleBone Black with pre-built images.


    Session 2: Understanding the Embedded Linux Boot-Up Flow (10:30 AM – 12:30 PM)

    • Microcontroller Boot Flow vs. PC Boot Flow
    • Target Board Boot-Up Flow

    Lab: Recovering a bricked BBB using U-Boot, SD card partitioning, and populating RootFS.


    Session 3: Recovering a Bricked Board (1:30 PM – 3:15 PM)

    • U-Boot Environment Variables
    • Ramdisk Basics and Backup Partitions

    Lab:

    • Recovering a bricked board with a serial interface.
    • Modifying bootargs for backup partition booting.

    Session 4: Bootloader Customization (3:15 PM – 5:00 PM)

    • U-Boot Stages and Design Constraints
    • Adding Custom Commands to U-Boot

    Lab:

    • Saving U-Boot environment on an SD card.
    • Adding custom U-Boot commands.

  • Session 5: Linux Kernel Overview (9:00 AM – 10:30 AM)

    • Kernel Configuration and Build Process
    • Minimizing Kernel Size for Embedded Systems

    Lab: Minimizing the kernel footprint using menuconfig.


    Session 6: Kernel Booting with Initramfs and NFS (10:30 AM – 12:30 PM)

    • Initramfs Basics
    • NFS Parameters for Network Booting

    Lab: Configuring the kernel with Initramfs and booting with NFS RootFS.


    Lunch Break: 12:30 PM – 1:30 PM


    Session 7: Boot-Up Optimization Techniques (1:30 PM – 3:15 PM)

    • Measuring and Analyzing Boot Time
    • Optimization Techniques for Bootloader, Kernel, User Space

    Lab: Using tools like bootchart and systemd-analyze to optimize boot times.


    Session 8: Wrap-Up and Q&A (3:15 PM – 5:00 PM)

    • Review of Key Concepts
    • Final Q&A
    • Certification Distribution