É possível sugerir que o Windows traga completamente um processo de swap

13

É possível sugerir ao gerenciador de memória virtual do Windows para remover um processo específico da troca?

A situação em que frequentemente me encontro normalmente é usar cerca de 50% da minha RAM para todos os programas normais, sendo um deles, em particular, um IDE para um destino incorporado, junto com seu depurador associado.

Então, deixo um processo de passar fome - por exemplo, o wireshark ou algo que está acumulando dados ao longo de um fim de semana, tudo é trocado - como deveriam. Depois que o grande processo é concluído, a maioria dos processos é deixada em swap.

Em seguida, as pausas esporádicas para trocar o processo novamente causam problemas com o depurador, presumivelmente devido a problemas de temporização nas comunicações entre o IDE e o depurador de hardware. Portanto, o controle do dispositivo de destino pode ser esporádico até que tentativas suficientes tenham trazido os dados de depuração no IDE para fora da troca.

    
por Greg 28.05.2013 / 09:57

2 respostas

1

O KerrekSB desenvolveu uma ferramenta especial para este propósito:

link

Ele está disponível no GiTHUB com binários: link

Durante a execução, você recebe muitos erros "Falha ao ler um byte de 0x .... 000, erro 299 (0 bytes lidos)", mas isso não é um problema, a ferramenta funciona muito bem.

    
por 19.12.2013 / 12:00
1

Você pode usar o Process Lasso para dar um processo a Prioridade da página de memória :

Beginning with Windows Vista, each memory page has a priority ranging from 0 to 7. The Standby List is divided into eight lists that each handle pages of a different priority. When the Memory Manager wants to take a page from the Standby List, it takes pages from the low-priority lists first. "

Process Lasso can help manage memory priorities by allowing persistent memory priorities to be set for processes, so that their virtual memory pages are set to a specific priority each time run.

O Process Lasso tem duas versões: livre e comercial (US $ 18,95 com teste).

    
por 12.12.2013 / 21:53