As part of my Venix reconstruction efforts that have been going on for some time, I thought I'd approach the problem from a different angle.
This work aims to take a rather vanilla 7th edition and port it to my Old DEC Rainbow and the IBM PC/XT and maybe AT.
Look in usr for the work to date. So far it contains just a stubbed out version of the 7th edition compiling with TKChia's ia16-elf-gcc/binutils. I've added the drivers from Robert Nordier's V7/x86 port that targetted 32-bit machines. It builds and creates a unix that's an acceptable size:
% ia16-elf-size unix
text data bss dec hex filename
31448 548 15256 47252 b894 unix
I suspect that it will grow my 8-10k before all is said and done and that for the Rainbow, some of that growth may be reduced by having smaller drivers.
For the moment, to get it running, I'll be focusing on the same mythical machine that Elks uses to test its code with QEMU: an IBM-PC/XT, but with modern ATA controller and IDE disk. But I also hope to see it running on my DEC Rainbow 100B someday.
7th Edition didn't have networking, so there will likely be a side project to port 2.9BSD and/or 2.11BSD over.
I've pulled in some drivers from Robert Nordier's v7/x86 port to get a leg up on things. His port was a 32-bit port (this one is 16-bit) and to the later members of the early IBM family with a full 16-bit ISA bus. Some adjustments are necessary. Some other of his code will be good, while a lot of it is sadly only applicable to the 32-bit version.
I'm also trying to do this with an eye to still supporting the old pdp-11 code as well. I'm doing this so I can prove there's no regressions. I'm trying hard to not move things around, but introduce new directies (ia86*) that mirror the old ones and are at the same level in the heirarchy so that the "../h/blah.h" includes will still work.
In the future, I may do an ANSI-ification pass over this code. It would be helpful to have a regression machine to test against as well nutil the x86 port is robust enough to take over the testing.
For comparison, the venix kernel on my DEC Rainbow is
text data bss dec hex
40060 3044 18840 61944 f1f8
-r--r--r-- 1 root 43354 Dec 7 16:49 /venix