Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

what can be the maximum size of Virtual memory?

I saw this question - What's the difference between "virtual memory" and "swap space"?

Here it is mentioned that virtual memory = RAM space + disk space - which the process can use.

So what can be the maximum size of Virtual memory ?

Is Max(Virtual Memory) = Disk space + RAM space - OS space (on RAM and Disk) ?

like image 866
Adon Smith Avatar asked Jan 14 '15 06:01

Adon Smith


2 Answers

Virtual memory is not limited by size of memory pointers in the machine, virtual memory limits are not the same as addressing memory space. More virtual memory than available in your pointer-based address space using paging can be addressed

Virtual memory upper limits are set by the OS: eg. 32-bit Windows the limit is 16TB, and on 64-bit Windows the limit is 256TB.

Max limitation is physical disk space.

To determine how much virtual memory you need, since the user's system contains the different amount of RAM, it is based on the system. By default, the OS will set the appropriate size for Virtual Memory. The default and appropriate size of Virtual Memory is:

<Amount_Of_System_Memory> * 1.5 = <Default_Appropriate_Size_Of_Virtual Memory> 

Personally speaking, to maintain the good overall system performance, you should be using the default size of actual size for Virtual Memory and the triple the value of the size of the main memory for the maximum size of Virtual Memory.

like image 93
RicoRicochet Avatar answered Sep 24 '22 02:09

RicoRicochet


Theoretical Limits:

The starting point is the size of a virtual address. Generally 32-bits give a theoretical maximum of 2^32 virtual addresses.

Some systems divide the virtual address space in to dedicated regions (e.g., user and system). The VAX divided the address space into 4 regions (user, stack, system, reserved/unusable 1/4th of the address space).

From there . . .

Configuration Limits:

Most systems may impose a limit on the size of the user page table. This may be per user or a system limit. That restricts the size of the address space.

From there . . .

Runtime Limits:

The size of the available paging areas limit the maximum virtual address space a point in time.

like image 44
user3344003 Avatar answered Sep 22 '22 02:09

user3344003