Linux as Firmware
Tired of reinventing the wheel by implementing drivers for firmware again and again? Not with LinuxBoot!
What?
LinuxBoot is a firmware for modern servers that replaces specific firmware functionality like the UEFI DXE phase with a Linux kernel and runtime.
Why?
- Improves boot reliability by replacing lightly-tested firmware drivers with hardened Linux drivers.
- Improves boot time by removing unnecessary code. Typically makes boot 20 times faster.
- Allows customization of the initrd runtime to support site-specific needs (both device drivers as well as custom executables).
- Proven approach for almost 20 years in military, consumer electronics, and supercomputing systems – wherever reliability and performance are paramount.
Getting Started
git clone https://github.com/linuxboot/linuxboot
cd linuxboot
make \
BOARD=qemu \
KERNEL=../path/to/bzImage \
INITRD=../path/to/initrd.cpio.xz \
config
make
The kernel must be built with CONFIG_EFI_BDS
. Follow further instructions on
our GitHub.
LinuxBoot Book
The official documentation for LinuxBoot is the LinuxBoot Book, where you can find information on how LinuxBoot works, how to build the various flavours (e.g. coreboot/LinuxBoot or UEFI PEI/LinuxBoot), the u-root ramfs builder, etc.
Fortnightly meeting
We meet every two weeks to discuss about the latest news, upcoming talks and events, and so on. The meeting is open and everyone is welcome!
Meeting notes: https://docs.google.com/document/d/1ODqACyXvtRhTi8YHxg8Z386eQRuEEXu7YcQWQStCrvA/edit#heading=h.kogal719mll2
The LinuxBoot calendar is displayed below. Add it to Google calendar using the “+” button, or import it to your favorite calendar app using iCalendar: https://calendar.google.com/calendar/ical/b7msajvido3i4vhbt6d98rhcso%40group.calendar.google.com/public/basic.ics
Contact?
- Mailing list
- Slack (Join here)
In The News
- LWN.net: LinuxBoot: Linux as firmware (2018-03-08)
- Linux Journal: FOSS Project Spotlight: LinuxBoot (2018-02-15)
- Linux Foundation: System Statup gets a Boost with new LinuxBoot project (2018-01-25)
- Facebook’s LinuxBoot-powered F-16 high-performance fabric network [2019-03-14]
Talks
- Trammell Hudson’s LinuxBoot talk at 34c3 (2017-12-29)
- Ron Minnich’s talk “Replace your exploit-ridden firmware with a Linux kernel”: video / slides (2017-10-27)
- Trammell Hudson’s Heads talk at 33c3 (2016-12-27)
- Open Source Firmware @ Facebook by David Hendricks and Andrea Barberio at OSFC Open Source Firmware Conference (slides) (video) (2018-09-1)
- Turning Linux Engineers into Firmware Engineers by David Hendricks and Andrea Barberio at OCP Regional Summit (slides) (video) (2018-10-02)
- Make Your System Firmware Faster, More Flexible and Reliable with LinuxBoot by David Hendricks and Andrea Barberio at LISA 2018 (slides) (2018-10-31)
- Open Source Firmware - A love story by Philipp Deppenwiese at 35c3 (slides) (2018-12-27)
- Open Source Firmware at Facebook by David Hendricks and Andrea Barberio at FOSDEM 2019 (video) (slides) (2019-02-03)
Repos & Instructions
- Heads tree for building LinuxBoot ROMs
- Installation instructions for the Dell R630
- Instructions for OCP Winterfell nodes
- More detailed instructions and build tools are forthcoming for OCP nodes as well as others.