Uso da memória por arquivos mapeados (Win7 64Bit)

3

Quando copiar arquivos de / para meu uso de memória HD3 de HD3 externo no Win7 sobe para 100% e permanece lá. Eu não tenho certeza se este é um problema causado por drivers com defeito ou não, mas eu já tenho a versão atual deles (controlador Etron USB3 em uma placa Gigabyte 990fxa) ..

Usando o RAMMap , torna-se óbvio que os arquivos a serem copiados são mapeados na memória . Clicando em

Empty > Empty System Working Set

parece corrigir temporariamente o problema (sem causar nenhum problema com o processo de cópia de arquivos), mas precisa ser feito a cada poucos segundos. Existe alguma maneira de agendar esta operação para acontecer 10 ou mais segundos por conta própria? Qual comando do sistema subjacente é o RAMMap usando? Ou, como alternativa, há alguma maneira de limitar a quantidade de arquivos mapeados de RAM que podem ser usados no Windows 7?

Eu sei que os arquivos mapeados normalmente seriam removidos da memória se outros programas precisassem do memmory, mas enquanto o uso memmory está em 100% o sistema começa a congelar por meio segundo ou mais toda vez que eu clico em qualquer coisa. conteúdo de memória não utilizado parece estar falhando aqui.

    
por Dexter 10.09.2012 / 19:46

2 respostas

4

Eu acho que isso é um problema complexo. Parte do problema é certamente os drivers, mas as outras partes são SyncToy / robocopy e Truecrypt (a unidade USB3 é criptografada) - o problema não se manifesta quando se copia arquivos com Ctrl + C / V. A RAM ainda é preenchida com o arquivo mapeado do contêiner Truecrypt, mas o uso não aparece no Gerenciador de Tarefas (somente no RAMMAP) e o sistema não congela.

Então, MS, Etron / Gigabyte e o pessoal do Truecrypt provavelmente todos merecem parte da culpa por isso ..

De qualquer forma, depois de anos de dor, eu finalmente encontrei uma solução simples para o problema, graças a isso outro Superuser thread sobre o Windows estragar com seu filecache, levando a este discussão no fórum da Sysinternals, finalmente levando alguém a criar um ferramenta (" SetSystemFileCacheSize ") que essencialmente apenas chama a API do Windows para acabar com esse pesadelo. (.. muito para o Windows funcionando como planejado @ billc.cn)

O uso é bastante simples: SetSystemFileCacheSize off 2048 conserta isso para mim. O primeiro argumento é o limite inferior para o cache, segundo argumento, o limite superior do tamanho do cache. Dependendo da quantidade de memória que se tem, outros valores podem fazer mais sentido para eles - veja o link para mais detalhes. Há também uma versão x64 para valores além de 4G.

    
por 03.03.2014 / 01:50
1
por 23.11.2012 / 14:10