[Info-vax] OpenVMS I64 V8.1 "Evaluation Release"?

glen herrmannsfeldt gah at ugcs.caltech.edu
Wed Mar 21 14:00:00 EDT 2012


Johnny Billquist <bqt at softjar.se> wrote:
> My god, I can hardly believe my eyes when I read this.

> Have none of you the slightest clue about the difference between virtual 
> address and physical address?

> Even today, there is no CPU that can address 64 bit physical address space.
> Is that relevant? No. You've been able to address 64 bits of virtual 
> address space in your programs the whole time, independent of the 
> physical address capabilities. And independent of the actual physical 
> ram existing on the machine.

Well, if you put it that way, IA32 has a 45 bit virtual address
space, which should have been plenty big enough. That is, 16 bit
segment selectors minus the local/global bit and ring bits,
and 32 bit offsets.

Also, many IA32 processors have a 36 bit physical address, again
plenty big enough for most people even now.

> To read an argument that it was pointless to have machines with 64-bit 
> addressing since there were no existing machines that shipped with more 
> than 2 GB of RAM anyway is about as stupid an argument as I've ever 
> seen. That is just showing that you have not understood computers at all.

Having a large virtual address space is nice, but you can't 
practically run programs using (not just allocating, but actually
referencing) 8, 16, or 32 times the physical address space.

The rule for many years, and maybe still not so far off, is that
the swap space should be twice the physical memory size. (Also,
that was when memory was allocated out of backing store. Most now
don't require that.)

If you consider that there are other things (like the OS, other
programs and disk buffers) using physical memory, you really 
won't want a single program to use more than 4GB virtual on 
a machine with 4GB real memory. Without virtual memory, you 
would probably be limited to about 3GB on a 4GB machine.

-- glen



More information about the Info-vax mailing list