I understand your point here and you are--of course--correct, yet one
hesitates to term Tops-20 (TWENEX ) paging as being a variant of the BBN
pager (or better TENEX).
The BBN pager was /far/ more capable then the both the KI and KL
pagers.? The KL pager was more capable than the KI, but this didn't put
it quite in the same league as the BBN pager in terms of functionality.
This is most visible in what RPACS% (Read PAge ACess) returns (or fails
to return) and what SPACS% (Set PAge ACess) does (or fails to do).? On
the KL, the only access bit you can set is whether the page is writable
(this includes Copy-On-Write).? You cannot:
1. Clear all bits and thus set a page 'No Access'; it will still be there
2. Set a page Write-only
3. Set a page Execute-Only
Case 1. is necessary for implementing guard pages which are (IMHO) one
of the very most effective hardware based debugging tools around.? You
really want "Explode on Reference" to catch stray reads AND stores.? If
you whack the page, then all that happens the next time you touch it is
it 're-materializes'.
Case 2 is great for increasing the security of certain communications
paradigms.
For 1., you can solve it in two convoluted ways. First, you can hook the
page creation interrupt and determine whether you are creating something
you ought not.? You can also actually implement "Explode on Reference"
by mapping 1+ the last page of a locked file.? If you then try to touch
that page, it will fail because creating the page in memory involves
creating it in the (locked) backing store.? I discovered this by mistake
when looking for a guard page implementation for my FTP server.
2. Has no real solution, but paged mode IPCF% is probably good enough.
3. is partly solved by setting the file execute only, but this is highly
restricted and does not work if a program is multi-process (I.E.,
forks).? Thus, I can not use it in the FTP server nor can it be used in
the Tops-20 TELNET client.
BBN repeatedly tried to get DEC to take their pager, but DEC never went
for it.? I don't remember what was designed for the Jupiter or was
implemented for the SC-40 or TOAD.
------------------------------------------------------------------------
On 10/18/21 10:03 PM, Robert Armstrong wrote:
T10 in the last incarnation(s) could use the KL10
paging
Umm.. TOPS-10 could always use the "KL10 paging". TOPS10 ran on the KL
from day 1.
The thing is, the KL had different microcode for TOPS-10 paging and TOPS-20 paging.
The hardware didn't change. TOPS-10 paging was the same as the KL10 paging, which was
implemented in hardware. TOPS-20 paging (or rather, TWENEX paging) was some variant of
the BBN pager that was originally attached to a KA10 way back when.
Bob