[TUHS] Unix & Memory Management Units (MMU)
jnc at mercury.lcs.mit.edu
Fri Dec 9 06:38:56 AEST 2016
> Dennis Ritchie's home pages have some info on this
Yeah, I'd read that - I was hoping for some actual technical info on the KS11,
(I'm assuming he has given the name there correctly, or if his memory has
dropped a bit - a thing which human memories do! :-) - since I've never been
able to find a single mention of it, including in the Spare Module Handbook,
which covers other Special Systems products).
> I looked for (but did not find) information on what ""the classical
> PDP-10 style "hi-seg" "low-seg" memory mapping unit"" was.
The best description is in the DECSystem-10 Hardware Reference Manual (mine is
EK-10/20-HR-001, but alas that version appears not to be online - I'll scan my
copy and put it online when I get a chance.) This version:
does appear to cover it: pp. 5-38 through 5-40 (pp. 352-354 of the PDF) for
the KA10, and pp. 5-15 to 5-30 (pp. 329-344) for the KI10.
The KA10 provided one (optionally) two base/bounds register pairs, where the
base register contains the location in real memory. With two pairs (the
second one applied to high user address space), the high part could be
write-protected, for sharing pure code.
The KI10 provided something similar to this, but more complicated; it included
paging, but also something called User 'Concealed', which allowed proprietary
subroutine packages to be used, while hidden from the rest of the user's code.
> Does anyone have an idea what PDP-10 MMU Dennis may have been referring
Almost certainly the KA10.
> Here my hypothesis would be that in kernel mode mapping was off, and
> that in user mode there were two segments, each with a base and limit
> into physical memory
Hard to say. Kernel mode might or might not have mapping, and User mode might
have provided one, or two, segments; the KA10 did have an option for
> this setup has an echo in how the later KL-11 MMU was used.
Sorry, what's a KL-11? The only 'KL11' I know of is the serial line board
(M780) which was the predecessor to the DL11.
More information about the TUHS