[comp.os.minix] VM on PDP-11

steve@basser.oz (Stephen Russell) (09/27/87)

In article <819@sugar.UUCP> peter@sugar.UUCP (Peter da Silva) writes:
>In article <1745@ncr-sd>, greg@ncr-sd (Greg Noel) writes:
>> In article <8490@think.UUCP> rlk@THINK.COM writes:
>> >....  The PDP11 didn't have virtual memory either,
>> >if my memory serves me.  ....
>> 
>> At the risk of re-opening an old debate, the PDP-11 \does/ have virtual
>> memory.  It's just that, for various technical reasons, the original Unix
>> implementation for it chose to use swapping instead of paging as its virtual
>> memory technique.
>
>And neither did any other operating system for the PDP-11 (RSX, RSTS, RT-11),
>probably because it didn't in fact have the capability of supporting VM.

Well, you're both right. SOME PDP-11's do provide support for VM, if
your main criteria is the ability to restart an instruction after a page
fault. The MMR1 register (017777574) tracks the effects of auto-incs and
decs of registers, but is not present in many versions of the PDP-11.
However, given the presence of MMR1 and MMR2 (PC of faulting instruction),
you can implement VM quite easily.

However, the main limitations for VM are a small number (8 or 16) of
large (8K) pages, and no hardware reference bit (but neither does a VAX :-).
Also, your VM on a PDP-11 is usually smaller than your physical
memory, which is contrary to normal expectations.

>Why do you think DEC developed the Virtual Address Extension (VAX) in the
>first place?
>

To break the 128K boundary? I suspect they really wanted a 32 bitter,
which almost forces you to adopt full VM.

pcm@ogcvax.UUCP (Phil Miller) (09/29/87)

When I went to read my comp.os.minix articles today, 4 of the 7 articles
were about virtual memory on the PDP-11.  MUST this vacuous debate continue
within comp.os.minix?  Flames to me directly, please -- enough comp.os.minix
space has already been wasted on this topic.