Week 10 ยท Lecture outline
Project presentations, and where embedded Linux goes next
Module 12: A whole system. Lab: Lab 10, project demo. Due: the demo. The project report and repository are due at finals.
Learning goals
By the end of the week a student can:
- Present a small embedded system and answer questions on it, from the boot up to the parts on the header.
- Say what a whole-image build system such as Buildroot or Yocto does that a stock distribution does not.
- Say what real-time Linux is for, using their own latency histogram from lab 6.
- Name how a change reaches the upstream projects the course used.
Lecture 1: project presentations
- Each pair presents its system: what it does, which buses it uses, and how it starts and survives a power pull.
- Each student answers questions alone.
- Ask about one boot stage for every project: where would this system stop if that stage failed, and how would you know?
Lecture 2, block 1: building a whole image
- So far: a stock distribution plus a service.
- A product ships one image built for it: Buildroot or Yocto builds the boot chain, kernel and root filesystem together.
- Libre Computer publishes a Buildroot guide for its boards.
Lecture 2, block 2: real-time Linux
- Lab 6's histogram showed the tail of a general-purpose OS under load.
- Real-time Linux aims to bound that tail.
- A microcontroller beside the Linux board is the other answer, and the contrast the course began with.
Lecture 2, block 3: contributing upstream
- Every stage the course studied is open code: the boot chain, U-Boot, Trusted Firmware-A, Linux.
- A fix found in a lab can be sent to the project it belongs to.
- Where to start: each project's documentation, linked from the resources.
Board demo
- On a board running a program as a service, pull the power while it runs, plug it back in, and show the program come back on its own with nothing typed.
Check questions
What does a whole-image build system such as Buildroot or Yocto give a product that a stock distribution plus a service does not?
One image built for that product, from the boot chain and kernel to the root filesystem, so the whole system is defined in one place and can be rebuilt.
Your lab 6 histogram had a long tail under load. Name two ways a product could bound that latency.
Real-time Linux, or a microcontroller beside the Linux board to handle the time-critical part.