منبع اصلی نوشتار زیر در این لینک قرار دارد

smem ابزاری برای مانیتورینگ حافظه فیزیکی

smme ابزاری اپن سورس نوشته شده به زبان پایتون برای پیدا کردن فرایند و کاربرانی که از حافظه اصلی استفاده می کنند. خروجی پیش فرض دستور smem شامل شناسه و مالک فرایند و همچنین نام فرایند است. ستونی برای میزان مصرف حافظه swap به ازای هر فرایند و کاربر می باشد. همچنین شامل ستون USS که مخفف Unique  Set  Size می باشید حافظه غیر اشتراکی را نشان می دهد. (میزان مصرف از حافظه غیر اشتراکی). فضای اشتراکی بطور مساوی میان فرایند ها تقسیم شده است. حافظه غیر اشتراکی (ستون USS) بعلاوه نسبت حافظه اشتتراکی فرایند در غالب ستون PSS که مخفف Proportional Set Size است نشان داده می شود. ستون های USS و PSS تنها شامل حافظه فیزیکی (حافظه RAM) استفاده شده هستند و شامل حافظه swap شده (swapped outt) به دیسک نمی شوند. (برای درک مفهوم swapped out این مطلب را بخوانید). گزارش حافظه مصرفی می تواند بر اساس فرایند یا کاربر و یا نگاشت حافظه و یا به صورت systemwide به دو صورت متنی و گرافیکی باشد.

نصب آن در توزیع های ابونتو و دبیان با استفاده از دستور زیر انجام می شود.

sudo apt-get install smem

و در توزیع های مبتنی بر RHLE به صورت زیر است. باید بسته کد منبع را دانلود کرده و سپس آنرا از حالت فشرده خارج و مجوز اجرایی را به فایل مورد نظر که smem نام دارد اعطا کرد. این فایل شامل متن واضح کد های نوشته شده به زبان Python می باشد. برای اجرای دستور های فوق نیاز به مجوز root دارید.

cd ~/Donloads

wget http://www.selenic.com/smem/download/smem-1.4.tar.gz

tar xvf smem-1.4.tar.gz

cd smem-1.4 && cp smem /usr/local/bin

chmod +x /usr/local/bin/smem

ساده ترین شکل استفاده اجرای تنهای دستور بدون هیچگونه سوییچی است.

smem

از تصویر بنشان دهنده حافظه مصرفی فر فرایند به ازای هر کاربر می باشد. با استفاده از سوییچ w- خروجی به صورت system wide نشان داده می شود. هر سیستم عاملی فضای حافظه فیزیکی را به دو بخش User Space و Kernel Space تقسیم می کند. User Space برای اجرای فرایند های کاربران مانند مرور گر وب یا پردازشگر متن است. هیچ فرایند کاربری (از User Space) حق دسترسی به فضای Kernel Space را ندارد. البته با استفاده از System Calls ها امکان برقراری ارتباط میان دو ناحیه و ارسال درخواست به فضای کرنل وجود دارد.

smem -w

برای مشاهده فضای مصرفی به ازای هر کاربر از سوییچ u- استفاده کنید. هر خط متعلق به یک کاربر می باشد و همچنین ستون count تعداد فرایند های متعلق به آن کاربر می باشد.

 smem -u

همچنین امکان نشان دادن خروجی به صورت نمودار ها و گرافیکی وجود دارد. دستور های زیر نمونه هایی هستند.

smem –bar pid

“smem –bar pid -c “pss uss

smem –pie name -s rss

و همچنین برای خواندن راهنما از دستور smem –help استفاده کنید.



برچسب ها : , , , , , ,