Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Course Outline
Introduction
- History of Unix/Linux, licenses, standards, working with free software, finding assistance, code spelunking, and the Unix philosophy
Embedded Specifics
- Linux on the desktop compared to Linux in embedded systems, cross/native toolchains, pre-built toolchains, build systems, C libraries, etc.
Eval Board
- Boot process overview, observing the boot sequence
Yocto Introduction
- What is Yocto? Why use the YP? What constitutes the YP? Poky, BitBake, OE-Core, Metadata
The YP Autobuilder
- What is the YP Autobuilder? Docker container usage (pulling, launching)
The YP Workflow
- Introduction
- Workflow overview, OE architecture
- Configuration (User, Metadata, Machine, Distribution Policy)
- Sources
- Build process (Source fetching, Patching, Configure/Compile/Install, Pseudo, Recipe examples, Output analysis/Packaging, Image Generation, SDK Generation)
- Customizing Images (Introduction, local.conf, IMAGE_FEATURES, custom .bb files, custom packagegroups)
BitBake
- History
- Syntax
- Debugging (debug levels, finding recipes/images/packagegroups, BitBake environment/tasks/logging, force building specific tasks, cleansstate, invalidate stamp, devshell, dependency explorer, killing all BitBake instances, BitBake graphical wrapper)
Layers
- Introduction, bitbake-layers tool, yocto-layer tool
BSP
- Introduction, System Development Workflow, BSP Developer’s Guide (bsp-tool)
Kernel
- Introduction, System Development Workflow, Kernel Development Manual (defconfig, defconfig + configuration fragment, in-tree kmod, out-of-tree kmod, FDT, etc.)
Application Development Toolkit
- Introduction, Cross-Development Toolchain, Sysroot, ADT-Eclipse Yocto Plug-in, QEMU Emulator, User Space Tools
- Installing ADT & Toolchains
- Using a Cross-Toolchain tarball (Introduction, Building/Installing the tarball, Cross-Toolchain + Makefile/Autotools/Autotools lib + App, recipes)
- Using the ADT Installer (Introduction, Web Server, Building image + ADT installer, Configuring + running ADT installer, adding ADT installer to webserver, ADT installer on host)
Eclipse
- Introduction, Application Development Workflow
- Working with Eclipse (rootfs features, kernel + FDT, rootfs, installing JDK, installing Eclipse, configuring Eclipse, installing Yocto Plug-in, configuring the Yocto Plug-in, creating an Autotooled Project, configuring Cross-Toolchains, building the Project)
Debugging
- Introduction, gdb, gdb remote debugging, (gdb remote) Debugging with Eclipse, (remote) Running from Eclipse
Profiling/Tracing
- Introduction, perf, gprof, gcov, strace, ftrace, systemtap, oprofile, LTTng + Eclipse (data visualization)
Package Management
- Working with Packages, IPK, creating a package feed, installing a package with opkg on the target
Licensing
- Introduction, adding custom licenses, Open Source License Compliance
Devtool
- Introduction, devtool, real-world showcase meta-cfengine
Except where otherwise noted, content and this course outline are licensed under Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).
Requirements
Prerequisites
- Basic familiarity with using a GNU/Linux system (e.g., Ubuntu) as an end-user in user space
- Basic familiarity with a command-line shell
- Basic knowledge of user/kernel space programming with GNU/Linux
- Intermediate C programming skills
- You should have attended Embedded GNU/Linux Systems Architecture (5 days) (highly recommended!) unless you are already familiar with the material covered in that training.
- You must have practical experience with Embedded GNU/Linux (kernel, userspace, root file system, tools) to follow the Yocto training.
- While it may be helpful to have attended Embedded GNU/Linux Device Drivers and Kernel Internals (5 days), this is not a strict prerequisite. It is sufficient to know how to build the GNU/Linux kernel, kernel drivers (in-tree and out-of-tree), and the FDT from the kernel side to participate in the Yocto training.
28 Hours
Testimonials (1)
That the trainer adapts to our needs