This is all very interesting, and I take it the source is available? I saw here:
The Ultrix sources are available, also SunOS, not sure if these are a
"legally open sourced" copies, but in theory HP (Digital) and Oracle
(Sun) and others would now be allowed to open-source ancient versions
given that Caldera have opened up the code it was based on.
So I wonder if OSF/1 is now in the same boat? I'm not as interested in
comparing ancient VM or messaging architectures, I honestly feel like
the microkernel concept, at least as expressed in Mach, has been
pretty thoroughly debunked, exokernels or tiny hypervisors might be
more the go these days. But when you said "compiler" and "walls" my
ears pricked up. I'm partway through re-engineering the ancient
Ritchie compiler to be able to do a few new tricks, such as
automatically outputting ANSI compileable code. Unfortunately this
would occur after the C preprocessor step, I don't have plans to
back-annotate the original source code. But I have plans to make the
entire system as painless as possible. I already have modified "cc"
and "ld" to do some rather interesting stuff retaining Makefile
compatibility.
cheers, Nick
On Mon, Feb 20, 2017 at 8:19 AM, Clem Cole <clemc(a)ccc.com> wrote:
On Sun, Feb 19, 2017 at 1:20 AM, <jsteve(a)superglobalmegacorp.com> wrote:
True, but It’s not 4.3 BSD … I was hoping for something vintage of the
era, just as Solaris 11 is SYSV, but it’s nothing like SYSVr2 on the VAX….
Fair enough... the Mt Xinu version is pretty much the CMU version unadorned.
Which mean that it is a 4.3BSD kernel, with the BSD based MMU code ripped
out and replaced with the CMU code, and the Mach interfaces (ney RIG -
Mach's and Accent's predecessor) messaging system spliced into it; then the
whole mess was built back up using a 4.3BSD user space (and on top of the
i386, an Intel developed boot system - which is a different story I'll not
repeat at this time - but thankfully was common to all the UNIX systems of
the day because Intel developed and make it available to community at
large).
The other option which I would suggest to look at is the OSF/1 mk for the
i386 (monolithic) about version 3x which as I said forked off the Alpha line
and a couple of other systems. The i386 version of OSF/1 supports the same
chips (i386/i486/Pentium) at the CMU version, it also comes with more HW
device support (disk, tape, network, display et al), than the CMU/Mt Xinu
version -- including most importantly SCSI support by default, which is why
is might be a little easier to work on today's HW and VMs. When I last
used it, it lacked USB support; but that was being worked on around the time
I started doing other things so even that might even be available today.
FWIW: OSF/1 also started with 4.3BSD userspace, but it had a lot of work
done to it to updating it - adding the Sys V commands that BSD lacked those
days and adding Sys V options to many commands. i.e. its user space is a
tad more "complete" / "wider" than pure 4.3BSD and again makes it a
little
easier to complete.
Note that the user space commands from the mk would become the basis for
Tru64, HP/UX and later versions of AIX. And also the OSF/1 version will
have better Graphics, Motif and a much better GUI options all around that Mt
Xinu, which alone may be it easier to work.
As I also said elsewhere, the uK or Research Institute (RI) version is a tad
more fun to play with. It's a real kernel architecture moving things like
file systems et al in user space. But you can do do things like start up
multiple system interfaces. LCC had their DOS/Win95 interface was actually
developed running instead of as a VM like it did for the basic mk code, but
in as "second server" but I do not think they ever sold it. The other
thing the RI never did, was the uk still has the pager and all the
networking code in the kernel, so the uk, is hardly 'micro' in size.
There is a OSF Version 4 and maybe even version 5 (I've forgotten, if some
one remembers - please correct me). The OSF RI folks were trying to rewrite
it a bit in C++ as I recall, again this part of the UI vs OSF wars of the
day and Chorus has rewritten there version from Pascal to C++, and IIRC the
RI was trying to counter that. I don't remember if that version of the uk
ever saw the light of day.
Anyway, no matter which is the 3 code streams you pick, Mt Xinu, OSF/1 mk or
uk one hardest problems for today will be that the compiler is of course
extremely old by today's standards, and you are probably going to run it
some walls in that area faster than you might think. That said, if you are
willing to deal with the compiler as it comes, non of them should be very
high, or hard to get clear, but some are likely to take some work.
Have fun and good luck and let us know if you can get any of these running.
Clem