Limpar a memória do Windows 7 em espera por meio de programação

Recentemente, tive alguns problemas com meu sistema ficando sem memória. Demorou um pouco para descobrir o que estava acontecendo, mas acabei determinando que, quando copiava grandes quantidades de dados para minha máquina a partir de um compartilhamento de arquivos, uma quantidade equivalente de memória era colocada em "Espera". O Gerenciador de Tarefas não parece mostrar o uso da memória em espera, mas o Monitor de Recursos sim. No começo eu só conseguia recuperar a memória reiniciando, mas acabei descobrindo que os caras da SysInternals tinham escrito um ótimo utilitário para liberar a memória (link abaixo).

Aqui está uma breve sinopse na memória Standby:

A lista de espera contém páginas não modificadas que foram removidas dos conjuntos de trabalho do processo, o que efetivamente torna a lista de espera um cache. Se um processo precisar de uma página que esteja na lista de espera, o gerenciador de memória retornará imediatamente a página ao seu conjunto de trabalho. Todas as páginas na lista de espera estão disponíveis para solicitações de alocação de memória. Se um processo solicitar memória, o gerenciador de memória pode tirar uma página da lista de espera, inicializá-la e alocá-la ao processo de chamada. Isso é chamado de redirecionamento de uma página. As páginas na lista de espera geralmente são de arquivos usados ​​recentemente. Mantendo essas páginas na lista de espera, o gerenciador de memória reduz a necessidade de ler informações do disco. Leituras de disco podem diminuir a capacidade de resposta do sistema.

(isto é do documento aqui:Orientação de dimensionamento de memória

Aqui está um link para a ferramenta:RAMMap

Minha pergunta é:

Alguém tem uma idéia de como isso programaticamente? Idealmente, gostaria de usar o C #, mas agradeceria qualquer indicação que possa me ajudar a obter uma resposta.

Obrigado!