С ps
или подобные инструменты Вы только выделите страницы объема памяти тем процессом. Это число корректно, но:
не отражает фактический объем памяти, используемый приложением, только объем памяти, зарезервированный для него
, может вводить в заблуждение, если страницами поделятся, например, несколько потоков или при помощи динамически подключаемых библиотек
, Если Вы действительно хотите знать, какой объем памяти Ваше приложение на самом деле использует, необходимо выполнить его в профилировщике. Например, valgrind
может дать Вам понимание об объеме памяти, используемом, и, что еще более важно, о возможных утечках памяти в Вашей программе. Инструмент профилировщика "кучи" valgrind называют 'горным массивом':
Горный массив является профилировщиком "кучи". Это выполняет подробное профилирование "кучи" путем взятия обычных снимков "кучи" программы. Это производит график, показывающий использование "кучи" со временем, включая информацию, о которой части программы ответственны за большинство выделений памяти. График добавляется текстом или файлом HTML, который включает больше информации для определения, где большая часть памяти выделяется. Горный массив запускает программы о 20x медленнее, чем нормальный.
, Как объяснено в valgrind документация , необходимо запустить программу через valgrind:
valgrind --tool=massif
Горный массив пишет дамп снимков использования памяти (например, massif.out.12345
). Они обеспечивают, (1) временная шкала использования памяти, (2) для каждого снимка, записи того, где в Вашей памяти программ был выделен. Большой графический инструмент для анализа этих файлов горный-массив-visualizer . Но я нашел ms_print
, основанный на простом тексте инструмент поставленный с valgrind, уже чтобы очень помочь.
Для нахождения утечек памяти используйте (значение по умолчанию) memcheck
инструмент valgrind.
2 каталога, / часть пути, поэтому так же, как
/home/your_username
.. = один каталог
../.. = два каталога
../../.. три - и т.д.
Видят также родственника по сравнению с полным путем
, Если Вы запускаете с/, это - полный путь,/home/your_user, например
, Если Вы запускаете со своего текущего каталога, без / впереди, путь относительно Вашего текущего каталога. Так, в Вашем корневом каталоге, Рабочий стол ==/home-your_user/Desktop.
См. http://www.linuxnix.com/2012/07/abslute-path-vs-relative-path-in-linuxunix.html или подобный