Como carregar o programa inteiro do arquivo de paginação rapidamente?

4

Às vezes, não uso alguns programas com alto uso de memória (por exemplo, máquina virtual com 2 GB de memória) por vários dias. Quando eu volto a ele, sua memória é na maior parte trocada no HDD. Quando tento trabalhar com este programa mais tarde, ele é carregado muito lentamente. Por exemplo, seu uso de memória física aumenta de 600 MB para 1100 MB com a velocidade de 250 KB / s e somente depois disso ele se torna bastante responsivo. Então, a lentidão é porque os dados são lidos de maneira não sequencial.

É possível carregar a memória do programa em um passo de leitura de HDD seqüencial ? Porque isso tem que levar apenas meio minuto.

Esta é uma máquina funcional, o SO Windows 7 x64, o tamanho da RAM é de 8 GB.

    
por Mikhail M 27.09.2013 / 09:15

2 respostas

1

Você deve fazer com que seu arquivo de paginação tenha um tamanho estático, para que ele não fragmente e facilite a leitura do disco rígido.

Um exemplo de arquivo de paginação de tamanho estático é mostrado abaixo.

    
por 27.09.2013 / 10:03
0

Você não pode alterar diretamente a maneira como a memória é trocada para o disco porque ela troca páginas e não programas. Você pode agilizar as coisas:

  1. Fazendo isso de maneira UNIX. Crie uma pequena partição para manter sua troca no início do disco.
  2. Restringir alterações de tamanho ao arquivo de troca.
  3. Instale um aplicativo de desfragmentação decente.

Ninguém também pode interferir na troca. Para mexer com a troca, você precisa ter privilégios máximos, pois a troca pode conter dados vitais, como chaves ou senhas. E mesmo se você tiver acesso ao swap você pode lê-lo por si mesmo, mas isso não lhe daria nenhum impulso porque o swap é isento de cache, portanto, a leitura de qualquer página carrega seu disco sem acelerar nada.

Existem outras soluções, como evitar o uso de swap por Processo / Checkpointing de aplicativos . Linux e BSD podem fazer isso. Alguns sistemas podem fazer isso naturalmente, como o DragonflyBSD, devido ao seu gerenciamento de memória e possibilidades de vinculação de objetos em tempo de execução. No entanto, eu duvido sobre a possibilidade de fazê-lo no Windows, você pode procurar por tópicos como this (pular o lixo sobre sinais, eles não fazem nada sobre pontos de verificação).

    
por 27.09.2013 / 11:02