EMB-220 · Embedded Linux & BSP · Practitioner
Init Systems & Fast Boot — full syllabus
systemd and the alternatives, plus measuring and cutting boot time to a target.
Who this course is for
Embedded engineers who must pick an init system and hit a boot-time number — product teams with a hard requirement like 'UI in under five seconds' and a distaste for unmeasured claims.
Prerequisites
- Linux userspace fundamentals: processes, services, rc scripts or units
- An embedded build system (Yocto or Buildroot) at user level
- Serial console access for the hardware measurement lab
Course outline
Day 1 — Init systems in production
- What PID 1 must do and what it is not for
- systemd: units, targets, dependencies and socket activation
- Debugging systemd boot: systemctl, journald and the critical chain
- BusyBox init and minimal alternatives: what you gain and what you maintain yourself
- Choosing per product: footprint, features, updates and team skill
Day 2 — Measuring and cutting boot time
- A measurement discipline: define the moment 'booted' means, then measure it
- systemd-analyze, bootchart and serial timestamping with grabserial
- Kernel-side cuts: initcall_debug, deferred probing, modules vs built-in
- Userspace-side cuts: ordering, socket activation, precomputation
- Meeting a hard target without breaking updates or maintainability
Hands-on labs
- Lab: Convert a shell-script service to a systemd unit with correct dependencies, then break a dependency and read the failure
- Lab: Socket-activate a service and measure the ordering change it produces in the critical chain
- Lab: Capture a boot timeline three ways — systemd-analyze, bootchart and grabserial on the lab board — and reconcile them
- Lab: Cut a measured chunk of boot time using kernel and userspace techniques, keeping a before/after evidence log
- Lab: Build the same rootfs with BusyBox init, and document what you had to re-implement by hand
Capstone project
Take a provided image with a stated boot-time target to a working result: define the 'booted' event, measure with two independent methods, apply kernel and userspace reductions in order of evidence, and deliver the tuned image with a before/after timeline and a written account of every change that mattered — and every change that did not.
What you leave with
- Systemd unit, target and socket-activation skills
- A defensible init-system choice for your product
- Three boot-time measurement methods and when they disagree
- An ordered toolbox of kernel and userspace boot reductions
- The habit of optimising boot only against measured evidence
Upcoming dates
| Dates | Where | Seats | Early bird | Regular | |
|---|---|---|---|---|---|
| 1 Nov – 2 Nov 20262 full days | RiyadhIn person · KAFD Conference Centre | 4 of 14 | — | SAR 5,250 | |
| 8 Nov – 9 Nov 20262 full days | Kuwait CityIn person · Al Hamra Tower | 9 of 14 | KWD 390until 9 Oct | ||
| 8 Nov – 9 Nov 20262 full days | MuscatIn person · Knowledge Oasis Muscat | 4 of 14 | OMR 490until 9 Oct | ||
| 15 Nov – 18 Nov 20264 half-days | Gulf bandLive online · 09:00–13:00 GMT+3 | 16 of 20 | US$900until 16 Oct | ||
| 16 Nov – 17 Nov 20262 full days | OttawaIn person · Kanata North Tech Park | 9 of 14 | CAD 1,710until 17 Oct | ||
| 23 Nov – 24 Nov 20262 full days | TorontoIn person · MaRS Discovery District | 4 of 14 | CAD 1,710until 24 Oct | ||
| 23 Nov – 24 Nov 20262 full days | LondonIn person · Shoreditch Works | 9 of 14 | GBP 980until 24 Oct | ||
| 23 Nov – 26 Nov 20264 half-days | Europe bandLive online · 09:00–13:00 CET | 5 of 20 | US$900until 24 Oct | ||
| 23 Nov – 26 Nov 20264 half-days | Americas bandLive online · 13:00–17:00 ET | 10 of 20 | US$900until 24 Oct | ||
| 30 Nov – 1 Dec 20262 full days | BerlinIn person · Factory Görlitzer Park | 4 of 14 | EUR 1,160until 31 Oct |
Book a seat, or bring this course to your team
Seats can be reserved online; private delivery runs on-site or live online, adapted to your stack.
Questions about fit or prerequisites? Email hello@kernelsystems.academy. To save this syllabus, print this page to PDF from your browser.