Хотя система, скорее всего, будет использовать любую оперативную память, которую вы ей выбрасываете (после достаточного количества операций ввода-вывода), ей все же не нужно все это.
Все обычные дистрибутивы Linux предварительно сконфигурированы для агрессивного использования оперативной памяти в качестве дискового кэша, если - и только если - это не требуется где-либо еще: заголовок вывода top
будет выглядеть примерно так
Tasks: 407 total, 3 running, 404 sleeping, 0 stopped, 0 zombie
%Cpu(s): 12,6 be, 11,2 sy, 0,0 ni, 76,1 un, 0,0 wa, 0,0 hi, 0,0 si, 0,0 st
KiB Mem: 16425304 total, 15497560 used, 927744 free, 221476 buffers
KiB Swap: 0 total, 0 used, 0 free. 7057660 cached Mem
(Моя машина на момент написания множества открытых программ). Это означает, что в то время как в общей сложности ок. 16 ГБ (16425304 КБ), что-то вроде 15,2 ГБ (15497560 КБ), но из них около 210 М (221476 КБ) используются для буферов блочных устройств и приблизительно. 7 КБ (7057660 КБ) используются для кэширования файловой системы, в результате чего реально используется менее 8 ГБ.
Команда free -m
дает гораздо лучшую идею, поскольку она выполняет математику за вас: в строке -/+ Buffer/Cache
она показывает, что система действительно использует, с уже вычтенными буферами и кэшем.