The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] RE: Porting Unix v6 to i386
@ 2002-08-22 20:52 russ
  2002-08-22 21:23 ` Peter Jeremy
  0 siblings, 1 reply; 53+ messages in thread
From: russ @ 2002-08-22 20:52 UTC (permalink / raw)


It seems as though there was considerable interest in Porting Unix v6 to i386 some months ago. This is a project that appeals to me also. I was wondering if anyone has made any headway in the project and would like to share their experience.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20020822/12dced38/attachment.html>


^ permalink raw reply	[flat|nested] 53+ messages in thread
* [TUHS] Re: Porting Unix v6 to i386
@ 2002-06-06 17:02 Mike Haertel
  2002-06-11 22:31 ` Peter Jeremy
  0 siblings, 1 reply; 53+ messages in thread
From: Mike Haertel @ 2002-06-06 17:02 UTC (permalink / raw)


>I'll upload it soon. Meanwhile, instead of a DOS C compiler, people
>should be able Bruce Evans' bcc or C86 as the compiler, which would
>eventually allow the system to compile itself.

The source code to the Watcom compilers has also finally
been released.



^ permalink raw reply	[flat|nested] 53+ messages in thread
* [TUHS] Re: Porting Unix v6 to i386
@ 2002-06-05 18:49 Ian King
  2002-06-06  7:07 ` Szigeti Szabolcs
  0 siblings, 1 reply; 53+ messages in thread
From: Ian King @ 2002-06-05 18:49 UTC (permalink / raw)


I think this would be a great addition to the archive!  I'm glad I
didn't throw out that old 286 motherboard yet.  :-)  -- Ian 

-----Original Message-----
From: Warren Toomey [mailto:wkt@minnie.tuhs.org] 
Sent: Tuesday, June 04, 2002 4:35 PM
To: Szigeti Szabolcs
Cc: tuhs at minnie.tuhs.org
Subject: Re: [TUHS] Re: Porting Unix v6 to i386


In article by Szigeti Szabolcs:
> I don't know if i can now legally give out parts of the original code,

> if anyone wants to experiment with it (some parts are pretty ugly, 
> because i intedned to rewrite it, but never did, and the parts of the 
> comments are in Hungarian), drop me an email (though i'm now doing my 
> MBA thesis, so might not answer immediatey). If there is interest, I 
> can summarize my experiences.

Hi, yes it's now legal to distribute your code, as Caldera's license
allows for distribution of changes, see
http://www.tuhs.org/Archive/Caldera-license.pdf

I'm the guy who runs the Unix Archive, so I'd be very happy to take a
copy of your work and add it to the archive.

Cheers,
	Warren
_______________________________________________
TUHS mailing list
TUHS at minnie.tuhs.org http://minnie.tuhs.org/mailman/listinfo/tuhs



^ permalink raw reply	[flat|nested] 53+ messages in thread
[parent not found: <200206050222.g552MHm88208@minnie.tuhs.org>]
* [TUHS] Re: Porting Unix v6 to i386
@ 2002-06-04 11:53 Szigeti Szabolcs
  2002-06-04 23:34 ` Warren Toomey
  0 siblings, 1 reply; 53+ messages in thread
From: Szigeti Szabolcs @ 2002-06-04 11:53 UTC (permalink / raw)


Hi folks!

I've just joined your mailing list, and while looking at the archives, i saw
this discussion on porting V6 to Intel.
Well, back in '92, in a university scinence students' competition, I ported
v6 to intel286 in protected mode. (I got second place, the winner was a 3D
animation prog, which is more spectacular, than a # prompt :-)

I used Borland C to compile, with some extra mungling the assembly code ( i
can't remember why).

The hard part was to understand the protected mode, and to write the low
level stuff. Other things, like filesystem, etc. compiled with hardly any
modification. (Had to change =+ to =+, introduce long insted of int[2],
etc.). It has floppy, ide, kbd, parallel, serial and vga drivers.

It got to full multiuser operation, but there are bugs and stupid codings
certainly. The C compiler, nroff, and some other parts were not ported.
(Yes, I used Borland C to compile the programs, and a tool to convert it to
a.out :-)

I don't know if i can now legally give out parts of the original code, if
anyone wants to experiment with it (some parts are pretty ugly, because i
intedned to rewrite it, but never did, and the parts of the comments are in
Hungarian), drop me an email (though i'm now doing my MBA thesis, so might
not answer immediatey). If there is interest, I can summarize my
experiences.

I've not looked it since several years, so i might not remember every
detail, but there are some interesting point, and it was great fun to do.

Regards,

    Szabolcs Szigeti









^ permalink raw reply	[flat|nested] 53+ messages in thread
* [TUHS] Re: Porting Unix v6 to i386
@ 2002-02-15  0:07 John Holden
  0 siblings, 0 replies; 53+ messages in thread
From: John Holden @ 2002-02-15  0:07 UTC (permalink / raw)


Aaron J. Grier wrote :-

> support for PDP-11 was added to gcc a few months ago. 

It's been around since 1991 as a patch, but it didn't keep up with the newer
versions of gcc




^ permalink raw reply	[flat|nested] 53+ messages in thread
[parent not found: <no.id>]
* [TUHS] Re: Porting Unix v6 to i386
@ 2002-02-04 22:23 norman
  0 siblings, 0 replies; 53+ messages in thread
From: norman @ 2002-02-04 22:23 UTC (permalink / raw)


Greg Lehey:

  To repeat what I said earlier: the hardware-dependent code isn't very
  interesting, it's the kernel interfaces.  Minix is not UNIX; BSD is.
  You'll find it easier to adapt a BSD driver to the Sixth or Seventh
  Edition than you will a Minix or Linux driver.

It depends on approach, which depends in turn on intent.

If the intent is to get a system up and running as quickly as possible,
it would probably be best to shoehorn existing code into the existing
old UNIX framework, and code from a current BSD system is probably easier
to do that with than code from Minix (says someone who has looked at
neither within living memory).

If the intent is to learn about the innards of operating systems and
how they interact with hardware, or about the specifics of old UNIXes
or the OS aspects of Intel hardware, it is better to compare different
descriptions of the hardware (whether abstract descriptions in books
or pragmatic ones in code), write your own small test programs to be
run on bare hardware or as special cases within some system that
already runs there, and eventually write your own code or adopt code
that you now understand thoroughly.

Which of these you consider fun depends both on your goals and on your
personal taste.  Both are worthy of respect.

In days long past, when I did a lot of work to make a research version
of UNIX as robust as possible against hardware flaws (recover if possible,
at least explain clearly what broke if not) and to port it to a few new
VAXes of the time, I found the best hardware information to lie in the
VAX/VMS source fiche.  The UNIXes of the day tended either to crash on
the slightest hardware error or to ignore the error and just misbehave
until rebooted.  Stealing code from them would have been easier, but it
wouldn't have done what I wanted.  Reading the VMS sources and treating
them as a hardware reference manual did.  Modern UNIXes doubtless do
better, but the point is that different systems do different things
with the hardware, and if your goal is understanding and not just
function, you will gain more by looking in many places.

An irrelevant but fun anecdote:  it could be argued that the resulting
code recovered too smoothly from errors.  One day I discovered that
one of our systems was running more slowly than usual, though it was
otherwise OK; checking back on the paper console log, I discovered
that several weeks earlier it had had a hard cache error, reported it
and cheerfully turned off the bad half of the cache, and continued on
its way.  So I called Field Service and we scheduled a convenient time
to run diagnostics--yes, the hardware really had failed--and replace
the bad CPU board; but it would have been better to have noticed
earlier.  I watched the console logs more carefully after that.

Norman Wilson
Toronto ON



^ permalink raw reply	[flat|nested] 53+ messages in thread
[parent not found: <E16WjYq-0005RL-00@mercury.ukc.ac.uk>]
[parent not found: <20020131102843.C19170@apple.ukc.ac.uk>]
* [TUHS] Re: Porting Unix v6 to i386
@ 2002-01-30 23:51 Grant Maizels
  0 siblings, 0 replies; 53+ messages in thread
From: Grant Maizels @ 2002-01-30 23:51 UTC (permalink / raw)


Actually I have 8086 C compilers on my old Altos systems (486 and 586)
running Xenix.
The OS on the 486 is a very early version of Xenix which is really a
slightly modified version of v7.

If the machine still works (has not been turned on for a few years), I may
be able to set it up so that it can be accessed through a terminal server
off the internet so that it can be used to do compiles.

I think that Microsoft may own the copyrights on these old compilers (not
sure), but it would be nice if the source was publicy available (or even
binaries).

If the machine still works (has not been turned on for a few years), I may
be able to set it up so that it can be accessed through a terminal server
off the internet so that it can be used to do compiles.

The 486 with v7 has an 8086, 512k memory, 12Meg hard disk. With the full V7
OS, including c (lex, yacc, ...) , troff, and some Microsoft add-ons
(fortran, cobol, mutimate??) fits in 7 Meg.

Grant Maizles


P.S. The 486 and 586 names refer to the number of supported users which the
machine can handle and the fact that it has a 8086 CPU. The configs were

486 5 Serial ports (1 for a printer)
586 6 Serial ports

I had a customer with a 986 which had 10 serial ports.

> -----Original Message-----
> From: M. Warner Losh [mailto:imp at village.org]
> Sent: Thursday, January 31, 2002 7:54 AM
> To: mike at ducky.net
> Cc: tuhs at minnie.tuhs.org
> Subject: Re: [TUHS] Re: Porting Unix v6 to i386
> 
> 
> In message: <200201301952.g0UJq0E39966 at ducky.net>
>             Mike Haertel <mike at ducky.net> writes:
> : >Anyhow I have started gathering the tools (Watcom C compiler now
> : >open source and free!  www.openwatcom.org)
> : 
> : They have announced that it *will be* open source and free,
> : but so far as far as I can tell there is nothing available
> : at openwatcom.org except a binary-only patch to upgrade 
> : the last commercial version 11 to 11.0c.
> : 
> : So, it isn't yet.  Right now it's just vaporware.
> 
> The only compiler I know of that deals properly with generating 16-bit
> x86 code is bcc, which the Elks folks use to build their kernel.  This
> is Bruce Evan's compiler with support for prototypes bolted on, iirc.
> 
> 	http://www.cix.co.uk/~mayday/
> 
> It is a tad Linux centric, but I was able to get it to build with only
> a few tweaks on FreeBSD.  It is sufficient to build the elks tree, but
> I've not tried it on anything else.
> 
> Warner
> _______________________________________________
> TUHS mailing list
> TUHS at minnie.tuhs.org
> http://minnie.tuhs.org/mailman/listinfo/tuhs
> 



^ permalink raw reply	[flat|nested] 53+ messages in thread
* [TUHS] Re: Porting Unix v6 to i386
@ 2002-01-30 21:52 John Holden
  0 siblings, 0 replies; 53+ messages in thread
From: John Holden @ 2002-01-30 21:52 UTC (permalink / raw)


I think that v7 would be far easier to port than v6. Although it's not much
bigger than v6, the code is a lot cleaner, and there are less machine
dependencies.  One of the reasons for a lot of the changes between v6 and v7
was a conscious effort to make it more portable . The old assignment operators
like '=+' changed to "+=".  'Unsigned' and 'long' data types are missing
from v6 (and reflected in the kernel), so all integer calculations were 16
bits. Unsigned ops were done using 'char *'. v7 was ported to the Vax and the
Interdata.

ioctl is there, and the 'standard io' library. The file seek call in v6 had
either block (512) or byte offsets, and v7 introduced lseek to replace it. Only
16 bits were used to store block numbers in inodes, so filesystem sizes were
restricted (not a real problem since both v6 and v7 could run happily on a 2.5Mb
RK05 disk, including swap space and c compiler). 'vi' ran under v7, but v6 only
offered 'ed' (or variants like 'em') and 'qed'

If you hadn't guessed, v7 is by far my favourite Unix variant. Lean, clean and
without the latter clutter of supporting networking in the kernel.




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

end of thread, other threads:[~2002-08-22 23:56 UTC | newest]

Thread overview: 53+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20020707154509.A172@muppet.labs.de>
2002-07-08  1:09 ` [TUHS] Re: Porting Unix v6 to i386 Warren Toomey
2002-07-08 10:33   ` Sven Dehmlow
2002-07-08 13:52     ` SZIGETI Szabolcs
2002-07-08 14:15       ` Warren Toomey
2002-08-22 20:52 [TUHS] " russ
2002-08-22 21:23 ` Peter Jeremy
2002-08-22 23:56   ` Warren Toomey
  -- strict thread matches above, loose matches on Subject: below --
2002-06-06 17:02 [TUHS] " Mike Haertel
2002-06-11 22:31 ` Peter Jeremy
2002-06-11 22:52   ` Mike Haertel
2002-06-05 18:49 Ian King
2002-06-06  7:07 ` Szigeti Szabolcs
2002-06-06 10:20   ` Warren Toomey
     [not found] <200206050222.g552MHm88208@minnie.tuhs.org>
2002-06-05 11:54 ` John Chung
2002-06-04 11:53 Szigeti Szabolcs
2002-06-04 23:34 ` Warren Toomey
2002-02-15  0:07 John Holden
     [not found] <no.id>
2002-01-30  1:57 ` Aaron J. Grier
2002-01-30  9:18   ` P.A.Osborne
2002-01-30 18:00     ` Sven Dehmlow
2002-01-30 19:50       ` Johnny Billquist
2002-01-30 21:40         ` Michael Davidson
2002-01-31 10:26         ` P.A.Osborne
2002-01-31 18:51           ` Johnny Billquist
2002-02-01 10:27             ` P.A.Osborne
2002-01-31 19:04           ` Mike Haertel
2002-01-30 19:52     ` Mike Haertel
2002-01-30 20:54       ` M. Warner Losh
2002-01-30 22:47         ` Greg Lehey
2002-03-03 12:51       ` Cyrille Lefevre
2002-03-03 20:14         ` Peter Jeremy
2002-03-03 20:46           ` Tim Shoppa
2002-03-03 21:07             ` Peter Jeremy
2002-01-31  9:18     ` Lauri Aarnio
2002-01-31 11:00       ` P.A.Osborne
2002-01-31 16:09         ` Sven Dehmlow
2002-01-31 18:45           ` Lauri Aarnio
2002-02-01  0:42             ` Greg Lehey
2002-02-04 22:12               ` Michael Davidson
2002-02-05 10:42                 ` P.A.Osborne
2002-02-06 16:36                   ` Jeffrey S. Sharp
2002-02-07 10:23                     ` P.A.Osborne
2002-01-30 22:44   ` Greg Lehey
2002-02-14 22:30 ` Aaron J. Grier
2002-02-15  3:08   ` Peter Jeremy
2002-02-15  8:08   ` Lars Brinkhoff
2002-02-04 22:23 norman
     [not found] <E16WjYq-0005RL-00@mercury.ukc.ac.uk>
2002-02-04  9:33 ` P.A.Osborne
2002-02-04 10:57   ` Warren Toomey
2002-02-04 11:48     ` P.A.Osborne
     [not found] <20020131102843.C19170@apple.ukc.ac.uk>
     [not found] ` <200201311847.g0VIlHj41858@ducky.net>
2002-02-01 10:24   ` P.A.Osborne
2002-01-30 23:51 Grant Maizels
2002-01-30 21:52 John Holden

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