Distributed Virtual Memory Systems (DVMs) are extremely complex. Much work has been done on them. The problem we are currently facing is that there are no truly adaptable Distributed Virtual (Shared) Memory systems. As a result, lots of different (incompatible) DVMs systems have been implemented and none of them is good for all kinds of applications due to the lack of adaptability and to their inability to deal with the diversity of applications found in a distributed system. In recent years some approaches have dealt with this problem to some extent, like external pagers and application level virtual memory systems. However, they are not well suited for distributed systems and ignore the inherent hardware distribution in these systems. In this paper we describe the design and implementation of a distributed virtual memory system named Advice, which has been designed for maximum flexibility and adaptability. Advice runs out of the Off uKernel, providing a means through which distributed memory services can be dynamically adapted accordingly to the user needs.