The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] Had a crack at assembling the Unix v1 kernel
@ 2015-05-04 20:44 Noel Chiappa
  2015-05-04 21:04 ` Dave Horsfall
  0 siblings, 1 reply; 8+ messages in thread
From: Noel Chiappa @ 2015-05-04 20:44 UTC (permalink / raw)


    > From: Mark Longridge <cubexyz at gmail.com>

    > I'm not sure where Unix v1 is loading the kernel from. .. In all the
    > other versions of Unix there was always a file like 'unix' in the root
    > directory but I guess Unix v1 was different?

I don't know much about the other versions, but it would all depend on what's
in the bootstrap (usually contained in block 0 of drive 0, at least on older
11's). In V6, the bootstrap in block 0 prompts for a file name, and when that
is entered, it loads that file into memory and starts it. (It doesn't have
to be in the root directory, IIRC - I'm pretty sure the bootstrap will accept
full path names.)

How did you create a V1 filesystem? (I don't know, BTW, what they look like -
is that documented anywhere?) It's probably not the same layout as the V6
(which I think is the same as V5).

	Noel



^ permalink raw reply	[flat|nested] 8+ messages in thread
* [TUHS] Had a crack at assembling the Unix v1 kernel
@ 2015-05-05 12:24 Noel Chiappa
  0 siblings, 0 replies; 8+ messages in thread
From: Noel Chiappa @ 2015-05-05 12:24 UTC (permalink / raw)


    > From: Mark Longridge

    > I'm not sure where Unix v1 is loading the kernel from. 

    > From: Warren Toomey

    > Have a look here: https://code.google.com/p/unix-jun72/

Thanks for the pointer! From poking around there, it looks like V1 had
special 'cold boot' and 'warm boot' disk partitions.

I wonder why they lost the 'warm boot' capability in later versions? Maybe it
became reliable enough that the extra complexity of supporting it wasn't
worth it?

	Noel



^ permalink raw reply	[flat|nested] 8+ messages in thread
* [TUHS] Had a crack at assembling the Unix v1 kernel
@ 2015-05-04 21:48 Noel Chiappa
  2015-05-05 17:35 ` Ronald Natalie
  0 siblings, 1 reply; 8+ messages in thread
From: Noel Chiappa @ 2015-05-04 21:48 UTC (permalink / raw)


    > From: Dave Horsfall <dave at horsfall.org>

    >> In V6, the bootstrap in block 0 prompts for a file name, and when that
    >> is entered, it loads that file into memory and starts it. (It doesn't
    >> have to be in the root directory, IIRC - I'm pretty sure the bootstrap
    >> will accept full path names.)

    > I'm pretty sure that it didn't have the full namei() functionality, so
    > all files had to be in the root directory.

It depends on what you mean by the first "it" above - if you meant 'V6', then
no. From the Distribution V6's /src/mdec/fsboot.s:
		
  / read in path name
  / breaking on '/' into 14 ch names

The process of breaking the name up into segments, and then later finding
each name in the appropriate directory, can be seen. The code is kind of
obscure, but if you look at the RL bootstap I dis-assembled:

  http://ana-3.lcs.mit.edu/~jnc/tech/unix/rlboot.s

it's pretty much the same code, and a little better commented in the 'read
in directories' part.

	Noel



^ permalink raw reply	[flat|nested] 8+ messages in thread
* [TUHS] Had a crack at assembling the Unix v1 kernel
@ 2015-05-04 20:23 Mark Longridge
  2015-05-04 21:55 ` Warren Toomey
  0 siblings, 1 reply; 8+ messages in thread
From: Mark Longridge @ 2015-05-04 20:23 UTC (permalink / raw)


Ok, I looked around for the instructions on how to assemble the Unix
v1 kernel and couldn't find anything so I tried:

as u0.s u1.s u2.s u3.s u4.s u5.s u6.s u7.s u8.s u9.s ux.s

and that made a.out and I stripped it and it looked like it was around
the same size as /etc/core (it was 16400 bytes rather than 16448 for
some reason).

I'm not sure where Unix v1 is loading the kernel from. I'm guessing
it's /etc/core and if that's the case then I must have been successful
building the kernel. In all the other versions of Unix there was
always a file like 'unix' in the root directory but I guess Unix v1
was different?

Mark



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

end of thread, other threads:[~2015-05-05 17:35 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-04 20:44 [TUHS] Had a crack at assembling the Unix v1 kernel Noel Chiappa
2015-05-04 21:04 ` Dave Horsfall
2015-05-05  0:29   ` Mark Longridge
  -- strict thread matches above, loose matches on Subject: below --
2015-05-05 12:24 Noel Chiappa
2015-05-04 21:48 Noel Chiappa
2015-05-05 17:35 ` Ronald Natalie
2015-05-04 20:23 Mark Longridge
2015-05-04 21:55 ` Warren Toomey

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).