How Does Linux Boot Process Work?

479,559
0
Published 2023-12-12
Get a Free System Design PDF with 158 pages by subscribing to our weekly newsletter: bytebytego.ck.page/subscribe

Animation tools: Adobe Illustrator and After Effects.

Checkout our bestselling System Design Interview books:
Volume 1: amzn.to/3Ou7gkd
Volume 2: amzn.to/3HqGozy

The digital version of System Design Interview books: bit.ly/3mlDSk9

ABOUT US:
Covering topics and trends in large-scale system design, from the authors of the best-selling System Design Interview series.

All Comments (21)
  • @DK-ox7ze
    This is a good summary, but it seems like there's a lot going on behind the scenes in all of these process, especially systemD. Would be nice to cover that in a future video :)
  • @ethanmye-rs
    Good overview, but missing a discussion of ACPI, initramfs/initrd.
  • @danholli123
    There's a bit of a misconception about BIOS. MBR is limited to 2TB, but a BIOS doesn't need to be restricted to MBR, it could've moved to a different (likely proprietary) format... it's just that GPT and EFI were more flexible and the groundwork was already completed
  • @eliottmax8454
    I was expecting that you would really be talking about the kernal boot process and not everything around. But in the end, I never saw an exhaustive explanation about the boot process in the first place so I am that to know that I did not miss out anything.
  • @nelumertyk6
    Bravo si multumesc.E simplu,frumos pe intelesul tuturor...fara explicatii savante.CHIAR UN TUTORIAL...GENIAL DE SIMPLU!!!La mai multe inainte !!!
  • @coderdojoAN
    Great summary and visualization of the entire boot process. Very well done mate!!!!
  • @trueriver1950
    As has already been said, there is a lot going on in each of these steps. My major criticism is that step 5 simplifies away the usual mechanism of running some code from an initial ramdisk: this is done so that the kernel does not have to contain all the device drivers needed to load whatever modules it needs before the final root partition becomes readable. That also means that an earlier step needed to load the initial ram disk into memory and tell the kernel where to find it. Grub (or some other boot program like Lilo) will have done this already, so the Grub step should mention that it loads a filesystem containing drivers as well as libraries into ram before passing control to the kernel. And then, in my opinion, you need an extra step between 4 and 5 for the initial ram stage, that is used to get the system able to actually read the code it needs off the disks. While it does that the kernel only needs to know how to read the initial ramdisk. More detail follows... There are two exceptions to what i just said 1. If you compile your own kernel you can arrange that the kernel has all the drivers it needs built in (Gentoo users might do this, knowing in advance exactly what filesystem and hardware will hold the operating system) 2. Puppy (and most Live Disk systems) boot into the ramdisk and never leave it. For different reasons, both these exceptions slow down system loading (because either the kernel or the ramdisk is huge) but often speeds up running once the boot is complete because the kernel has what it needs in memory at all times, one way or another.
  • @maitreerimthong
    Great visualization of the entire boot process, Thank you.
  • @baronhelmut2701
    Very nicely explained and beautifully visualized presentation. I have to ask tho, would you like to make that same presentation again but for a Secured and TPM measured bootgraph ? If so, please do it, people and especially the linux community would need this in order to understand why the TPM makes booting so much more secure. I would even offer my help understanding a measured boot process (which I am pretty sure you would have no trouble understanding on your own).
  • Great content, always helpful and always impressive. Thank you very much for taking the time to make these.
  • @irvingirving6275
    I was looking for something like this. This is great thank you!
  • @Zolodar
    This is incredibly well explained and illustrated! Thank you so much!
  • @dcn4lyf
    Best Summary of the Boot process
  • @marioduarte7658
    Wow, I just loved it - I am recomending to my felow IT guys who ignore those initial steps. Regards from Brazil and keep posting!
  • @qoopdata
    That’s beautiful and enormous work! Great thanks.
  • @empoweringDev
    KUDOS! I've never seen such nicer explanation for this.
  • @_soundwave_
    One of the best channels in last few years
  • @GranZhadu
    Excellent presentation. Thank you for posting it.
  • @b00gi3
    This channel is absolutely brilliant. I am blown away! 0__0 wow