Взгляд изнутри
Модератор: Модераторы разделов
sov1et
Сообщения: 7
ОС: Ubuntu
Сообщение
sov1et » 25.12.2010 13:50
Не могу разобраться с использованием памяти в linux.
Код: Выделить всё
pidof apache2
4155 4150 4148 4147 4130 4115 4114 4113 3980 3498 3215
Код: Выделить всё
ps axu | grep apach
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 3215 0.0 0.2 34296 7464 ? Ss 12:34 0:00 /usr/sbin/apache2 -k start
www-data 3498 0.5 0.2 34856 5432 ? S 12:38 0:03 /usr/sbin/apache2 -k start
www-data 3980 0.1 0.2 34856 5432 ? S 12:40 0:00 /usr/sbin/apache2 -k start
www-data 4113 0.0 0.2 34856 5432 ? S 12:41 0:00 /usr/sbin/apache2 -k start
www-data 4114 0.0 0.2 34856 5432 ? S 12:41 0:00 /usr/sbin/apache2 -k start
www-data 4115 0.0 0.2 34856 5432 ? S 12:41 0:00 /usr/sbin/apache2 -k start
www-data 4130 0.0 0.2 34856 5432 ? S 12:41 0:00 /usr/sbin/apache2 -k start
www-data 4147 0.0 0.2 34856 5432 ? S 12:41 0:00 /usr/sbin/apache2 -k start
www-data 4148 0.0 0.2 34856 5432 ? S 12:41 0:00 /usr/sbin/apache2 -k start
www-data 4150 0.0 0.2 34856 5432 ? S 12:41 0:00 /usr/sbin/apache2 -k start
www-data 4155 0.0 0.2 34856 5432 ? S 12:41 0:00 /usr/sbin/apache2 -k start
Код: Выделить всё
pmap -d 4115
...
mapped: 34852K writeable/private: 13440K shared: 64K
Код: Выделить всё
gcore 4115
ls -lah ./core.4115
-rw-r--r-- 1 root root 14M 2010-12-25 12:52 ./core.4115
В общем вопрос какое значение реально указывает сколько памяти находится в оперативке?
NickLion
Сообщения: 3408
Статус: аватар-невидимка
ОС: openSUSE Tumbleweed x86_64
Сообщение
NickLion » 25.12.2010 14:37
Нет такого понятия "сколько памяти находится в оперативке". Как и понятия "сколько программа занимает памяти".
Если процесс использует библиотеку, то код данной библиотеки и shared секции данных (некоторые константные и не только) будут присутствовать в единственном экземпляре, просто отображаться в виртуальное пространство каждого из процессов. Аналогично секции кода и секции общих данных программы будут в единственном экземпляре для всех процессов данной программы. Индивидуально для каждого процесса лишь стек (для каждого потока) да секции данных.
Итак какой объём Вас интересует? Только данные? Или вместе с кодом? Библиотеки учитывать? Выделение в области ядра?
shotdownsystem
Сообщения: 423
ОС: Basic command interpreter
Сообщение
shotdownsystem » 25.12.2010 16:14
...и еще часть может быть сброшена с своп )
puts ("Working, please wait...");while(1);
deadhead
Сообщения: 1913
Статус: zzz..z
Сообщение
deadhead » 25.12.2010 16:20
оставляю на память
/proc/meminfo
[x] close
shotdownsystem
Сообщения: 423
ОС: Basic command interpreter
Сообщение
shotdownsystem » 25.12.2010 16:23
автору, очевидно, нужна информация о ресурсах группы процессов а не общие сведения.
puts ("Working, please wait...");while(1);
deadhead
Сообщения: 1913
Статус: zzz..z
Сообщение
deadhead » 25.12.2010 16:39
sov1et писал(а): ↑ 25.12.2010 13:50
сколько памяти находится в оперативке?
shotdownsystem писал(а): ↑ 25.12.2010 16:23
автору, очевидно, нужна информация о ресурсах группы процессов а
не общие сведения .
Really? :-)
[x] close