Isso é por design intencional. A memória é um recurso "use or or lose it". Você não pode salvá-lo para mais tarde. Portanto, os sistemas operacionais modernos tentam o máximo que podem para usar o máximo de memória possível.
Se você está pensando: "Eu quero essa memória livre agora para que eu possa usá-la mais tarde", pense um pouco mais. Você pode usar essa memória agora e usá-lo mais tarde. Não há trato doloroso aqui.
Digamos, por exemplo, que você execute um programa e termine. O sistema operacional pode manter esse programa na memória caso você execute o programa novamente. Se isso acontecer, nenhum dano é feito. Se o programa não for executado novamente, a memória pode ser descartada mais tarde. Mas se você executar o programa novamente, a E / S será salva, pois não precisa ser lida do disco. Portanto, o sistema operacional prefere deixar cópias de programas que foram executadas recentemente na memória do que ter essa memória livre. Esta memória, claro, não está associada a nenhum processo.