Não, a taxa de commit não é a "demanda atual de RAM". É a demanda atual de espaço de endereço virtual suportado pelo arquivo de paginação (total em todos os processos, além de algumas alocações de todo o sistema).
É muito comum que apenas uma parte disso tenha sido referenciada. Seria completamente bobo amarrar a RAM para partes do espaço de endereço virtual que ainda não foram referenciadas (a menos que você tenha alguma forma de saber o que será mencionado no futuro).
A alocação de RAM ao cache, por outro lado, é feita porque há boas evidências de que as coisas armazenadas em cache provavelmente serão necessárias novamente em breve (na maioria dos casos, a evidência é que elas foram referenciadas recentemente). Então, por que não mantê-lo na RAM?
Além disso: a RAM não é "alocada" para o cache em qualquer tipo de base permanente. Se outras coisas precisarem de mais RAM, a RAM do cache será reduzida, se necessário, para acomodá-los.
Quase nunca há RAM suficiente para que os espaços de endereço virtuais de todos os processos sejam mantidos na RAM. Assim, todo sistema operacional de memória virtual está jogando um jogo de equilíbrio, tentando manter as coisas mais interessantes na RAM. Longa experiência tem mostrado que o uso de algumas das RAM para vários tipos de cache é uma boa otimização. Certamente é melhor do que usar algumas delas para processos privados. que nunca foi referenciado e nunca pode ser referenciado.