It's been too long. Plus, for all I know, it may have been a "wouldn't this be cool" project that did not work out. I don't recall that we ended up using it much. But that was almost 50 years ago, so your guess is as good as mine.

It was for sure a cute hack.

On Thu, Sep 19, 2024 at 12:10 PM Noel Chiappa <jnc@mercury.lcs.mit.edu> wrote:
    > From: Ron Minnich

    > Ed got tired of watching the bootstrap slowness

This may be a dumb question (in which case, my apologies), but which part of
booting a PDP-11 UNIX was slow? And thus, which parts did he bypass in a
'quick reboot'? (I'm having a bit of a hard time working it out.) I can think
of the following stages as potentially being 'slow':

1 - reading in the kernel image from disk
2 - sizing/clearing main memory
3 - loading running /etc/init
3A - creating all the 'loqin's
3B - starting all the daemons/etc with /etc/rc

(There's obviously a conflict between 2 and 3*; one can't avoid 3* if one
does 2.)

Which ones did he want to avoid?

Avoiding 3* puts some limitations on the system, obviously, because it means
one has to keep running processes around; the process table has to have the
same format (and be in the same location - or it has to be moved before the
new system is started). (Technically, I guess one would have to save the
inode and file tables, too; there isn't enough saved data in the kernel to
re-open files, plus there are file read/write ocation pointers, etc.)

One could sort of do 2 also, if one were prepared to 1) swap all processes
out to secondary storage before 'rebooting', and ii) saving the process table.

    > But I'm wondering: is Ed's work in 1977 the first "kernel boots kernel"
    > or was there something before?

Are you talking about for UNIX, or across all operating systems? I don't have
that broad a memory any more, to know - did TWENEX have something like that?

     Noel