Это случай максимального использования памяти в отчетах для каждого процесса, как если бы это был единственный запущенный процесс. На самом деле все процессы apache имеют общую память (общие связанные библиотеки), и эта общая память сообщается для каждого процесса, поэтому общее использование всеми процессами apache кажется больше, чем оно есть на самом деле.
Их много ] сообщения , в которых обсуждается, как понимать и интерпретировать вывод top и ps.
использование памяти процессом в Linux - сложный вопрос; ты не можешь просто бежать ps и знаю, что происходит. Это особенно актуально, когда вы имеете дело с программами, которые создают множество идентичных дочерних процессов, например Apache. ps может сообщить, что каждый процесс Apache использует 10 мегабайт памяти, хотя в действительности предельные затраты на каждую Процесс Apache занимает 1 мегабайт памяти
Вы забыли вычислить SHR
или общую
часть.
Попробуйте (7 * 40) - (3 * 40)
= 160, что довольно близко соответствует используемой вами памяти.
Общая память - это память, которая совместно используется процессами; библиотеки Apache и тому подобное.