Talk:KS11 Memory Protection and Relocation option

From Computer History Wiki
Revision as of 18:56, 8 June 2023 by Larsbrinkhoff (talk | contribs) (From Clem Cole; also not much.)
Jump to: navigation, search

Ken Thompson's memory of it

Ken was nice enough to respond to a query asking for help from old-timers; here is his brief reply:

i did all the programming for it.
it was based on the pdp-10 memory map. it had 2 pages growing toward each other and some horse crap to let the har[d]ware multiply unit shine through.
sorry, i dont remember too many details.

which, alas, does not really add much to what little we know. Jnc (talk) 04:16, 17 May 2023 (CEST)

And from Bob Supnik

Bob's reply to my query:

The KS11 created a PDP-10 (KA) style memory management system for the 11/20: that is, high-segment (instructions, in theory, and shareable, in theory) and low-segment (data). It did create a user vs monitor mode. It [did] support memory expansion, although that may have required a separate option, the MX11. It did not, IIRC, do IO mapping (IO scatter/gather). Because the high and low segments were physically contiguous, scatter/gather wasn't needed, only a "simple" relocation and bounds check on DMA transfers.
The high/low segmentation wasn't automatic; that is, it didn't function like I/D space in official memory management. Rather, the software writer had to organize a program into two .psects - a "pure" instruction segment and an "impure" data segment. The stack was always impure; the 11/20 didn't have the MARK instruction to screw that up.

So still some important open questions, but this adds a bit more. Jnc (talk) 04:41, 17 May 2023 (CEST)

And my axe

Clem Cole wrote me:

One of my old friends from DEC that worked in CSS, validated our belief that KS11 is supposed to have been modeled after the KA10 MMU.