Examinei os rastreamentos xperf de vários usuários e aqui a função ntoskrnl.exe!SmKmStoreHelperWorker
do Kernel começa a alocar memória.
(Clique na imagem para ampliar)
Eu descobri isso em sysinternals .
Eu perguntei à Microsoft sobre isso e a resposta é que isso ocorre por design. Está relacionado à compactação da memória do sistema.
No anúncio do Windows 10 Build 10525, a Microsoft explicou um pouco :
No Windows 10, adicionamos um novo conceito no Gerenciador de Memória chamado armazenamento de compactação, que é uma coleção de páginas compactadas na memória. Isso significa que, quando o Gerenciador de Memória sente pressão na memória, ele comprime as páginas não utilizadas em vez de gravá-las no disco. Isso reduz a quantidade de memória usada por processo, permitindo que o Windows 10 mantenha mais aplicativos na memória física por vez. Isso também ajuda a fornecer melhor capacidade de resposta no Windows 10. O armazenamento de compactação fica no conjunto de trabalho do processo do sistema.Como o processo do sistema mantém o armazenamento na memória, seu conjunto de trabalho aumenta exatamente quando a memória está sendo disponibilizada para outros processos. Isso é visível no Gerenciador de tarefas e o motivo pelo qual o processo do sistema parece estar consumindo mais memória que as versões anteriores.
Então, em vez de gravar dados da memória no arquivo de paginação, ele os comprime. E essa memória compactada é mostrada no processo do sistema.
A Microsoft também postou mais detalhes no hub interno. Winbeta criou um artigo que inclui mais detalhes.
Aparentemente, o motivo disso aconteceu com a Microsoft optar por suspender os aplicativos UWP quando eles não estavam em primeiro plano, muito parecidos com o gerenciamento de alguns SOs de smartphones. Os usuários do Windows 8 entendiam (talvez não) que, se os aplicativos não estivessem na tela, eles não seriam executados até que o usuário voltasse para eles. A abordagem 'tudo ou nada' está sendo atualizada com o Windows 10, introduzindo uma camada entre o arquivo de paginação e a atividade de paginação normal. Agora, diante de problemas de pressão de memória, o MM determinará quais páginas devem ser movidas para a lista modificada em um processo chamado recorte.A lista modificada é uma lista secundária de arquivos de páginas que fazem backup de uma lista de arquivos de páginas em espera. Uma lista de backup é capturada caso a memória seja recuperada da lista de espera por outro processo, e o processo original procura sua página. Em vez de tudo ou nada, o Windows 10 MM compactará páginas não usadas em vez de gravá-las no disco. Com menos gravação, o resultado deve ser menos operações de disco - graças à compactação - e agora mais dados podem ser armazenados na memória.
De acordo com a equipe do Windows, “ Na prática, a memória compactada ocupa cerca de 40% do tamanho não compactado e, como resultado de um dispositivo típico executando uma carga de trabalho típica, o Windows 10 grava as páginas em disco apenas 50% com a mesma frequência que as versões anteriores do Windows. o sistema operacional. ”Se tudo correr conforme o planejado, os usuários do Windows poderão ter tempos de espera reduzidos para todos os dispositivos, além de um tempo de vida útil prolongado em sistemas que possuem discos rígidos baseados em flash .
Descompactação também é algo que o Windows 10 foi projetado para fazer bem. O Windows 10 está usando a combinação de parallelizability e leituras seqüenciais para produzir páginas na memória uma vez chamadas. A nova descompactação deve resultar em uma experiência mais rápida, pois o Windows 10 descomprime simultaneamente os dados e os lê em paralelo usando várias CPUs. As versões mais antigas do Windows podem parecer lentas por causa das taxas de transferência entre o disco.
A Microsoft também lançou um vídeo no canal9, que explica o recurso.
Compactação de memória no Windows 10 RTM
https://channel9.msdn.com/Blogs/Seth-Juarez/Memory-Compression-in-Windows-10-RTM
Neste vídeo, Mehmet Iyigun passou algum tempo discutindo por que o processo do sistema no Windows 10 está consumindo um pouco mais de memória e por que é uma coisa boa. Um processo que consome mais memória parece ruim - ou seja, até eu entender mais sobre gerenciamento de memória, paginação e falhas de página física / eletrônica. Acontece que o sistema operacional está fazendo algumas otimizações inteligentes que permitem que seus processos reduzam parte da memória, mas não necessariamente paginem em disco. A memória não apenas é preservada na RAM, mas também é compactada - tornando as falhas de página mais difíceis uma ocorrência mais rara. Os resultados devem proporcionar uma experiência mais rápida.
Nas versões TH2 mais recentes, a Microsoft atualizou a descrição no gerenciador de tarefas e agora também mostra que o processo SYSTEM hospeda o compressed memory
:
para evitar confusões sobre o uso "alto".
Na atualização de aniversário do Windows 10, lançada em agosto de 2016, a Microsoft extraiu a compactação para agora mostrada em um pseudo processo chamado Memory Compression
para não confundir mais os usuários por que o SYSTEM tem um uso de memória tão grande:
Mas parece que o Taskmgr não mostra esse processo, apenas o ProcessExplorer / ProcessHacker é capaz de mostrá-lo. O Taskmgr mostra apenas a quantidade de memória compactada na visão geral:
Se você passar o mouse sobre o gráfico de memória usado no Taskmgr, verá uma dica de ferramenta que mostra a quantidade de dados compactados.
Nesta demonstração, 388 MB são compactados para 122 MB, e 267 MB são salvos com a compactação.