Возможный дубликат:
Mac OS X: что использует моя «активная» память?

Мой монитор активности показывает 6 ГБ активной памяти:

Скриншот монитора активности

Тем не менее, мой столбец Real Memory не показывает ничего подобного:

(Ниже еще один экран, все меньше.)

Резервное копирование, вывод этой команды (которая суммирует использование памяти каждого запущенного процесса):

ps -axm -o "rss,comm" | awk 'BEGIN { s=0;}; {s=s+$1;}; END { printf("%.2f GB\n", (s/1024.0/1024));}'

Дает 4.09GB , поэтому мне кажется, что 2 ГБ утекло. Иногда я вижу гораздо более широкие диапазоны, например, 2 или 3 ГБ от команды ps и целых 7 или 8 ГБ активного использования, о которых сообщает Activity Monitor.

Я пытался завершить все и войти в систему моего пользователя и снова войти, но Активное использование все еще намного выше, чем оперативная память, сообщаемая ps и каждым процессом в Activity Monitor. Эти 2 ГБ активной памяти практически невозможно восстановить, пока я не перезагружусь. Есть ли способ а) обнаружить что протекает и б) вернуть его обратно?

Спасибо

1 ответ1

0

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

Свободная память необходима только в очень ограниченных обстоятельствах. И ваша система имеет более чем достаточно свободной памяти, чтобы справиться с этим.

Посмотрите этот ответ для более подробного объяснения того, почему вам нужно как можно меньше свободной оперативной памяти. Особенно эта часть:

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

Это не похоже на [на машине с 8 ГБ], если вы используете 4 ГБ, теперь вы можете использовать 12 ГБ позже. Если вы используете 7 ГБ сейчас, все, что происходит, это то, что 1 ГБ пропал впустую. Вам нужно как можно меньше свободной оперативной памяти, чтобы ваша система могла получить максимальную выгоду от имеющейся оперативной памяти. Вы не можете сохранить RAM. Возможность использовать эту оперативную память сейчас должна использоваться сейчас, или она навсегда потеряна.

Кроме того, посмотрите этот ответ для получения дополнительной информации о специфике "активной памяти" в OSX.

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