Как же так?!? о_О Почему Linux использует всю мою оперативную память? Паника!
Вообще говоря, если у вас есть неиспользуемая память, то она напрасно простаивает.
Многие начинающие пользователи обращают внимание на то, что ядро Linux непривычно для них обращается с оперативной памятью. Так как доступ к данным в оперативной памяти осуществляется намного быстрее, чем к данным на дисковом накопителе, ядро кэширует в памяти данные, к которым недавно был произведен доступ. Кэш очищается только при нехватке свободной памяти для новых данных, либо после перезагрузки о.с.
Мы можем увидеть различие с помощью команды free:
$ free -hm
______total__ used__ free___ shared_ buff/cache__ available
Mem: 2.8G__1.1G___283M__224M__1.4G_________1.2G
Swap: 3.0G__881M__2.1G
Обратите внимание на разницу между free и "available". В примере выше, ноутбук с 2.8 Гбайт памяти на вид использует большую ее часть, и только 283 Мбайт свободны. Однако, 1,4 Гбайт из них помечены как "buff/cache". А 1.2 ГБайт памяти доступны для запуска новых приложений без использования свопа. Смотрите подробнее man-страницу free(1):
wiki.archlinux.org/index.php/Man_page_(%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9)
Что это дает в результате? Высокую производительность!
Если вам стало интересно, прочтите эту замечательную статью:
www.linuxjournal.com/article/2770
Существует также веб-сайт, посвященный заблуждениям, связанным с этой особенностью Linux: www.linuxatemyram.com/
Frequently asked questions (Русский) - ArchWiki