Es gibt eigentlich 3 Konzepte, die Du hier durcheinanderbringst. Das erste und wichtigste ist das, was vom Betriebssystem bereitgestellt wird und was es macht, ist, den Speicherplatz für parallel laufende Anwendungen zu trennen. Und es wird als virtueller Speicher bezeichnet.
In virtuellen Speicher Systemen mappt das Betriebssystem die von Anwendungen gesehenen Speicheradressen auf den echten physikalischen Speicher. So kann der Speicherplatz für Anwendungen getrennt werden, damit sie niemals kollidieren.
Das zweite ist Sandboxing. Es ist jede Technik, die Du, der Programmierer, verwendest, um nicht vertrauenswürdigen Code auszuführen. Wenn Du als Programmierer das Betriebssystem schreibst, dann ist aus Deiner Sicht das von Dir geschriebene virtuelle Speichersystem ein Sandboxing-Mechanismus. Wenn Du als Programmierer einen Webbrowser schreibst, dann ist das virtuelle Speichersystem an sich kein Sandboxing-Mechanismus (unterschiedliche Perspektiven, verstehst Du). Stattdessen ist es ein potenzieller Mechanismus, um Dein Sandboxing für Browser-Plug-Ins zu implementieren. Google Chrome ist ein Beispiel für ein Programm, das den virtuellen Speichermechanismus des Betriebssystems verwendet, um seinen Sandboxing-Mechanismus zu implementieren.
Aber virtueller Speicher ist nicht der einzige Weg, um Sandboxing zu implementieren. Die tcl-Programmiersprache ermöglicht es beispielsweise, Unterinterpreten über den interp-Befehl zu instanziieren. Der Unterinterpreter wird häufig verwendet, um ein Sandbox zu implementieren, da er in einem separaten globalen Raum läuft. Aus Sicht des Betriebssystems laufen die zwei Interpreter im gleichen Speicherplatz in einem einzigen Prozess. Aber weil die beiden Interpreter, auf C-Ebene, Datenstrukturen nicht teilen (es sei denn, sie werden ausdrücklich programmiert), sind sie effektiv voneinander getrennt.
Nun, das dritte Konzept ist Virtualisierung. Was wiederum sowohl vom virtuellen Speicher als auch vom Sandboxing getrennt ist. Während der virtuelle Speicher ein Mechanismus ist, der aus Sicht des Betriebssystems Prozesse voneinander isoliert, ist die Virtualisierung ein Mechanismus, der Betriebssysteme voneinander isoliert. Beispiele für Software, die das macht, sind: Vmware, Parallels Desktop, Xen und die Kernel-Virtual-Machine.