On 29 Oct 2010 at 13:39, Ethan Dicks wrote:
That all depends. Back in the day, what we did was
not demand-paged
virtual memory (something supported natively on the VAX and the 68010
(but not effectively on the 68000) - some architectures have memory
management hardware that can "tell" if a reference is about to hit a
patch of virtual addresses that don't have physical memory mapped to
them and invoke some OS-specific routine to either allocate or pull
from storage what needs to be there and resume the instigating
instruction as if nothing happened (which is part of what
distinguishes the 68010 from the 68000 - instruction restart).
I suppose that it's a matter of who you're asking. There were a
number of interpretive compilers (e.g. JRT Pascal) on the x80 that
claimed to implement virtual memory.
And COBOL had, starting very early, to segment code by grouping
paragraphs into sections that could be read in as needed. Not data,
however.
On the 8-bit x80 systems, there were a couple of multi-user
implemenatons that provided for a page-mapping RAM with the ability
to interrupt on "page not present", in effect, giving each user his
own address space and the ability to page to disk. I don't know if
that counts or not--one could also view it as glorified
bankswitching.
--Chuck