@iska@mstdn.starnix.network @Suiseiseki It sure does! the bootloader reads initrd image and just passes it to the kernel. Kernel doesn't know shit about most file systems at this point. The init itself is in initrd image (so initrd comes first), so are the filesystem modules. Init inserts filesystem modules (and the modules required for the block devices to work) into the kernel then mounts the real root filesystem, now that it has the proper filesystem support and has the block device accessible.
@iska@mstdn.starnix.network @Suiseiseki initrd is optional, but most linux-based operating systems use it as it has some advantages. For example, you can have filesystem support built as kernel modules, including support for the filesystem your real root partition has. Otherwise you'd have to have them built into the kernel.
@iska@mstdn.starnix.network @Suiseiseki Then a lot of other shit happens, agetty or something similar gets started and you get the login prompt. At last!
Thing is, if real root filesystem is not accessible: block device is not accessible, filesystem is not supported or it is damaged — you won't get the login prompt. But you will still see the errors in *framebuffer* console.