Skip to content
This repository was archived by the owner on Sep 27, 2023. It is now read-only.

Latest commit

 

History

History
25 lines (15 loc) · 1.47 KB

bootloader.md

File metadata and controls

25 lines (15 loc) · 1.47 KB
description
Linux as Bootloader

Bootloader

Linux kernel as bootloader/UEFI BDS replacement

The LinuxBoot project provides tooling and a bootloader implementation as initramfs in Golang. In combination with the Linux kernel, the bootloader moves from a standalone implementation to a fully featured Linux environment. The development happens not in a firmware environment anymore.

LinuxBoot has the following advantages over the most bootloader implementations:

  • Best driver support for all kinds of hardware through the Linux kernel.
  • Improved software development efficiency by using Golang and a fully featured Linux userspace.
  • Tons of Linux developers solving the human resource issue for firmware.
  • Modern software development pratices and programming languages available.

What has the bootloader todo with system transparency?

System Transparency has its reference implementation as part of the LinuxBoot bootloader in the u-root project. After the firmware is loaded, the stboot bootloader is invoked:

LinuxBoot with stboot boot flow

The main functionality provided to deliver transparency to end-users or partners is part of the stboot implementation. It provides all information about firmware, bootloader and os components.