-
Notifications
You must be signed in to change notification settings - Fork 0
Boot sequence
Tristan Israël edited this page Jun 23, 2026
·
5 revisions
This page describes the boot sequence of a system built upon Safecor.
The provisioning of the system is not described here, please look at the page Provisioning.
This section describes the steps during the boot of the system.
- The system is powerd on by the user
- Depending on the provisioning type, the local boot loader or the PXE boot loader is executed
- The XEN kernel is loaded
- The Linux kernel is loaded
- The initial ramfs is loaded and
initis started- The kernel modules are loaded for framebuffer, disks, etc
- Safecor's splash screen is shown
- The root filesystem is mounted
- OpenRC is started
- The
sysinitrunlevel is executed- The hardware is discovered
- The
bootrunlevel is executed-
AppArmoris started - The
sysloggeris started - The system configuration is done (hostname, clock, swap, ...)
- The kernel modules for the hardware are loaded
-
- The
defaultrunlevel is executed- The
XENservices are started - The service
libvirtis started - The security is enforced
- If the debug mode is enabled, a serial TTY device and console are started
- The
Xserver is started - The product's splash screen is shown
- The MQTT broker is started
- The MQTT tunnels manager is started
- The
- The
- The Safecor's initialization sequence is started
- Depending on the provisioning type, Alpine packages may be downloaded from the public repository, including Safecor and specific application packages, into the local repository
- The local PGP key is generated
- The local repository is signed with the new PGP key
- The Safecor Dom0 daemon is started
- The orchestrator is started
- The Domains configurations are created
- The Domains are started
- The USB devices are identified and attached to
sys-usb - The communication channels are created for each Domain
- Message channel
- Log channel
- Input channel
- The Safecor's packages are installed in the Domains
- safecor-sys-usb
- safecor-sys-gui
- In the
sys-usbDomain:- The
sys-usbcontroller is started- The mouse, keyboard and touch screen are monitored and all events are serialized in the
inputspv channel
- The mouse, keyboard and touch screen are monitored and all events are serialized in the
- A mdev rule is installed to monitor the USB storages, mount/unmount them and send notifications
- If the debug mode is enabled the TTY tunnel is created between the serials ports and the
ttypv channel.
- The
- In the
sys-guiDomain:- The product's GUI package is deployed