Difference between revisions of "Talk:KS11 Memory Protection and Relocation option"
From Computer History Wiki
(Ken Thompson's memory of it) |
(→And from Bob Supnik: new section) |
||
Line 7: | Line 7: | ||
: sorry, i dont remember too many details. | : sorry, i dont remember too many details. | ||
which, alas, does not really add much to what little we know. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 04:16, 17 May 2023 (CEST) | which, alas, does not really add much to what little we know. [[User:Jnc|Jnc]] ([[User talk: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. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 04:41, 17 May 2023 (CEST) |
Revision as of 03:41, 17 May 2023
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)