यह पहले पूछा गया है लेकिन एक पुराने थ्रेड के रूप में उसी धागे को फिर से अपडेट नहीं करना चाहते हैं।मुफ्त कमांड से "बफर" और "कैश्ड" को समझना
free
कमांड के आउटपुट से "बफर" और "कैश" कॉलम पर खुद को स्पष्ट करना चाहते हैं।
यह वही है मेरी समझ ...
बफर कुछ जहां डाटा स्मृति में नहीं है, लेकिन अभी तक डिस्क पर प्लावित किया जा रहा है है। डेटा को समय पर bdflush
डिमन द्वारा डिस्क पर फ़्लश किया जाएगा या हम sync
कमांड चलाकर इसे मैन्युअल रूप से कर सकते हैं।
दूसरी ओर कैश प्रोग्राम/डेटा है जो स्मृति में लोड होता है लेकिन स्मृति में बनाए रखा जाता है ताकि यदि आवश्यक हो तो यह जल्दी से उपलब्ध होगा।
बफ़र्स की अवधारणा को समझने के लिए, मैं निम्नलिखित प्रयोग ...
यह मेरे डेस्कटॉप में free
आदेश के पढ़ने
[[email protected] ~]$ free -m total used free shared buffers cached Mem: 2897 465 2431 0 30 230 -/+ buffers/cache: 204 2692 Swap: 4000 0 4000 [[email protected] ~]$ sync [[email protected] ~]$ free -m total used free shared buffers cached Mem: 2897 466 2431 0 30 230 -/+ buffers/cache: 205 2691 Swap: 4000 0 4000
यहाँ मैं देख क्रियान्वित करने के बाद कम हो रही बफ़र नहीं कर सकते हैं की कोशिश की sync
कमांड।
अगला मैंने निम्न कोशिश की ... डिस्क पर एक बड़ी फ़ाइल लिखने का प्रयास किया।
[[email protected] ~]$ dd if=/dev/zero of=test bs=1024k
जैसी उम्मीद थी, कैश की गई मूल्य वृद्धि करनी चाहिए और इस बात की पुष्टि है ..
@localhost ~]# free -m total used free shared buffers cached Mem: 2897 1466 1430 0 32 1127 -/+ buffers/cache: 306 2590 Swap: 4000 0 4000
मैं फिर से sync
आदेश निष्पादित और फिर free
का उपयोग कर जाँच की। मैं देख सकता हूं कि बफर मूल्य free
कमांड के आउटपुट से घट रहा है। कैश में कोई कमी नहीं हुई थी। इसका मतलब है कि dd
कूमैंड के निष्पादन के बाद रैम में गंदे पृष्ठ डिस्क पर फंस गए हैं।
@localhost ~]# free -m total used free shared buffers cached Mem: 2897 1466 1430 0 10 1127 -/+ buffers/cache: 306 2590 Swap: 4000 0 4000
तब मैं drop_cache
कर्नेल पैरामीटर ताकि कैश vlaue
[[email protected] ~]# cat /proc/sys/vm/drop_caches 0 [[email protected] ~]# echo "1" > /proc/sys/vm/drop_caches [[email protected] ~]# cat /proc/sys/vm/drop_caches 1
free
गिरा दिया जाता है अब पुष्टि की है कि दोनों बफ़र और कैश मूल्य गिरा दिया जाता है अद्यतन किया गया।
[[email protected] ~]# free -m total used free shared buffers cached Mem: 2897 299 2597 0 1 74 -/+ buffers/cache: 224 2672 Swap: 4000 0 4000
तो, मेरा प्रारंभिक बयान है कि "बफर" रैम डेटा है जिसे डिस्क पर अभी तक फ़्लश किया जाना सही नहीं है।
कृपया मुझे मार्गदर्शन करें कि मैं सही दिशा में हूं या नहीं।