Course Description
Short Course | 18 hours | 1.8 CEUs | $2,295
This instructor-led course will give you the step-by-step framework for developing an embedded Linux product. Starting with the cross-compiler, you’ll learn about setting up a development system, boot loaders, the kernel, drivers, device tree, and all the various software and decisions that need to be made when building a user space root filesystem. Hands-on labs with a RISC-V based emulated development target allow students to practice both coding and building the various parts of the system covered in class.
ESD200 is the second course in the Embedded Systems Professional Certificate. To complete the certificate students will also enroll in ESD100, & ESD300. Click on each course link for more details and to add to cart.
Course Outline
- How to Work in OSS Projects
- Embedded and Real-Time Systems Concepts
- Cross-Development Environments: Goals and Needs
- Build System
- Cross-Development Toolchain
- QEMU
- How to Work in OSS Projects
- Embedded and Real-Time Systems Concepts
- Cross-Development Environments: Goals and Needs
- Kbuild System
- Cross-Development Toolchain
- Booting a Target Development Board from uSD
- Booting a Target Development Board over Ethernet
- Boot loaders and U-Boot
- Kernel Configuration, Compilation, Booting
- Device Drivers
- Device Trees
- Target Filesystem Packaging
- Build Target Root Filesystem
- Root Filesystem Choices
- Configuring uClibc
- Another Alternate C-library: musl
- Build BusyBox Utility Suite
- Kernel Monitoring and Debugging
- Right-Sizing
- Memory Technology Devices (Flash Memory Filesystems)
- Compressed Filesystems
- System Upgrades
- Real-Time Extensions
- Closing and Evaluation Survey
- Basic Target Development Board Setup
- Booting the Target Development Board from uSD
- Booting a Target Development Board over Ethernet
- Kernel Architecture Preview
- Kernel Source Tree Overview
- Kernel Programming Preview
Learner Outcomes
- Master the requirements to setup a Linux cross development environment Use GNU tool chain to compile Linux Kernel and applications code
- Develop and download applications to run on an embedded Linux target system
- Describe the steps to write, compile and load/unload Linux Kernel modules
- Summarize the Linux File System and initramfs (Initial RAM File System)
- Build BusyBox Utility Suite
- Kernel Monitoring and Debugging
- Right-Sizing
- Memory Technology Devices (Flash Memory Filesystems)
- Compressed Filesystems
- System Upgrades
- Real-Time Extensions
- Closing and Evaluation Survey
- Basic Target Development Board Setup
- Booting the Target Development Board from uSD
- Booting a Target Development Board over Ethernet
- Kernel Architecture Preview
- Kernel Source Tree Overview
- Kernel Programming Preview
Prerequisites
Experience in C or C++ programming and Linux.Duration
18 hours | 3 Days or 6 NightsApplies Towards the Following Certificates
- Embedded Systems Development Certificate : 84 Hour Certificate
*Academic Unit eligibility to be determined by college/university in which you are enrolled in a degree seeking program.