On Sat, Sep 18, 2021 at 08:39:41AM -0400, The Wanderer wrote: > I'm used to seeing ISOLINUX for bootable CDs, and something (I've never > been sure what) for bootable USB drives, but have/had never learned what > was/is used for bootability on SD cards.
It's simple. First, you look at the processor's architecture. GRUB is used on x86, modern POWER (think IBM p-Series) and ARM64 (but you have to use a server hardware for that). For x86 there's also syslinux, lilo, and direct UEFI kernel boot (aka EFIStub). Older POWER (and PowerPCs) used kboot, but I have no personal experience with them. u-boot is ARM and ARM64, maybe RISC-V (no personal experience with that). silo is for UltraSPARCs. I even do not want to know what they're using on MIPS, HPPA or Itanium for boot, but there's definitely something. Next you look at the platform-specific detail. For x86 the biggest (and only) choice you have is between BIOS and UEFI. For ARM it's somewhat rough, but manageable if you happen to have an appropriate datasheet. Theoretically, each SOC has its own, unique way of booting. Practically acquiring right u-boot configuration and patches is all it takes. UltraSPARCs and modern POWERs are easy (you have no choice, that is), but good luck on getting the hardware. It's costly, and barring that Talos thing comes in the form of a typical rack-mount server. And whatever you're using as a boot media does not matter at all, unless you're doing something very exotic, like [1]. Reco [1] https://github.com/raspberrypi/linux/issues/3178