Skip to content

Commit 08810c2

Browse files
committed
draft chapter on boot environments
Signed-off-by: Daniel Maslowski <[email protected]>
1 parent 593c2ab commit 08810c2

File tree

2 files changed

+26
-0
lines changed

2 files changed

+26
-0
lines changed

src/SUMMARY.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
[PSI Spec Introduction](intro.md)
22
[Mask ROMs and Loaders](mask-roms-loaders.md)
33
[Platform Initialization](platform-initialization.md)
4+
[Boot Environments](boot-environments.md)
45
[Platform Security](platform-security.md)

src/boot-environments.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
## Boot Environments
2+
3+
A _boot environment_ is the hosting system of a _boot loader_.
4+
5+
Boot processes may be interactive, or automatic, or static, set up in many ways.
6+
7+
The following table classifies various approaches with example implementations.
8+
9+
| | serial | network | graphics |
10+
| ----------- | ------------ | --------------- | ---------------------- |
11+
| Automatic | xmodem | TFTP, HTTP, PXE | splash screen |
12+
| Interactive | shell, ReGIS | `cpu`, web | framebuffer, text menu |
13+
14+
A boot environment may be configurable. Configuration may be changed at runtime,
15+
out of band, or at build time depending on the use case.
16+
17+
The following is a list of examples.
18+
19+
- [U-Boot configuration](https://docs.u-boot.org/en/latest/develop/distro.html)
20+
- [UEFI NVRAM](https://uefi.org/specs/UEFI/2.10/03_Boot_Manager.html)
21+
- [SeaBIOS (e.g., coreboot NVRAM)](https://www.seabios.org/Runtime_config)
22+
- [Boot Loader Specification](https://uapi-group.org/specifications/specs/configuration_files_specification/)
23+
- [GRUB configuration](https://www.gnu.org/software/grub/manual/grub/html_node/Configuration.html)
24+
- [syslinux/extlinux configuration files](https://wiki.syslinux.org/wiki/index.php?title=SYSLINUX)
25+
- [PXE scripting/menu](https://ipxe.org/)

0 commit comments

Comments
 (0)