Diese Grenze bei 2gb (irgendwelche Tricks mal nicht berücksichtigt) bezieht sich einzig auf einen Adressraum, d.h. ein einzelnes Programm kann nicht mehr als 2gb verwenden. Hat man allerdings mehrere Programme laufen, bekommt jedes seinen eigenen Adressraum und kann somit auch jeweils 2gb verwenden. Wenn man 2 Programme startet, die jeweils 2gb verbrauchen, kann man also durchaus 4gb ausnutzen. Wenn das Betriebssystem und der Prozessor mehr als 4gb Speicher adressieren kann, kann man auch noch sehr viel mehr Speicher ausnutzen, nur eben nicht für ein einzelnes Programm.
Daraus folgt dann, dass es theoretisch besser ist die Auslagerungsdatei abzuschalten statt sie in eine Ramdisk zu legen, denn wenn ein Programm auf Speicher zugreift, der ausgelagert wurde, kopiert das Betriebsystem den entsprechenden Block von der Platte (oder Ramdisk) wieder in den normalen Ram. Beim Ausschalten der Auslagerungsdatei würde es dagegen direkt auf den Speicher zugreifen und somit eine Kopieroperation sparen.
Da aber keiner genau weiß, wie Windows den Speicher genau verwaltet und welche Macken es in Verbindung mit PAE und anderen Optionen hat, kann es auch passieren, dass Auslagern auf Ramdisk evtl. schneller bzw. problemloser geht, was dann aber nur an einem schlechtem Design bzw. Implementierung von Windows liegt.
Also zur eigentlichen Frage: Wenn du einzelne Programme hast, die den Speicher brauchen, kannst du mit ein paar Tricksereien den Adressraum vergrößern, aber das muss seitens des Programmes explizit unterstützt werden (PAE oder generell 64-Bit Adressierung). Dabei ist eine 64-Bit Version vorzuziehen, weil es einfacher ein saubereres Design ergibt. Wenn du dagegen mehrere Programme benutzt, die einzeln mit ~2gb auskommen, kannst du auch ohne Unterstütztung der einzelnen Programme die vollen 4gb ausnutzen.