буферный кэш и свободная память

буферный кэш и свободная память

Ниже представлен вывод free в Ubuntu:

$ free
             total       used       free     shared    buffers     cached
Mem:       8173180    8013092     160088          0    1076276    3091136
-/+ buffers/cache:    3845680    4327500
Swap:     11719380        312   11719068

Общая физическая память составляет 8 ГБ. Общая используемая память близка к этому, но общая память, используемая буферным кэшем, составляет половину этого, примерно 4 ГБ. Практически никакая память не используется как подкачка.

Теперь буферный кэш выводится, потому что у нас были операции чтения/записи на диск, а затем после первого раза приложения загружаются в память до тех пор, пока они больше не нужны, чтобы ускорить операции чтения/записи. Таким образом, общий объем операций чтения/записи для буферизации диска составляет 4 ГБ.

Хорошо, но какие процессы используют остальные 4 гига физической памяти (исключая буферный кэш)? Как это определить?

решение1

Оставшаяся память используется для кучи и стека различных программ, запущенных в вашей системе. Как сказал Джоэл Дэвис в своем комментарии, вы можете использовать gnome-system-monitorили ps(хотя вы хотите rssвместо vsize), чтобы увидеть, какие программы ее используют. Вы также можете использовать topинструмент командной строки, который сортирует по использованию ЦП по умолчанию. Введите Mи он переключится на сортировку по использованию памяти.

Также я хотел бы исправить недоразумение: своп неиспользоватьпамять. Это 312 не означает, что 312 КБ ОЗУ используется для подкачки. На самом деле это означает, что 312 КБ подкачки используется вместо ОЗУ. Если на вашем компьютере заканчивается ОЗУ, он начинает записывать содержимое памяти на диск («пейджинг»), чтобы освободить эту ОЗУ. Это число подкачки говорит вам, сколько ОЗУ было записано на диск.

Связанный контент