abstract virtual memory implementation