لینکس Vmstat کمانڈ

Lynks Vmstat Kman



اس گائیڈ میں، ہم لینکس میں 'vmstat' کمانڈ استعمال کرنے کے مختلف طریقوں کا مظاہرہ کریں گے۔

شرائط:

اس گائیڈ میں دکھائے گئے اقدامات کو انجام دینے کے لیے، آپ کو درج ذیل اجزاء کی ضرورت ہے:

  • ایک مناسب طریقے سے تشکیل شدہ لینکس سسٹم۔ جانچ کے مقاصد کے لیے، لینکس VM استعمال کرنے پر غور کریں۔ .
  • تک رسائی a سوڈو استحقاق کے ساتھ غیر جڑ صارف
  • کمانڈ لائن انٹرفیس کی بنیادی تفہیم

لینکس میں ورچوئل میموری

جسمانی میموری، جسے رام بھی کہا جاتا ہے، مقدار میں محدود ہے۔ دانا اس جگہ کو تمام چلنے والے پروگراموں میں تقسیم کرنے کا ذمہ دار ہے۔ تمام چلنے والے پروگرام (بشمول OS) RAM میں رہتے ہیں۔







تاہم، اگر میموری کی طلب اس کی دستیاب میموری سے زیادہ ہے، تو یہ صرف سسٹم کو کریش کر دیتا ہے (یا پروگرام مزید میموری کی جگہ مانگے گا)۔ زیادہ تر حالات میں، یہ ایک ناپسندیدہ نتیجہ ہے. یہ وہ جگہ ہے جہاں ورچوئل میموری آتی ہے۔



ورچوئل میموری سے مراد آپ کے HDD/SSD پر ایک وقف شدہ ڈسک کی جگہ ہے جو سنگین حالات میں اضافی میموری کے طور پر کام کر سکتی ہے۔ کیونکہ یہ رام کی جگہ کے طور پر کام کر رہا ہے (لیکن حقیقت میں نہیں)، اسے 'ورچوئل' سمجھا جاتا ہے۔ UNIX/Linux سسٹم میں، ان خالی جگہوں کو سویپ اسپیس کہا جاتا ہے۔



لینکس کرنل میموری کے بلاکس کو سویپ اسپیس میں منتقل کرتا ہے اور ضرورت کے مطابق انہیں دوبارہ RAM میں لے جاتا ہے۔





ورچوئل میموری کی کارکردگی جسمانی میموری کے مقابلے میں یقینی طور پر سست ہے اور اسٹوریج ڈیوائس کی کارکردگی کے براہ راست متناسب ہے۔ تاہم، مخصوص ہارڈویئر کنفیگریشنز میں (مثال کے طور پر NVMe SSD کا استعمال کرتے ہوئے)، کارکردگی RAM کے برابر ہو سکتی ہے۔

Vmstat کمانڈ

'vmstat' کمانڈ ایک مانیٹرنگ ٹول ہے جو ورچوئل میموری کے بارے میں مختلف معلومات کی اطلاع دیتا ہے۔ یہ 'sysstat' پیکیج کے ایک حصے کے طور پر تمام لینکس سسٹمز پر دستیاب ہے۔



'vmstat' کی کمانڈ کی ساخت مندرجہ ذیل ہے:

$ vmstat < اختیارات > < تاخیر > < شمار >

بنیادی استعمال

اگر اسے بغیر کسی پیرامیٹر کے چلایا جاتا ہے تو، 'vmstat' آخری بوٹ کے بعد سے سسٹم کی معلومات کو پرنٹ کرتا ہے:

$ vmstat

آؤٹ پٹ کو چھ حصوں میں ترتیب دیا گیا ہے:

  • عمل : عمل کے اعدادوشمار جو اس وقت چل رہے ہیں۔
    • r : فعال عمل کی تعداد
    • ب : سونے کے عمل کی تعداد
  • یاداشت : میموری کے استعمال کے اعدادوشمار
    • swpd : ورچوئل میموری کی کل مقدار (سواپ اسپیس)
    • مفت : دستیاب تبادلہ کی جگہ
    • چمڑا : ایک عارضی بفر میموری کے طور پر استعمال ہونے والی سویپ اسپیس کی مقدار
    • کیشے : کل کیش میموری
  • تبادلہ : تبادلہ کی جگہ کے بارے میں اعدادوشمار
    • ہاں : تبادلہ کی شرح
    • تو : تبادلے کی شرح
  • یہ : I/O شماریات
    • کے ساتھ : بلاک ڈیوائسز سے موصول ہونے والے بلاکس کی تعداد
    • ہونا : بلاکس کی تعداد بلاک کرنے کے لیے بھیجی گئی ڈیوائس(ز)
  • نظام : نظام الاوقات سے متعلق اعدادوشمار
    • میں : سسٹم میں مداخلت کی گنتی
    • سی ایس : سیاق و سباق کے سوئچ کی شرح
  • سی پی یو : مختلف CPU کے اعدادوشمار
    • ہم : CPU نان کرنل پروسیسز پر وقت گزارنا
    • اور : CPU دانا کے عمل پر وقت گزارنا
    • آئی ڈی : سی پی یو سستی وقت گزارنا
    • کی : I/O آپریشن مکمل ہونے کے انتظار میں CPU وقت گزارنا
    • st : ورچوئل مشین کے ذریعے استعمال ہونے والا CPU وقت

ڈسپلے یونٹ کو تبدیل کرنا

پہلے سے طے شدہ طور پر، 'vmstat' کلو بائٹس میں میموری کی قدروں کی اطلاع دیتا ہے۔ یونٹ کو تبدیل کرنے کے لیے، استعمال کریں ' -ایس پرچم:

$ vmstat -ایس < دلیل >

یہاں، 'vmstat' اقدار کو میگا بائٹس میں پرنٹ کرتا ہے۔

کئی میموری یونٹس دستیاب ہیں:

  • ایم : 1048576 بائٹس (2^20 بائٹ)
  • m : 1000000 بائٹس (1000 کلو بائٹ)
  • کے : 1024 بائٹس (1 میگا بائٹ)
  • ک : 1000 بائٹس (1 کلو بائٹ)

مسلسل شماریات کی تازہ کاری

پہلے سے طے شدہ طور پر، 'vmstat' رپورٹ کو ایک بار پرنٹ کرتا ہے۔ تاہم، ہم 'vmstat' کو ایک مخصوص وقت کے وقفے (سیکنڈوں میں) پر مسلسل رپورٹیں فراہم کرنے کی ہدایت دے سکتے ہیں۔

کمانڈ کی ساخت مندرجہ ذیل ہے:

$ vmstat < تاخیر >

مثال کے طور پر، ہر 2 سیکنڈ میں تازہ ترین اعدادوشمار حاصل کرنے کے لیے، کمانڈ مندرجہ ذیل ہے:

$ vmstat 2

آؤٹ پٹ اس وقت تک نہیں رکے گا جب تک کہ اسے 'Ctrl + C' کا استعمال کرتے ہوئے دستی طور پر ختم نہ کیا جائے۔

متبادل طور پر، ہم مخصوص اوقات کے لیے اعدادوشمار فراہم کرنے کے لیے 'vmstat' کی وضاحت کر سکتے ہیں:

$ vmstat < تاخیر > < شمار >

مثال کے طور پر، 5 بار کے لیے ہر 2 سیکنڈ میں تازہ ترین اعدادوشمار حاصل کرنے کے لیے، کمانڈ اس طرح نظر آتی ہے:

$ vmstat 2 5

فعال اور غیر فعال میموری

ایکٹو میموری سے مراد میموری کی جگہ ہے جو فی الحال کسی عمل کے ذریعے استعمال ہو رہی ہے۔ دوسری طرف، غیر فعال میموری سے مراد میموری کی جگہ ہے جو کسی ایسے عمل کو تفویض کی گئی تھی جو اب نہیں چل رہی ہے۔

'vmstat' کا استعمال کرتے ہوئے، ہم استعمال ہونے والی فعال اور غیر فعال یادوں کی مقدار کو چیک کر سکتے ہیں:

$ vmstat -a

یہاں، 'بف' اور 'کیشے' کالمز کو بالترتیب 'غیر فعال' اور 'فعال' کالموں سے بدل دیا جاتا ہے۔

میموری اور شیڈولنگ

میموری اور شیڈولنگ پر مزید تفصیلی رپورٹ حاصل کرنے کے لیے، درج ذیل کمانڈ کا استعمال کریں:

$ vmstat -s

یہاں:

  • سیکشن 1: یہ سیکشن سسٹم کی بنیادی معلومات جیسے کل جسمانی میموری، فعال/غیر فعال میموری، مفت/بفر/کیشے میموری وغیرہ سے متعلق ہے۔
  • سیکشن 2: سی پی یو کے مختلف اعدادوشمار
    • غیر اچھی سی پی یو ٹِکس : اعلی ترجیحی عملوں نے کتنی بار CPU استعمال کیا۔
    • اچھی سی پی یو ٹِکس : کم ترجیحی عملوں نے CPU استعمال کرنے کی تعداد۔
    • سسٹم سی پی یو ٹک : دانا کے عمل نے CPU کو استعمال کرنے کی تعداد۔
    • بیکار CPU ٹک : CPU کے بیکار رہنے کی تعداد۔
    • IO-wait CPU ٹک : جتنی بار CPU I/O مینجمنٹ کا انتظار کرتا ہے۔
    • IRQ : CPU کو مداخلت کی درخواستیں موصول ہونے کی تعداد۔
    • softirq : سی پی یو کو سافٹ ویئر میں مداخلت کی درخواستیں موصول ہونے کی تعداد۔
    • چوری شدہ سی پی یو ٹِکس : جتنی بار VM نے CPU ٹائم چرایا۔
  • سیکشن 3: میموری پیجنگ کے اعدادوشمار
  • سیکشن 4: ایونٹ کاؤنٹر

بوٹ کے بعد سے فورک

فورکس ان عملوں کا حوالہ دیتے ہیں جو موجودہ عمل سے پیدا ہوئے تھے۔ فورک گنتی کے اعدادوشمار حاصل کرنے کے لیے، درج ذیل کمانڈ کو چلائیں:

$ vmstat -f

ڈسک اور پارٹیشن کے اعدادوشمار

'vmstat' کمانڈ ڈسک کی سرگرمی کے بارے میں بھی معلومات فراہم کر سکتی ہے۔ ڈسک کی سرگرمی کا فوری خلاصہ حاصل کرنے کے لیے، درج ذیل کمانڈ کو چلائیں:

$ vmstat -ڈی

مزید تفصیلی ڈسک سرگرمی کی رپورٹ حاصل کرنے کے لیے (بشمول پڑھنا/لکھنا اعدادوشمار)، اس کے بجائے درج ذیل کمانڈ کا استعمال کریں:

$ vmstat -d

یہاں:

  • پڑھتا ہے۔
    • کل : کل ڈسک پڑھنے کی تعداد
    • ضم : کل گروپ پڑھنے کی گنتی
    • شعبے : پڑھے جانے والے شعبوں کی کل تعداد
    • MS : ڈسک سے ڈیٹا پڑھنے کے لیے کل وقت (ملی سیکنڈ میں)
  • لکھتا ہے۔
    • کل : کل ڈسک لکھنے کی تعداد
    • ضم : کل گروپ گنتی لکھتا ہے۔
    • شعبے : لکھے گئے شعبوں کی کل تعداد
    • MS : ڈسک پر لکھنے کے لیے کل وقت (ملی سیکنڈ میں)
  • آئی او
    • ڈال : کل موجودہ ڈسک پڑھتا/لکھتا ہے۔
    • سیکنڈ : جاری پڑھنے/لکھنے کے آپریشن میں گزارے گئے وقت کی مقدار (سیکنڈوں میں)

'vmstat' کمانڈ ایک مخصوص ڈسک پارٹیشن کے لیے رپورٹیں بھی تیار کر سکتی ہے۔ تقسیم کی رپورٹ حاصل کرنے کے لیے، درج ذیل کمانڈ کا ڈھانچہ استعمال کریں:

$ vmstat -p < partition_identifier >

سلیب کے اعدادوشمار

سلیب ایلوکیشن کو آبجیکٹ کی میموری ایلوکیشن کے لیے ایک موثر طریقہ کار کے طور پر ڈیزائن کیا گیا ہے۔ پچھلے میکانزم کے مقابلے میں، سلیب ایلوکیشن میموری فریگمنٹیشن میں کمی پیش کرتا ہے (میموری ایلوکیشن اور ڈی لوکیشن کی وجہ سے)۔

سسٹم کے سلیب کے اعدادوشمار کو چیک کرنے کے لیے، درج ذیل 'vmstat' کمانڈ استعمال کریں:

$ sudo vmstat -m

نوٹ کریں کہ اعدادوشمار دیکھنے کے لیے اسے روٹ کی اجازت درکار ہوتی ہے۔

یہاں:

  • کیشے : کیشڈ ڈیٹا کا نام
  • ایک پر : ان اشیاء کی تعداد جو Num کیشے میں فعال ہیں۔
  • کل : کسی خاص کیش میں اشیاء کی کل گنتی
  • سائز : کیش شدہ اشیاء کا سائز
  • صفحات : میموری کے صفحات کی تعداد جس میں کیش شدہ اشیاء شامل ہیں۔

نتیجہ

اس گائیڈ میں، ہم نے 'vmstat' کمانڈ استعمال کرنے کے مختلف طریقے دکھائے۔ ورچوئل میموری کے علاوہ، 'vmstat' ڈسک کے اعدادوشمار، فورکس، سلیبس اور بہت کچھ پر بھی رپورٹ کر سکتا ہے۔

دوسرے سسٹم مانیٹرنگ ٹولز کے بارے میں جاننے میں دلچسپی رکھتے ہیں؟ متعلق مزید پڑھئے htop ، مار ڈالو ، پی ایس وغیرہ

مبارک کمپیوٹنگ!