Jump to content

Boot process: Difference between revisions

From postmarketOS Wiki
Exkc (talk | contribs)
Exkc (talk | contribs)
Line 20: Line 20:


== See also ==
== See also ==
* [[Inspecting_the_initramfs]]
* [[Partition Layout]]
* [[Partition Layout]]
* [[:Category:Bootloaders]]
* [[:Category:Bootloaders]]

Revision as of 12:19, 26 September 2024

Overview

Once you press the power button on your device with a postmarketOS installation, it goes through the following steps:

  1. Device specific bootloaders
  2. postmarketOS initramfs
  3. Init
  4. Display manager (if UI is not none, otherwise it stops at getty )
  5. User Interface of choice (Plasma Mobile, Phosh, ...)

Early boot process

In the Early boot process, Device specific bootloaders would boot up.After that it would boot the os in different variant of way. (See Below) See Category:Bootloaders for learn more about how different bootloader work.

UEFI

On device that support UEFI , pmOS would boot via systemd-boot

Andorid boot image

On most Andorid device , the bootloader on that device would boot the android image that is in the partition that labeled at boot.that file contain initramfs and kerenl.pmOS would put its initramfs and kerenl into a Andorid boot image and flash it to the partition.However there are some android device that dont support andorid boot image.

isorec

Very few Android devices don't expect a boot.img file written to the Android boot partition, but rather just the Linux kernel, with an embedded initramfs. But we want the initramfs packaging to be independent of the kernel (not require a kernel rebuild to change the initramfs!). Therefore we use the so-called "isorec" trick here: the initramfs script built into the kernel is just a very small stub, that loads the real initramfs from the postmarketOS boot partition (example).

See also