On 2010 Nov 5, at 2:46 PM, Chuck Guzis wrote:
On 5 Nov 2010 at 15:09, Brent Hilpert wrote:
By the nomenclature I grew up with or suffer
under, the term "virtual
memory" only applies in scenario 4, although "virtual addresses" could
be said to have been introduced in scenario 2.
My original definition was that "virtual memory" was the ability of a
system (hardware, software, whatever) to fool a program into thinking
that there was more memory present than was physically the case.
Johnny (and please forgive me if I got this wrong) tied it into the
ability to present each user with a address space, such that two
users could use the same address space, but have different data. Key
was the claim that a system with more physical memory than the user
could directly address still qualified as virtual memory.
I don't tie virtual memory into paging or even to
multi-tasking or
multi-user,
Agreed, .. I got carried away with building one scenario from the
previous - scenario 4 can stand apart without involving multiple
users/tasks, and so I think meets the def in your first paragraph.
although I'll concede that paging is a way
(albeit
rather simple-minded) to implement it. The Burroughs B5000 didn't
employ paging and yet I think few would argue that it did not
implement virtual memory (and quite possibly the earliest commercial
use of it).
I'm not familiar with the B5000 implementation (did I miss it in the
thread already?), but I did try to avoid restricting the def to that of
paging.