2

Мой компьютер работает под управлением Windows XP и имеет только 1 ГБ оперативной памяти.

После запуска некоторых крупных приложений (таких как Eclipse и SQL Developer) компьютер значительно замедляется. Очевидным симптомом этого является то, что указатель мыши становится менее отзывчивым, и требуется 1-2 секунды, чтобы достичь точки, которой я хочу.

Однако после того, как я закрыл эти приложения, компьютер все еще работает медленно, и мне нужно перезагрузить компьютер, чтобы он снова стал отзывчивым. Разве он не может вернуть себе память?

5 ответов5

6

Вероятно, ваш компьютер еще не освободил память. Вы, вероятно, заметите, что во время переключения между виртуальной и физической памятью происходит много дисковой активности. Для освобождения памяти может потребоваться некоторое время, но один из способов подтвердить ее освобождение - использование диспетчера задач. Запустите диспетчер задач и перейдите на вкладку процессов . Вы можете сортировать по любому из столбцов в порядке возрастания и убывания.

То, на что вы хотите обратить внимание - это «Память». Если вы сортируете, чтобы показать процессы, использующие наибольшее количество памяти, это даст вам представление о том, какой из них использует память. Вы также можете использовать меню «Вид» в диспетчере задач, чтобы выбрать столбцы для отображения (например, Размер ВМ). Если вы видите процесс, который часто использует Mem Usage и VM Size, вы можете быть достаточно уверены, что это может замедлить работу вашей машины. Если это не критически важная услуга, вы можете прервать процесс и посмотреть, поможет ли это.

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

2

Файл подкачки

Где ваш файл подкачки?

Я бы порекомендовал поставить его на выделенный том, чтобы сделать его быстрее. В идеале вы должны поместить его на физический диск, отличный от того, на котором установлена ОС (при условии, что он используется реже, чем диск с ОС). Если это невозможно, то, по крайней мере, поместите его в отдельный раздел (как можно ближе к началу диска), чтобы он оставался не фрагментированным.

Когда вы минимизируете или простаиваете программу некоторое время, Windows выгружает свою память в файл подкачки на диске. Когда вы закрываете его, эта память должна быть освобождена, даже если она не находится в ОЗУ (в этом случае она должна быть помечена как свободная в файле подкачки).

Оптимизируя файл подкачки, когда вы закроете свои приложения для работы с большим объемом памяти, ОС сможет получать доступ к памяти других программ за гораздо более разумное время.

Просто занят

В противном случае терпение является добродетелью. (У меня было много раз - например, кодирование видео с программой, установленной на приоритет в реальном времени!)- когда система была настолько захвачена чем-то, что мышь не только зависала, но клавиатура даже зависала, так что * - Индикаторы блокировки не меняются, а внутренний динамик подает звуковой сигнал. В большинстве случаев, если это не полное зависание при сбое, ожидание достаточно долгое время в конечном итоге исправит это - при условии, что у меня хватит терпения ждать.)

ЦПУ

Как я уже сказал в своем первом комментарии. Я хотел бы изучить использование процессора. Несмотря на то, что при освобождении памяти дисковод работает нормально, он редко вызывает заикание мыши. Обычно это происходит из-за высокоприоритетного процесса с использованием большого количества процессоров. Изучите диспетчер задач (или Process Explorer, поскольку у него есть граф трассировки), чтобы выяснить, какой процесс использует процессор, чтобы помочь сузить проблему.

Если процесс, который вращает центральный процессор, является приложением программирования (то есть приложение закрыто, но процесс все еще не завершен, чтобы завершить очистку), тогда можно использовать TaskMan (или ProcExp), чтобы установить его на низкий уровень приоритета, так что Вы можете продолжать использовать свою систему, ожидая ее завершения.

Дроссельный

Мне также приходит в голову, что еще одна вещь, которая может быть причиной проблемы - это дросселирование процессора. После закрытия большой программы, такой как среда разработки, система проводит большую очистку, поэтому следите за загрузкой процессора и температурой. Использует ли он много циклов во время процесса очистки? Температура повышается? Возможно, материнская плата настроена на дросселирование процессора при достижении определенной температуры, что приводит к замедлению работы всей системы, включая чувствительность курсора мыши и клавиатуры.

1

Я согласен с замечанием Synetech о проверке использования процессора больше, чем использования памяти.

Кстати, отличная статья Марка Руссиновича о том, что «оптимизаторы памяти Hoax дают ложные обещания»

http://www.windowsitpro.com/article/internals-and-architecture/the-memory-optimization-hoax

А теперь предложенный инструмент, чтобы узнать, что работает на вашем ПК и сколько ресурсов занимает каждый процесс:

Process Explorer http://technet.microsoft.com/en-us/sysinternals/bb896653

[от того же Марка Руссиновича ...] ;-)

Надеюсь, это поможет. Дайте нам знать.

1

Замедление вызвано сжатием кэшей системы. Когда приложениям требуются большие объемы памяти, система уменьшает объем памяти, выделяемый для "менее важных" применений, таких как кэш страниц. Когда память освобождается, в кеше страниц все еще нет большинства страниц, в которых нуждается система, и все они должны давать сбой.

Однако даже в наихудшем случае это займет не более 30 секунд, а на самом деле это не займет более десяти секунд. Вероятно, это время, когда указатель мыши работает медленно.

Во-первых, позвольте мне сказать, что "оптимизатор ОЗУ" ухудшит ситуацию. Ваши проблемы с производительностью вызваны небольшим размером кэша, а оптимизаторы ОЗУ по своей конструкции минимизируют размер кэша.

Дело в том, что все должно быстро вернуться в нормальное состояние, как только кеш страниц снова заполнится. Итак, вопрос в том, почему это все еще медленно? Первое, что нужно проверить, это использование процессора - процессор возвращается в нормальное состояние? Второе, что нужно проверить, - это использование памяти. Существуют ли процессы, использующие гораздо больший объем памяти, чем обычно?

Я держу пари, что это ошибка или утечка. Это единственные вещи, которые не позволили бы системе вернуться к нормальной жизни после этого.

0

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

Не совсем уверен, почему это происходит - освобожденное хранилище не нужно выгружать. Но я подозреваю, что "особенность" схемы виртуальной памяти Microsoft как-то связана с этим.

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