1

Я видел использование памяти с помощью системного монитора, он показал мне 778Mb/2012Mb. Затем я проверил это, используя free -m на терминале. я видел это

             total       used       free     shared    buffers     cached
Mem:          2012       1922         89          0        130       1013
-/+ buffers/cache:        778       1234
Swap:         2047          0       2047

Как это огромная разница. Похоже, что системный монитор показывает -/+ буферы / чтение кеша как общий объем используемой памяти. Но что это такое? Если бы использованная память 1922Mb была верна, то моя система стала бы ужасно медленной. Кто-нибудь объяснит это? Я использую Fedora 13

2 ответа2

5

Я хотел бы указать людям с этой проблемой на этот сайт: www.linuxatemyram.com

Линукс съел мой баран!

В чем дело?

Linux заимствует неиспользуемую память для кэширования диска. Это выглядит так, будто у вас мало памяти, а у вас нет! Все отлично!

[...]

Почему top и free говорят, что все мои оперативные памяти используются, если это не так?

Это просто недопонимание терминов. И вы, и Linux соглашаетесь, что память, занятая приложениями, "используется", а память, которая ни для чего не используется, "свободна".

Но как назвать память, которая используется для чего-то и доступна для приложений?

Вы бы назвали это "бесплатным", но Linux называет это "использованным".

Memory that is               You'd call it  Linux calls it
---------------------------  -------------  --------------
taken by applications                 Used            Used
available for applications,
  and used for something              Free            Used
not used for anything                 Free            Free

Это «что-то» - это то, что top и free называют "буферами" и "кэшированными". Так как терминология у вас и у Linux разная, вы думаете, что у вас мало оперативной памяти, когда нет.

Как узнать, сколько у меня свободного барана?

Чтобы узнать, сколько ram можно бесплатно использовать в ваших приложениях, запустите free -m и посмотрите строку «-/+ buffers/cache» в столбце "free". Это ваш ответ в мегабайтах.

[...]

1

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

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

Резкое замедление происходит, когда ОС / программы вынуждены извлекать данные непосредственно из раздела подкачки, поскольку жесткий диск намного медленнее, чем ОЗУ.

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