Нужна помощь, чтобы интерпретировать вывод свободной команды

Я был бы признателен за помощь в интерпретации вывода "free -m" ниже.

-bash-4.2$ free -m
              total        used        free      shared  buff/cache   available
Mem:          15793        7112          88        7840        8591         611
Swap:         16891        5289       11602
  1. Если у меня свободно почти 11 ГБ, то почему я вижу использование свопа? Разве это не должно быть 0?
  2. Кроме того, значение "shared" равно 7840. Доступна ли эта память для нового приложения?
  3. Доступна ли только кэш-память для новых приложений? Другими словами, "общая" и "буферная" память недоступны для новых приложений?
  4. Как мне интерпретировать столбец "доступные" со значением 611? Как получается это значение?

2 ответа

Это говорит, что ваша область подкачки составляет 16891 МБ. Вы выделили 5289 МБ, а свободная область подкачки составляет 11602 МБ. Всего = Используется + Бесплатно

Shared: память, используемая (главным образом) tmpfs (Shmem в /proc/meminfo)

Буферы: память, используемая буферами ядра (Буферы в /proc/meminfo)

Кэш: память, используемая кешем страниц и слэбами (кэшируется и SReclaimable в /proc/meminfo)

Доступно: оценка объема доступной памяти для запуска новых приложений без замены. В отличие от данных, предоставляемых кешем или свободными полями, это поле учитывает кеш страниц, а также то, что не все восстанавливаемые блоки памяти будут восстановлены из-за используемых элементов.

Вы можете прочитать больше с командой man free

  1. У вас есть 11 ГБ свободной области подкачки, а не памяти, поэтому вы должны увидеть использование 5289 МБ подкачки.
  2. Память, доступная для нового приложения, составляет 611 МБ, как вы можете видеть в доступной колонке.
  3. Нет, только доступный столбец показывает доступную память для приложений.
  4. Смотрите предыдущий ответ

Изменить: нашел тему о последних изменениях в free команда. Может быть полезным

Краткий ответ на вопрос... если ваш free -m Вывод типичен, когда вы работаете нормально... у вас заканчивается ОЗУ, начал использовать 30%+ пространство подкачки, и система начнет замедляться, так как скорость диска (подкачки) медленнее, чем реальная скорость ОЗУ, Более медленная система и больше дискового ввода-вывода.

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

Существует системный параметр, который называется vm.swappiness это устанавливает, как используется RAM и swap, но некоторые могут поспорить о том, как его установить. Это для другого обсуждения, но вы можете искать здесь на AU, чтобы увидеть разговоры.

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

Другие вопросы по тегам