Borrar la memoria de espera de Windows 7 mediante programación

Recientemente he tenido algunos problemas con mi sistema quedándose sin memoria. Tomó un tiempo descubrir lo que estaba pasando, pero finalmente determiné que cuando copié grandes cantidades de datos a mi máquina desde un recurso compartido de archivos, una cantidad equivalente de gran cantidad de memoria se puso en "Espera". El Administrador de tareas no parece mostrar el uso de la memoria en espera, pero el Monitor de recursos sí lo hace. Al principio solo pude recuperar la memoria reiniciando, pero finalmente descubrí que los chicos de SysInternals habían escrito una gran utilidad para liberar la memoria (enlace a continuación).

Aquí hay una breve reseña en la memoria de espera:

La lista de espera contiene páginas no modificadas que se han eliminado de los conjuntos de trabajo de proceso, lo que efectivamente hace que la lista de espera sea una caché. Si un proceso necesita una página que está en la lista de espera, el administrador de memoria devuelve inmediatamente la página a su conjunto de trabajo. Todas las páginas en la lista de espera están disponibles para solicitudes de asignación de memoria. Si un proceso solicita memoria, el administrador de memoria puede tomar una página de la lista de espera, inicializarla y asignarla al proceso de llamada. Esto se llama replantar una página. Las páginas en la lista de espera son a menudo de archivos usados ​​recientemente. Al mantener estas páginas en la lista de espera, el administrador de memoria reduce la necesidad de leer la información del disco. Las lecturas de disco pueden disminuir la capacidad de respuesta del sistema.

(Esto es del documento aquí:Guía de tamaño de memoria

Aquí hay un enlace a la herramienta:RAMMap

Mi pregunta es:

¿Alguien tiene una idea de cómo hacer esto programáticamente? Idealmente, me gustaría usar C #, pero agradecería cualquier sugerencia que pueda ayudarme a obtener una respuesta.

¡Gracias!

Respuestas a la pregunta(3)

Su respuesta a la pregunta