The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* Re: [TUHS] Paper discussing Unix boot process?
@ 2019-04-10 18:02 Pat Barron
  2019-04-10 18:14 ` Erik E. Fair
  0 siblings, 1 reply; 25+ messages in thread
From: Pat Barron @ 2019-04-10 18:02 UTC (permalink / raw)
  To: tuhs

The paper I am thinking of (gee, I wish I could remember any other details 
about it...) was *very* detailed and specific, and was hardware-specific 
to either the PDP-11 or VAX.  It would not at all be applicable to Linux 
or any kind of modern OS.

I am wondering if it is something in the Leffler et al book, I'll have to 
go back and review that.  I'll have to find my copy of it first...

--Pat.

^ permalink raw reply	[flat|nested] 25+ messages in thread
* Re: [TUHS] Paper discussing Unix boot process?
@ 2019-04-17  5:35 Paul Ruizendaal
  2019-04-17 18:26 ` Warner Losh
  0 siblings, 1 reply; 25+ messages in thread
From: Paul Ruizendaal @ 2019-04-17  5:35 UTC (permalink / raw)
  To: TUHS main list

Maybe xv6 has an explanation of the boot process that is of use to the original poster:

https://pdos.csail.mit.edu/6.828/2018/xv6.html

Paul


^ permalink raw reply	[flat|nested] 25+ messages in thread
* Re: [TUHS] Paper discussing Unix boot process?
@ 2019-04-16 12:52 Noel Chiappa
  0 siblings, 0 replies; 25+ messages in thread
From: Noel Chiappa @ 2019-04-16 12:52 UTC (permalink / raw)
  To: tuhs; +Cc: jnc

    > From: Charles Anthony

    > The Multics System Initialization Program Logic Manual. 139 pages of
    > somewhat detailed information. 

I was going to mention the Multics init PLM! :-) Needless to say, it's
probably not a good candidate for the original goal - a document describing
how an OS boots - it's simply too complicated for ordinary mortals! (Reading
it makes _my_ head hurt!) There are a couple of reasons it's so complex.

Multics is not a monolitic OS, the way most versions of Unix are (although I
gather this is no longer quite true of Linux); the OS isn't this large blob
of bits you load into memory and start. Its structure makes heavy use of the
segmentation model supported by the hardware. Moreover, although the first
segments loaded aren't paged, many of the later ones are. (This makes sense
in the context of the times; with limited core main memory, you wouldn't want
to devote massive chunks of main memory to have the entire OS always
resident.)

However, this all makes for a more complex booting process; the standard
Multics boot tape (a Multics System Tape) contains many modules, which get
linked in individually at boot time. (In V6 terms - the version I'm most
familiar with - it's as if a Unix boot tape contained 'lib1' and 'lib2', and
the bootstrap included a linker to build the OS binary in memory.) And in fact
the modules come in in tranches, and some of the earlier one are available for
use in loading later tranches (e.g. paging).

This does have some advantages, though; e.g. the MST is the same for all
Multics machines (including the initial boot of a new machine); the system is
customized to the particular configuration during the bootstrap process. This
is actually not too crazy, there are reasons this makes sense.

For one, the whole 'information utility' concept (where Multics admittedly
went down the wrong path, in terms of the future of computers); a single
giant machine (multi-processor, multi-memory bank, multi-I/O controller). The
thing is that any of these could be switched out if it developed a fault, but
then you have to be able to boot that new configuration. (In particular,
Multics wasn't a master-slave multi-processor system, they're all the same;
but only one CPU runs for most of booting, the others are started and added
once the system is running. But the 'bootstrap CPU' might change if the
original bootstrap CPU develops a fault...)

	Noel

^ permalink raw reply	[flat|nested] 25+ messages in thread
* Re: [TUHS] Paper discussing Unix boot process?
@ 2019-04-13 18:35 Noel Chiappa
  0 siblings, 0 replies; 25+ messages in thread
From: Noel Chiappa @ 2019-04-13 18:35 UTC (permalink / raw)
  To: tuhs; +Cc: jnc

    > From: Warren Toomey <wkt@tuhs.org>

    > That's all I knew at the time :-)

:-) I used nroff/troff for a bit, but I didn't like it; I don't recall why,
but I suspect I wasn't using people's macro packages, which probably made it
more difficult to use. My favourite was SCRIBE, but it alas seems to have
died.

    > From: Dan Cross <crossd@gmail.com>

    >> the original Western Electric copies are not troff'ed and run through
    >> a typesetter ...

    > Indeed. Even the mid-90's Peer-to-Peer press reprinting appears to be,
    > roughly, a facsimile of line printer output. ...
    > Interestingly, the title page appears to be approximately original and
    > is typeset.

I finally located my copy of the reprint (I'd been using it to help Fritz
Mueller find a problem in his RK11C, and it wasn't in its normal place), and
comparing it with my 'samizdat' set (which came from a set owned by
Lincoln-Sudbury High School - they actually had an -11 running V6, I helped
their computer person, I forget his name now, with it), I can confirm that:

- The reprint does mostly reproduce the exact page images from the original
(which was indeed, mostly line-printer out), except that the original does not
have the typeset chapter/section header pages. It's possible that the pages in
the reprint are a new printing, but if so, they have exactly matched not only
the layout (not too hard) of the original, but also the font.

- In a couple of places (e.g. Contents, pg. 1; Preface, pg. 1; Chapter One,
pg. 1) "UNIX" has been replaced by "UNIX*" (different font), and at the bottom
of the page has been added "* UNIX is a Trademark of Bell Laboratories", again
in a different font.

- The typeset 'Source Code' title page is in the original; the copy in the
reprint is an exact image, except that the upper-case "This information ...
Written permission of Bell Laboratories" section is not in the original,
which says instead at that place: "This document may contain information
covered by one or more licenses, copyrights and non-disclosure agreements.
Circulation of this document is restricted to holders of a license for the
UNIX Software System from Western Electric. All other circulation or
reproduction is prohibited."

- The typeset 'Commentary' title page is different in my samizdat First
Edition original; it's a copy of the other title page, except that the
second para is replaced by the first sentence of the 'Commentary' title
page of the reprint, and of course the title is different from the other
volume.

	Noel

^ permalink raw reply	[flat|nested] 25+ messages in thread
* Re: [TUHS] Paper discussing Unix boot process?
@ 2019-04-11  1:06 Pat Barron
  2019-04-11  1:27 ` Charles Anthony
  2019-04-11  2:26 ` Erik E. Fair
  0 siblings, 2 replies; 25+ messages in thread
From: Pat Barron @ 2019-04-11  1:06 UTC (permalink / raw)
  To: tuhs

The more I think about this, the more I'm sure I'm barking up the wrong 
tree...

From bits and pieces I've been able to recall, the thing I am looking for 
was not about Unix - it was about TOPS-20.  It was a timeline of the 
system bootstrap activities from power-on to the point where users could 
log in.  I still don't remember where I found it originally, but at least 
now I'm pretty sure I've been looking in all the wrong places...  I 
believe it originated at CMU, but I don't know for sure that that's where 
I originally located it.

The actual problem I'm trying to solve is, at this point in my 
professional career, I'm starting to interact with a lot of people (even 
experienced software developers) who just have no clue of what has to 
happen to get a computer from the point of "power-on" to the point where 
they can actually use it to do things.  This makes me sad...  So, I'm 
looking for something that I can point these people to that could clue 
them in...  I think the whole bootstrap process is useful to understand 
for a lot of reasons, partly because it makes you think about all the 
little fiddly details that have to be attended to to make the computer do 
what you want - when I was first learning about this, I remember being 
particularly fascinated by what had to happen to prepare for that moment 
at which you turn on the MMU, to make sure that the system continues 
executing in a place you expect it to, in the right processor mode.  I 
know most people that I interact with are using Linux or Windows on 
Intel-architecture machines, but the boot process for Unix on the PDP-10 
or VAX (or even TOPS-20 on the PDP-10) I thought would be a much simpler 
thing to understand.  Though maybe that's the wrong thought process, maybe 
I should just find something related to Linux that is comparable (even 
though I think it's more complicated).

While searching, I also came across a decent presentation by a friend of 
mine who teaches at CMU, and discusses hardware that people probably 
actually work with right now, but I think it would be best consumed along 
with the actual lecture that it goes with.

http://www.cs.cmu.edu/~410-f08/lectures/L20_Bootstrap.pdf

Maybe I'll find what I was originally looking for at some point, but after 
spinning on this for most of the day, I don't think it's related to 
Unix...

--Pat.

^ permalink raw reply	[flat|nested] 25+ messages in thread
* [TUHS] Paper discussing Unix boot process?
@ 2019-04-10 16:51 Pat Barron
  2019-04-10 17:20 ` Erik E. Fair
                   ` (2 more replies)
  0 siblings, 3 replies; 25+ messages in thread
From: Pat Barron @ 2019-04-10 16:51 UTC (permalink / raw)
  To: tuhs

Long ago, I could swear I'd read a paper (or a TM, or something) that
described the process of a Unix system booting.  It presented a timeline
describing the sequence of how the boot blocks are loaded, the kernel
is loaded, MMU turned on, etc.

However, other than that, I can't recall a thing about it - can't remember
the title, the author, or where I found it.  I don't remember if it talked
about this process on a Bell Labs Unix system, or a BSD system (though it
had to be one of those - either 7th Edition or BSD).  The timeframe was
probably mid to late 1980's, though I could be wrong about that.

Does this ring a bell with anyone?  I really wish I could find it again...

--Pat.

^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2019-06-26  7:58 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-10 18:02 [TUHS] Paper discussing Unix boot process? Pat Barron
2019-04-10 18:14 ` Erik E. Fair
2019-04-10 18:28   ` Clem Cole
2019-04-10 19:05     ` Bakul Shah
2019-04-10 22:24       ` Clem Cole
2019-04-10 22:53         ` Warren Toomey
2019-04-11  1:45           ` Greg 'groggy' Lehey
2019-04-10 23:19         ` Bakul Shah
2019-04-11  4:52           ` Fabio Scotoni
2019-04-11 13:48             ` Clem Cole
2019-04-11 14:54               ` Dan Cross
2019-04-11 15:36                 ` Clem Cole
2019-06-26  2:28             ` Peter Jeremy
2019-06-26  7:57               ` Bakul Shah
  -- strict thread matches above, loose matches on Subject: below --
2019-04-17  5:35 Paul Ruizendaal
2019-04-17 18:26 ` Warner Losh
2019-04-16 12:52 Noel Chiappa
2019-04-13 18:35 Noel Chiappa
2019-04-11  1:06 Pat Barron
2019-04-11  1:27 ` Charles Anthony
2019-04-11  2:26 ` Erik E. Fair
2019-04-10 16:51 Pat Barron
2019-04-10 17:20 ` Erik E. Fair
2019-04-10 17:57 ` Dan Cross
2019-04-19 22:31 ` Chris Hanson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).