मेरी एक परियोजना के लिए, मुझे प्रोग्रामेटिक रूप से संसाधन (CPU, I / O और डिस्क-स्पेस) का उपयोग करने की आवश्यकता है।
वर्तमान में मैं शेल कमांड ( iostat) चला रहा हूं और उन परिणामों को पार्स कर रहा हूं जो डिस्क-स्पेस स्टेट के लिए अपेक्षाकृत अच्छी तरह से काम करता है।
दूसरी ओर सीपीयू और आई / ओ स्टेट के लिए, मुझे एक समस्या है।
परीक्षण करके iostatऔर topपर आदेश Mac OSX 10.9और Centos 6.5मुद्दा यह है कि बहुत पहले नतीजा यह है कि छपा है स्थिर है।
"स्थिर" से मेरा मतलब है निरंतर। यह हमेशा एक ही संख्या है चाहे आप कितनी बार भी कमांड को चलाएं। ऐसा लगता है कि मूल्य फिर से जूते के बीच बदल जाता है।
यह केवल पहले मूल्य के लिए मामला है, अनुवर्ती मान ठीक हैं और संभव सिस्टम संसाधन उपयोग को दर्शाते हैं।
अब CentOS बॉक्स मैं दौड़ाया गया परीक्षण एक VM है, लेकिन OSX एक सामान्य मैकबुक प्रो है।
तो मेरे तीन प्रश्न निम्नलिखित हैं:
पर स्थिरांक - कैसे आ कि आंकड़े स्थिर हैं
iostatऔरtopऔर सीपीयू के लिए आई / ओ उपयोग?मैं इसे कैसे ठीक करूं ?
यदि यह तय नहीं किया जा सकता है या एक इच्छित व्यवहार है, तो क्या ऐसे विकल्प हैं जो MacOSX और CentOS दोनों पर काम करते हैं?
यहाँ के नमूने लॉग हैं:
एक
iostatताज़ा बिना CentOS पर एक साधारण समय :Linux 2.6.32-431.5.1.el6.x86_64 08/04/2014 _x86_64_ (2 CPU)avg-cpu: %user %nice %system %iowait %steal %idle 24.64 0.00 0.57 0.10 0.00 74.70Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 1.44 0.22 26.26 656556 76917802 sdb 3.89 0.17 61.83 492714 181116136 dm-0 3.29 0.22 26.26 647474 76917776 dm-1 0.00 0.00 0.00 2416 0 dm-2 6.76 0.17 61.83 491914 181116136iostat 1CentOS पर एक सरल लेकिन इस बार एक1 secondताज़ा आवृत्ति के साथ:
Linux 2.6.32-431.5.1.el6.x86_64 08/04/2014 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
24.64 0.00 0.57 0.10 0.00 74.70
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 1.44 0.22 26.26 656556 76918018
sdb 3.89 0.17 61.83 492714 181118872
dm-0 3.29 0.22 26.26 647474 76917992
dm-1 0.00 0.00 0.00 2416 0
dm-2 6.76 0.17 61.83 491914 181118872
avg-cpu: %user %nice %system %iowait %steal %idle
0.51 0.00 0.00 0.00 0.00 99.49
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 7.00 0.00 56.00 0 56
sdb 0.00 0.00 0.00 0 0
dm-0 7.00 0.00 56.00 0 56
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
1.00 0.00 1.50 0.50 0.00 97.00
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 3.00 0.00 32.00 0 32
sdb 8.00 0.00 176.00 0 176
dm-0 4.00 0.00 32.00 0 32
dm-1 0.00 0.00 0.00 0 0
dm-2 14.00 0.00 176.00 0 176
avg-cpu: %user %nice %system %iowait %steal %idle
0.51 0.00 0.00 0.00 0.00 99.49
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
1.00 0.00 1.00 0.00 0.00 98.01
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
0.50 0.00 0.50 0.00 0.00 99.00
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
0.50 0.00 0.50 0.00 0.00 99.00
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
0.00 0.00 0.51 0.00 0.00 99.49
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
0.50 0.00 0.50 0.00 0.00 99.00
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 2.00 0.00 24.00 0 24
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 3.00 0.00 24.00 0 24
avg-cpu: %user %nice %system %iowait %steal %idle
0.51 0.00 0.51 0.00 0.00 98.99
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 4.00 0.00 80.00 0 80
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 7.00 0.00 80.00 0 80
दोनों "प्रयोग" कुछ सेकंड के अंतराल के भीतर किए गए थे।
जैसा कि आप देख सकते हैं, सीपीयू उपयोग के लिए, %userहमेशा पहले मूल्य पर 24.64%और %systemपर है 0.57।
/proc/*OSX तक नहीं पहुंच सकते । मुझे कोई आपत्ति नहीं है। क्या आप डिस्क I / O के समान समाधान के बारे में जानते हैं?