Como tornar o Windows 7 menos agressivo no cache de memória?

16

Eu observei recentemente que o Windows 7 em minha máquina está reclamando da falta de memória e que eu deveria fechar alguns programas. Em seguida, normalmente apontaria um programa em execução que possui um vazamento de memória e cresceu bastante. No entanto, geralmente esses programas começam com 20MB de uso de RAM e somente depois de executar o programa entre 12 e 24 horas eles crescem para, no máximo, 200MB de uso de RAM. Eu nunca tenho mais do que três desses programas rodando ao mesmo tempo, então eu uso 600MB de RAM no máximo que eu já vi dos meus programas em execução.

Estou executando o Windows 7 x64 em uma máquina com 4 GB de RAM. No começo eu realmente esqueci isso e apenas reiniciar os programas quando o Windows reclamou, mas agora que me lembrei, o fato de que o Windows está reclamando de mim usando 600MB de RAM (menos de 2GB, mesmo se você incluir memória usada pelo próprio sistema operacional) parecia estranho . Então eu puxei a janela do processo do sistema para ver meu uso total de memória dos meus processos e processos do sistema que foram listados. Ele somaram mais de 700MB, então eu ainda estava confuso. Então fui ao Monitor de Recursos e abri a guia Memória. Lá acho que encontrei minha resposta. Ele observou que eu estava usando apenas 33% da minha memória RAM. No entanto, na barra de alocação de recursos Physical Memory, a seção Modified tinha até 2,3 GB, a seção Standby até 540 MB, a seção Free estava abaixo de 20 MB, a memória cache listada em 2,8 GB e a memória Available listada em 550MB. (Esses valores são ligeiramente arredondados, é claro, já que você está constantemente mudando enquanto eu escrevo isso.)

Então, aparentemente, o Windows 7 está usando mais memória do que eu. Eu fiz, em algum momento no passado, fazer algumas modificações no menu de serviços do Windows instalado, mas isso foi apenas para desabilitar certos serviços de hospedagem, já que eu não queria fazer nenhum compartilhamento de mídia, para habilitar o cliente Telnet e remover Internet Explorer, mas poderia ser minha culpa. Existe alguma maneira de fazer o Windows não fazer isso ou, pelo menos, armazenar em cache muito menos agressivamente, então eu paro de receber esses avisos "Low on Memory"?

    
por grg-n-sox 09.08.2010 / 17:37

5 respostas

10

A memória Standby não é um problema, é considerada "livre" e será realocada a pedido - apenas contém memória usada recentemente por programas, mas agora está liberada. Se outro programa solicitar mais memória do que "Livre", o sistema deverá alocar a partir do conjunto de Espera (desde que a memória de "espera" não esteja realmente em uso no momento).

O excesso de memória modificada é um problema seu, porque não pode ser realocado facilmente. Consulte aqui . É provável que seja causado por um vazamento de memória (que parece corresponder ao seu primeiro parágrafo - quais programas estão vazando?) Ou um arquivo de paginação sendo muito pequeno (o tamanho do seu arquivo de página é fixo ou desativado?).

    
por 09.08.2010 / 19:02
4

O cache preventivo do SuperFetch não é problema seu. O Windows 7 usará o máximo de memória sobressalente possível para armazenar em cache preventivamente o que você acha que precisará em seguida. Se acertar, você economizará um pouco de tempo e seus aplicativos parecerão mais rápidos e mais responsivos.

Se ele errar, e você precisar de outros dados, o Superfetch irá liberar parte da memória que possui, para permitir que você carregue os dados que realmente precisa. Consulte: link

Se você está tendo problemas de 'pouca memória', não será por causa do SuperFetch - pois ele irá liberar a quantidade de memória necessária se os aplicativos exigirem isso. Você memória disponível (550MB) é o que está sendo usado pelo superfetch, então claramente você não ficou sem memória ainda. Mesmo quando você usa toda a sua memória RAM, sua máquina vai cair na memória virtual, mas você vai querer evitar isso por causa do impacto no desempenho ...

Por isso, sugere que você está com problemas de 'baixa memória' devido a problemas em outros lugares - talvez um dos seus aplicativos com vazamento esteja consumindo (e não renunciando) outros tipos de recursos ...

De qualquer maneira, a solução é mais provável de ser encontrada lidando com seus aplicativos com erros, do que mexendo no SuperFetch ...

    
por 09.08.2010 / 19:01
0

Como você não acha que o problema está sendo causado por um programa com vazamento de memória, a alternativa seria aumentar o tamanho do arquivo de página.

Embora o arquivo de paginação não seja sua memória principal, ele permitirá que o sistema operacional troque mais dados para o disco rígido e, esperamos, pare a mensagem "memória insuficiente". A única outra opção seria remover o programa associado ao processo que tem a enorme impressão de 13 GB, embora eu não tenha ideia de qual programa precisaria de tantas páginas de memória, a menos que fosse um software de renderização 3D ou de jogos de computador.

    
por 13.12.2011 / 12:21
0

Da minha experiência A falta de memória em modo de espera é um problema real. Por exemplo, se eu executar o Snagit no modo rolling-windows para um artigo extenso, haverá partes do artigo que não foram capturadas quando executadas apenas na memória em espera. Em qualquer caso, acho que meu computador é executado lento na memória de espera.

Para resolver o problema, uso o otimizador de memória dos utilitários Glary gratuitos. Meu computador tem 6 GB de memória. Quando eu inicializo, tenho cerca de 2 GIG de memória em uso, 2 GIG de stand-by e 2 GIG do que eu chamo de memória livre grátis de acordo com o Monitor de Recursos do Windows. Dentro de meio dia, mais ou menos, toda a minha memória Free-Free se transformaria em memória Standby, quer eu estivesse usando o computador ou não. Agora eu tenho o otimizador de memória Glary Utilities iniciar com o Windows e pode manter meu computador funcionando indefinidamente com o total de 2 GB de memória livre-livre disponível.

Toda vez que eu sento para outra sessão, primeiro clico duas vezes no ícone da bandeja do otimizador de memória e faço uma otimização; pedindo para o meu original 2 GIG de memória livre para ser liberado. Eu posso pedir mais, mas esse é o máximo que vai liberar independentemente. Demora cerca de 30 segundos para o otimizador concluir o que é muito menos do que o necessário para uma reinicialização. Ele tem um modo de otimização automática, mas não consegui descobrir como fazer isso funcionar.

    
por 18.07.2013 / 05:17
-1

Para resolver este problema

Execute start-run-msconfig e, em seguida, ative e remova a marcação de "Windows driver foundation". clique em ok e reinicie a máquina.

Lembre-se: apenas as etapas acima mencionadas resolverão esse problema. Se você tiver desativado a partir de services.msc, ainda estará ativo no momento da inicialização do sistema operacional e bloqueará sua memória.

Para verificar isso, use a ferramenta

    
por 12.10.2013 / 13:50