4

Иногда я не использую некоторые программы с высоким использованием памяти (например, виртуальную машину с 2 ГБ памяти) в течение нескольких дней. Когда я возвращаюсь к нему, его память в основном обменивается на жесткий диск. Когда я пытаюсь работать с этой программой позже, она загружается очень медленно. Например, его физическая память увеличивается с 600 МБ до 1100 МБ со скоростью 250 КБ / с, и только после этого она становится довольно отзывчивой. Таким образом, замедление происходит потому, что данные читаются не последовательно.

Можно ли загрузить память программы за один проход чтения жесткого диска? Потому что это займет всего полминуты.

Это рабочая машина, ОС Windows 7 x64, объем оперативной памяти составляет 8 ГБ.

2 ответа2

1

Вы должны сделать ваш файл подкачки статичным, чтобы он не фрагментировался и облегчал чтение с жесткого диска.

Пример файла подкачки статического размера показан ниже.

0

Вы не можете напрямую изменить способ подкачки памяти на диск, потому что он заменяет страницы, а не программы. Вы можете сделать вещи быстрее:

  1. Делать это UNIX способом. Создайте небольшой раздел для хранения раздела подкачки в начале диска.
  2. Ограничить изменение размера файла подкачки.
  3. Установите достойное приложение для дефрагментации.

Никто не может помешать обмену. Чтобы связываться со свопом, вам нужно иметь максимальные привилегии, потому что своп может содержать любые важные данные, такие как ключи или пароли. И даже если у вас есть доступ к свопу, вы можете прочитать его самостоятельно, но это не даст вам никакого ускорения, так как своп освобождается от кеширования, поэтому чтение любых страниц просто загружает ваш диск, ничего не ускоряя.

Существуют и другие решения, такие как отказ от использования свопинга по контрольным точкам процесса / приложения. Linux и BSD могут сделать это. Некоторые системы могут делать это естественным образом, например, DragonflyBSD, из-за возможностей управления памятью и связывания объектов во время выполнения. Однако я сомневаюсь , что о возможности сделать это на Windows, вы можете посмотреть на нити , как это (пропустить нежелательный о сигналах, они ничего не знаю о контрольно - пропускных пунктах не делать).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .