PDP-11 pages/segments/etc (Was: PDP-12 at the RICM)
Jerome H. Fine
jhfinedp3k at compsys.to
Tue Jul 14 22:55:17 CDT 2015
>Johnny Billquist wrote:
> >On 2015-07-14 19:52, Noel Chiappa wrote:
>> > On Jul 13, 2015, at 8:52 PM, Johnny Billquist <bqt at
>> update.uu.se> wrote:
>> > ??? What segments??? The PDP-11 have a plain simple page
>> table. No
>> > segments anywhere in sight. And each page is 8K.
>> I know the processor handbook calls them 'pages', but I can't think
>> of any
>> other machine where pages are variable size. (I know of a couple
>> which offer
>> _two_ page sizes, but none that have a field per page which specifies
>> length of the page.)
> While the pages are variable in length, each page starts at an 8K
> virtual address boundary. And each page has a page table entry.
> Oh, and actually, the pages are not entirely variable in size. They
> can only go up to 8K, which is where the next page starts.
PLUS, as far as I remember, every page must be an exact multiple
of 64 bytes and the starting address of the page in physical memory
must be on a 64 byte boundary. I believe that is actually a hardware
restriction since the address of a page within the MMU is the physical
address of the page divided by 64 decimal (100 octal). In addition,
the length of the page within the MMU is the total number of bytes
again divided by 64 decimal (100 octal). By the way, pages are
allowed to expand either upward or downward as required.
> SO it's purely that the pages are not as fixed and inflexible as on
> some other machines, but each page is totally independent of the other
> pages, and each works the same way, and is strictly mapped from the
> virtual address.
It is probably possible for the hardware to support demand paging,
but I don't know of any DEC operating system for the PDP-11
which does. The usual situation is for the job to request the memory
which it requires, then ask to operating system to MAP the physical
memory to the correct addresses as the memory is needed. With
4 MB of physical memory in total and often only 64 KB in use at
any one time, there is usually sufficient memory to work with.
More information about the cctech