On 8/8/19 7:31 AM, Theodore Y. Ts'o wrote: > I implemented loading the root file system as a ramdisk from a > floppy in 1991 for Linux. Impressive. > This predates the publication of 386BSD, and I wasn't aware of how > commercial Unix systems did their initial installation and setup. > So as far as I know I came up on it on my own, but none of this was > especially earthshaking or subtle. That logic makes sense to me. > Linux's ramdisk was implemented because most PC's of the day (I was > using a 40 MHz 386 with only a megabyte of memory) only had a single > floppy drive (and if they had a second it was a 5.25" drive). So the > very first implementation which I did assumed the kernel would be no > larger than 512k, and looked for Minix file system signature at 512k. > If it existed, it would load it into the ramdisk and use that as the > boot region. That's before my time. If I remember correctly, by the time I was creating boot+root disks it was the kernel plus something—I don't remember if it was an initramfs or an initrd—concatenated together. I also remember having to use a utility to update the kernel to tell it where the something started. Which was really based on how big the kernel was as padding before the something started. That was probably 2. on Slackware in '99. > Before that, the kernel was loaded from the first floppy, and then > kernel would prompt the user to eject the boot disk and insert the > root disk, and hit any key to continue, and then it would mount the > root disk. I remember doing that. But perhaps it was for a different reason. > But then the only floppy drive would be tied up with the root file > system, so that meant there needed to be a second kernel on the root > floppy, and everything else needed to set up the root image would > have to be copied to the hard disk, and then you'd have to reboot > to release the floppy drive so you could install other programs that > couldn't fit on that initial 1.44MB root floppy. > > For people who are interested in the history of initrd used as part > of the boot process in Linux, please refer to Werner Almesberger's > 2000 paper, "Booting Linux: The History and the Future"[1], presented > at the Ottawa Linux Symposium. > > [1] http://www.almesberger.net/cv/papers/ols2k-9.ps.gz I will definitely check that out. Thank you for the link. > Cheers, :-) -- Grant. . . . unix || die