The page size on the VAX is 512 bytes and it lacked COW (copy-on-write) HW (long, long
story as to why, which I will not try to repeat). In the end, this would be a huge
problem with all VAX OSses and HW - take look any of the sources. Us OS guys were
basically driven nuts at time about it and there were huge fights with the HW team. Only
after all the trouble the VAX MMU caused the OS team, and many of the same folks were
working on a different system did we get Dave Cane to relent and he gathered up Tom
Teixiera, Terry Hayes, myself and we [the OS team] essentially designed a different
MMU (IIRC correctly it was 4K page, but I've forgotten and I'm traveling so I can
not look at doc in my basement). I should note that Dave is really is one best HW guys
I ever worked with - he had previously led the VAX 750 development and was part of the
780. He is one of the people I most respect from those days.
As a side note, about 2-3 years later with the 386/486 Intel put the MMU
"on-die" and Moto would follow suite. Once that happened the MMU and the CPU
pretty much were married and you see things become a lot more standardized. But to Intel
and friends credit that got learn from all of the others and decide what worked and what
did not. FYI: if you look at the MMU in the R2000-R4000 [which fairly soft] and then the
Alpha, you'll see the logical progression of what HW was needed, how the TLB (or
"TB" if you came from the other religion) was what really mattered. The
reality is that SW (the OS) started to really influence the MMU design more than it had 10
years before - particularly as the different UNIX flavors became the world of the day.
If you want to understand it and how it came about, there is a really great discussion of
all of this is Curt Schimmell's "UNIX Systems for Modern Architectures: Symmetric
Multiprocessing and Caching for Kernel Programmers"
On Tue, Dec 18, 2012 at 7:39 PM, Johnny Billquist <bqt at softjar.se> wrote:
On 2012-12-18 19:05, Clem Cole wrote:
Paul. given the time (late 1960's/early 70's) the prevailing page sizes were 64
/ 128 / 256 / 512 bytes which just happen to map to the sizes of blocks used in disk
controllers. 1/4/8 k pages were a few years in the future.
by the virtual address extension to the 11 ( aka 1975 's vax 11/780) DEC switched to
512 bytes.
That said as wnj would point out in the "fast vax" paper by 1979 512 bytes was
to small.
Um... The page size of the PDP-11 is 8K. :-)
Johnny
Clem
On Dec 18, 2012, at 9:45 AM, <Paul_Koning at Dell.com> wrote:
On Dec 17, 2012, at 6:01 PM, Johnny Billquist wrote:
On 2012-12-17 23:50, Boyanich, Alastair wrote:
...
2) Was 2.11BSD ever ported to other platforms? Given the age/era, I'm
curious about 8088/8086/NECv20/80286 given the banked memory models used
and looking at the 8088/8086 XENIX disassembly.
Nope. That would not have been 2BSD then. And since the PDP-11 don't even have banked
memory, it would probably cause some headaches to port 2BSD to something like 80286 or
other similar machines.
To make it clear - the PDP-11 have a very normal MMU with pages.
Semi-normal. It's rather unusual in that it has a paged MMU with page address
granularity different from the page size (64 bytes vs. 8k bytes). Most architectures
have those two match, that avoids an adder -- consider VAX or MIPS or Alpha.
paul
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt at softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol