The Unix Heritage Society mailing list
 help / Atom feed
From: Grant Taylor via TUHS <>
Subject: Re: [TUHS] Pre-init initialization
Date: Thu, 8 Aug 2019 19:52:04 -0600
Message-ID: <> (raw)
In-Reply-To: <>

[-- Attachment #1: Type: text/plain, Size: 2515 bytes --]

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.


> 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.<something> 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]

I will definitely check that out.  Thank you for the link.

> Cheers,


Grant. . . .
unix || die

[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4008 bytes --]

  reply index

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-06 23:46 Grant Taylor via TUHS
2019-08-07  1:22 ` Andrew Warkentin
2019-08-07 13:04 ` Clem Cole
2019-08-07 16:40   ` Warner Losh
2019-08-08 13:31     ` Theodore Y. Ts'o
2019-08-09  1:52       ` Grant Taylor via TUHS [this message]
2019-08-10  0:23         ` Theodore Y. Ts'o
2019-08-10  2:28           ` Grant Taylor via TUHS
2019-08-10  4:21             ` Kevin Bowling
2019-08-10  4:50               ` Grant Taylor via TUHS
2019-08-10  4:52               ` Adam Thornton
2019-08-08 13:43     ` Clem Cole
2019-08-08 18:59       ` Warner Losh
2019-08-09  1:46   ` Grant Taylor via TUHS
2019-08-09  2:15     ` Warner Losh
2019-08-09  6:43       ` Kevin Bowling
2019-08-10  1:45 ` Chris Hanson

Reply instructions:

You may reply publically to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

The Unix Heritage Society mailing list

Archives are clonable: git clone --mirror

Newsgroup available over NNTP:

AGPL code for this site: git clone public-inbox