Это именно то, что виртуальная память. Операционная система предоставляет каждой программе свое собственное частное адресное пространство. В действительности операционная система отвечает за сопоставление этих виртуальных адресов с физическим адресным пространством без уведомления приложения.
Как вы заметили, это означает, что два приложения могут иметь разные данные, находящиеся по одному виртуальному адресу в программе.
Подробнее о виртуальной памяти здесь .