Linux Boot Time Reduction training

All you need to know to make Linux boot faster on your embedded Linux system.

Overview

By default, the embedded Linux systems that you build with Yocto or Buildroot are not optimized for fast boot time. The kernel, the bootloader and the way the system starts are still based on standard settings, some of which are not used in your system.

This course will show you techniques for identifying the biggest time consumers in all parts of the system, from the bootloader, to the kernel, the filesystem, the init manager, the system services and your own applications.

It will also show you how to implement your boot time optimizations when your system is built with the Yocto Project. Systems built with Buildroot will be covered too.

Root Commit uses progressive but challenging practical labs and varying techniques to make the learning always stimulating and fun, and above all to make it stick.

Description

Agenda

Day 1 – Methodology, measuring time, toolchains

  • Demo: how quickly Linux can boot on another board.
  • Boot time optimization principles.
  • Building a new system using the Yocto Project.
  • How to measure time.
  • Toolchain optimizations.

Day 2 – Application, system initialization, filesystem and kernel optimizations

  • Application optimizations.
  • System initialization optimizations.
  • How to boot faster while keeping systemd.
  • Filesystem optimizations.
  • Kernel optimizations.

Day 3 – Kernel and bootloader optimizations

  • Kernel optimizations (continued).
  • Bootloader optimizations – Using U-Boot’s Falcon mode.
  • Storage optimizations.
  • Wrap up: Yocto Project resources for booting faster.
  • Wrap up: final results.

FAQ

Q: Can this course help me to boot my PC faster?
A: Not really if you’re using a standard GNU/Linux distribution (Debian, Ubuntu, Suse, Red Hat…), because you have fewer possibilities to optimize the system without breaking the distribution. This course really targets custom built systems.

Q: Can the practical labs be run on the CPU that my project uses?
A: The Linux kernel provides the same mechanisms for all types of hardware, so what you learn on another platform will apply on other ones as well. However, porting our practical labs to different hardware should be possible if you are ready to accept additional preparation costs.

See also our FAQ for all types of courses and our sustainability efforts.