The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Определение в Linux сколько процесс реально занимает памяти (без shared) (share memory linux proc)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: share, memory, linux, proc,  (найти похожие документы)
Date: Tue, 12 Nov 2002 21:51:28 +0500 From: Andrey Sapozhnikov <sapa@icb.chel.su> Newsgroups: ftn.ru.cgi.perl Subject: Определение в Linux сколько процесс реально занимает памяти (без shared) Еще один вариант. Hечто периодически сканирует файлы /proc/*/status читая строчки Uid: и VmSize: (это к примеру. А возможно оно умнее и смотрит еще /proc/*/maps выкидывая из общей Vm readonly сегменты общеупотребительных библиотек типа libc ибо приписывать их использование только отдельному индивидууму нечестно). В таком случае можно посканировать точно так же (простейший пример суммирующий VM всех процессов со "своим" uid): my $total = 0; opendir(PROC, '/proc') or die "$!"; foreach (readdir(PROC)) { /^\d+$/ or next; open(STATUS, "< /proc/$_/status") or next; while (<STATUS>) { last if /^Uid:\s+(\d+)/ && $1 != $<; $total += $1, last if /^VmSize:\s+(\d+)/; } close(STATUS); } closedir(PROC); print "$total kB"; но этот вариант, разумеется, будет безбожно завышать оценку суммируя сегменты разделяемые не только с другими пользователями, но и между процессами одного и того же пользователя...

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Спонсоры:
Слёрм
Inferno Solutions
Hosting by Ihor
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2019 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру