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.
It started as NERF in January 2017 at Google.
LinuxBoot is a Linux Foundation project and as such has a technical charter.
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 had open meetings every two weeks welcoming everyone to discuss about the latest news, upcoming talks and events, and so on.
The meeting notes are kept in a Google doc.
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.
The following are just a subset of the organizations and people ivolved.
Organizations Involved
Technical Steering Committee
- Ron Minnich (Google)
- Jean-Marie Verdun (Horizon Computing)
- Philipp Deppenwiese (9elements Cyber Security)