উপরের "বাফ / ক্যাশে" এবং "অ্যাভেল মেম" ক্ষেত্রগুলির অর্থ কী?


28

শীর্ষের আউটপুট-এর মধ্যে, দুটি ক্ষেত্র রয়েছে, স্মৃতিতে "বাফ / ক্যাশে" এবং "অ্যাভেল মেম" এবং স্বাপের ব্যবহারের লাইনে চিহ্নিত:

এখানে চিত্র বর্ণনা লিখুন

এই দুটি ক্ষেত্রের অর্থ কী?

আমি এগুলি গুগল করার চেষ্টা করেছি, তবে ফলাফলগুলি কেবল শীর্ষে জেনেরিক নিবন্ধ নিয়ে আসে এবং তারা এই ক্ষেত্রগুলি কী বোঝায় তা ব্যাখ্যা করে না।

উত্তর:


31

topএর র manpage ক্ষেত্র বর্ণনা করে না, কিন্তু freeএর আছে:

বাফার

কার্নেল বাফার দ্বারা ব্যবহৃত মেমরি ( Buffersইন /proc/meminfo)

ক্যাশে

পৃষ্ঠা ক্যাশে এবং স্ল্যাব দ্বারা ব্যবহৃত মেমরি ( Cachedএবং SReclaimableমধ্যে /proc/meminfo)

বাদামি / ক্যাশে

বাফার এবং ক্যাশের যোগফল

সহজলভ্য

অদলবদল না করে নতুন অ্যাপ্লিকেশন শুরু করার জন্য কতটা মেমরি পাওয়া যায় তার অনুমান। ক্যাশে বা বিনামূল্যে ক্ষেত্র দ্বারা উপলব্ধ তথ্য ভিন্ন, এই ফিল্ড অ্যাকাউন্ট পৃষ্ঠার ক্যাশে লাগে এবং যে সকল সংশোধনীয় মেমরির স্ল্যাব ব্যবহার (হচ্ছে আইটেম কারণে উদ্ধারকৃত করা হবে MemAvailable/proc/meminfo, কার্নেলের 3.14 উপলব্ধ, কার্নেলের উপর emulated 2.6.27+ , অন্যথায় বিনামূল্যে হিসাবে একই)

মূলত, "বাফ / ক্যাশে" ডিস্কে থাকা ডেটার জন্য ব্যবহৃত স্মৃতি গণনা করে বা খুব শীঘ্রই সেখানে শেষ হওয়া উচিত, এবং ফলস্বরূপ সম্ভাব্য ব্যবহারযোগ্য হয় (ক্যাশের ক্ষেত্রে সংশ্লিষ্ট মেমরিটি অবিলম্বে উপলব্ধ করা যেতে পারে, বা পর্যাপ্ত সময় দেওয়া হয়, বাফারদের ক্ষেত্রে - পরেরগুলি যেভাবেই হোক ছোট থাকতে পারে); "উপলভ্য" মেমরির পরিমাণ পরিমাপ করে যা আরও সোয়াপিংয়ের কারণ ছাড়াই বরাদ্দ এবং ব্যবহার করা যেতে পারে (দেখুন কীভাবে আমি বিতরণে বহনযোগ্যভাবে উপলব্ধ মেমরির পরিমাণ পেতে পারি? সে সম্পর্কে আরও বিস্তারিত তথ্যের জন্য)।


1
বাফার / ক্যাশে পর্যাপ্ত সময় দেওয়া যায় না ; এগুলি মেমরি বিভাগ যা অবিলম্বে উপলব্ধ যে কোনও প্রোগ্রামের জন্য কিছু মেমরি বরাদ্দ করা প্রয়োজন। এছাড়াও linuxatemyram.com
ডোপঘোটি

4

কিছুটা স্পষ্ট করার জন্য, বাফারগুলি এমন ডেটা বোঝায় যা লেখা হচ্ছে - লেখাটি সম্পূর্ণ না হওয়া অবধি স্মৃতি পুনরুদ্ধার করা যায় না।

ক্যাশে এমন ডেটা বোঝায় যা পড়া হয়েছিল - এটি আবার পড়ার প্রয়োজন হলে এটিকে চারপাশে রাখা হয়, তবে এটি তাত্ক্ষণিকভাবে পুনরুদ্ধার করা যায় কারণ এটি সর্বদা ডিস্ক থেকে পুনরায় পড়তে পারে।


এখানে আসলে এর অর্থ কী তা নয়। বিশেষ করে /proc/meminfoজন্য একটি ক্ষেত্র আছে Writeback। একটি পৃথক ক্ষেত্র আছে Buffers, এবং এটি হিসাবে প্রদর্শিত buffersহয় free -wBuffersমেমোরি ব্যবহারের একটি সাধারণ কারণ এখানে দেখানো হয়েছে: " র্যামের 30%" "বাফার"। এটি কী? "
সোর্সজেডি

এটি থেকে ( অ্যাক্সেস.redhat.com/solutions/406773 ) আমি এটি গ্রহণ করি যে লেফটব্যাকটি বাফারগুলির সেই অংশ যা এখনও ডিস্কে লেখা হয়নি। নাকি অন্য কিছু বলছেন?
ওয়ালস্টগ্রোগ

এই বিবরণ বিভ্রান্তিকর হবে। Buffers(এখন) পৃষ্ঠার ক্যাশের একটি অংশ; এটিতে গণনা করা হয় না Cached, তবে এটি অংশ হিসাবে গণনা করা হয় Active(file) + Inactive(file)। স্টিফেন কিটের উত্তর সম্পর্কে মন্তব্য দেখুন। Dirtyপৃষ্ঠার ক্যাশের অংশ যা লিখিত হয়েছিল এবং তাই শেষ পর্যন্ত ডিস্কে আবার লেখা দরকার needs Writebackঅন্তর্ভুক্ত নাDirty । অতএব, Writebackমানটির একটি অংশ নয় Buffers
সোর্সজেদি

কি Buffersআসলে মানে ব্লক ডিভাইস যুক্ত পৃষ্ঠা ক্যাশে। কিছু ফাইল সিস্টেমগুলি অভ্যন্তরীণভাবে এটি ব্যবহার করে; অন্যরা একেবারেই ব্যবহার করে না। / "আমার র্যামের 30% বাফার হয়" প্রশ্নের উত্তরটিতে আমার উত্তর ঠিক করতে যায়।
সোর্সজেডি

2

এই তথ্যের আধ্যাত্মিক উত্স হ'ল / usr/src/linux/Docamentation/files systemms/proc.txt

বাফারস : কাঁচা ডিস্ক ব্লকগুলির জন্য তুলনামূলকভাবে অস্থায়ী স্টোরেজটি প্রচুর পরিমাণে বড় হওয়া উচিত নয় (20MB বা তাই) ক্যাশেড : ডিস্ক থেকে পঠিত ফাইলগুলির জন্য মেমরি ক্যাশে (পৃষ্ঠা ক্যাশে)। সোয়াপকাড অন্তর্ভুক্ত নয়।

আপনি এখানে আরও কিছু বিশদ খুঁজে পেতে পারেন ।

লিনাক্স পেজ ক্যাশে (" ক্যাশেড :" মেমিনফো থেকে) বেশিরভাগ সিস্টেমে র‌্যামের বৃহত্তম একক গ্রাহক। আপনি যখনই ডিস্কের কোনও ফাইল থেকে কোনও পঠন () করেন, সেই ডেটা মেমরির মধ্যে পড়ে এবং পৃষ্ঠাগুলিতে ক্যাশে যায় (1)।
বাফার ক্যাশে ( " বাফার :" meminfo মধ্যে) dentry / inode ক্যাশে করার জন্য একটি নিকট আত্মীয় হয়।

অথবা বিশ্লেষণ মত সোর্স কোড এই

পরিমাণটি buffersহ'ল ফাংশনের রিটার্ন মানnr_blockdev_pages(void)

long nr_blockdev_pages(void)
{
        struct block_device *bdev;
        long ret = 0;
        spin_lock(&bdev_lock);
        list_for_each_entry(bdev, &all_bdevs, bd_list) {
                ret += bdev->bd_inode->i_mapping->nrpages;
        }
        spin_unlock(&bdev_lock);
        return ret;
}

পরিমাণ cached:

global_page_state(NR_FILE_PAGES) – total_swapcache_pages – i.bufferram
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.