উত্তর:
আপনি "লিনাক্স ওএস" কতটা ব্যবহার করছেন তা জানতে চেয়েছেন (এবং "অ্যাপ্লিকেশনগুলি" কত স্মৃতি ব্যবহার করছে তা নয়)। "লিনাক্স" কেবল একটি কর্নেল (যদিও এটি একশব্দ নয়; কার্নেল মডিউলগুলি কার্যকর পদক্ষেপে অবদান রাখে)। "ওএস" হিসাবে ব্যবহারকারীরা দেখতে পেল এমন অনেকগুলি কার্নেলের অংশ নয়, তবে বৃহত্তর উবুন্টু বিতরণের অংশ। একটি সাধারণ ডেস্কটপ ইনস্টলেশনতে এটির মধ্যে উইন্ডোটিং সিস্টেম (সাধারণত xorg), উইন্ডো ম্যানেজার এবং ডেস্কটপ এনভায়রনমেন্ট (ডিফল্টরূপে উবুন্টুতে ইউনিটি, অন্যরা জিনোম এবং কে-ডি-কে অন্তর্ভুক্ত করে) পাশাপাশি অন্যান্য প্রসেসের পুরো হোস্টকে অন্তর্ভুক্ত করে যা প্রয়োজনীয় অপারেশন করে যে আপনি আপনার সিস্টেমের সাথে যোগাযোগ করতে পারেন।
"অ্যাপ্লিকেশন" শব্দের অর্থ ব্যবহারকারীদের, সাধারণত "ওয়েব ব্রাউজার", "স্প্রেডশিট" ইত্যাদির অর্থ বোঝায় আমি এগুলিকে "ব্যবহারকারী অ্যাপ্লিকেশন" হিসাবে উল্লেখ করব।
আপনার কার্নেলের আকার অনুমান করার উপায় রয়েছে , তবে আপনি যদি উবুন্টু কত স্মৃতি ব্যবহার করছেন তার একটি অনুমান নিয়ে আসতে চান তবে আপনাকে সম্পর্কিত সমস্ত প্রক্রিয়া সনাক্ত করতে এবং যুক্ত করতে হবে (xorg, init, ইত্যাদি)। অন্য বিকল্পটি হ'ল এমন কিছু ব্যবহার করা যেমন আপনার top
যখন অন্য কোনও ব্যবহারকারী অ্যাপ্লিকেশন চলমান না থাকে top
এবং আপনার ব্যবহৃত টেম্পলেট এবং আপনার টার্মিনাল এমুলেটর এবং শেলটি বিয়োগ করে ।
লিনাক্স সিস্টেমের মেমরির ব্যবহার দেখার জন্য অনেকগুলি উপায় রয়েছে, অন্যদের থেকে কিছুটা সুনির্দিষ্ট। "ব্যবহারে স্মৃতিশক্তি" এর অনেক সংজ্ঞা রয়েছে। এটি বলেছে যে, বেশিরভাগ অ-প্রযুক্তিগত ব্যবহারের জন্য শীর্ষ (1) কাজটি ঠিকঠাক করবে:
top - 17:23:50 up 7 days, 19:15, 3 users, load average: 0.00, 0.01, 0.05
Tasks: 172 total, 2 running, 170 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.8 us, 0.1 sy, 0.0 ni, 99.1 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 2049992 total, 1735420 used, 314572 free, 372420 buffers
KiB Swap: 2095100 total, 192 used, 2094908 free. 679116 cached Mem
একটি যোগ বোনাস হিসাবে, যেহেতু পরের প্রশ্নে প্রায়ই হয় " কি আপ মেমরির ব্যবহার করছে?", পরবর্তী লাইন চলমান প্রসেস এবং (অন্যান্য বিষয় ছাড়াও) দেন, কত ভার্চুয়াল মেমরি তারা ব্যবহার করছেন।
নোট করুন যে লিনাক্সে "ফ্রি" মেমরিটি প্রায়শই খুব অল্প সংখ্যক হয় এবং এটি একটি ভাল জিনিস। ফ্রি মেমরি মূলত একটি নষ্ট সম্পদ, তাই লিনাক্স এটিকে বিভিন্ন ক্যাশে ব্যবহারের জন্য বরাদ্দ করে। যদি কোনও অ্যাপ্লিকেশনটির সেই স্মৃতি দরকার হয় তবে এটি এখনও উপলব্ধ; ইতিমধ্যে লিনাক্স এটি ভাল ব্যবহারের জন্য রাখছে।
বেসিক কার্নেলটি হ'ল vmlinuz
ফাইল /boot
। 'Z' এর অর্থ 'z লাইব্রেরি সংকুচিত'। দুর্ভাগ্যক্রমে, আকারটি একবার সঙ্কুচিত না করাতে আমি এটি কীভাবে সঙ্কুচিত করতে জানি না।
@ টাইপ_আউটকাস্ট দ্বারা উল্লিখিত হিসাবে, কার্নেলটি হার্ডওয়্যার অ্যাক্সেস করতে এবং অন্যান্য কিছু বৈশিষ্ট্য পরিচালনা করতে মডিউল ব্যবহার করে। এগুলির অধীনে পাওয়া যায় /lib/modules/<version>
। কোন মডিউলগুলি ব্যবহার করে লোড করা হয়েছে তা আপনি নির্ধারণ করতে পারেন lsmod
। সেই তালিকায় Size
প্রতিটি মডিউলের আকার সহ একটি কলাম অন্তর্ভুক্ত রয়েছে ।
সুতরাং আপনি যদি কার্নেলটি যে আকারটি ব্যবহার করছেন তা জানতে চান, এটি তুলনামূলকভাবে কাছাকাছি হবে।
এছাড়াও, আপনার কাছে মেমরি ফাইল রয়েছে। ব্যবহার করে দেখুন cat /proc/meminfo
। এটি আপনাকে দুটি অতিরিক্ত পরামিতি দেবে: KernelStack
এবং Buffers
।
এছাড়াও, আপনি বিভিন্ন প্রক্রিয়া, যেমন প্রক্রিয়া 1 থেকে তথ্য পাবেন। এটি সূচনা প্রক্রিয়া এবং এটি কার্নেলের অংশ হিসাবে বিবেচনা করা যেতে পারে। এর তথ্য নীচে পাওয়া যাবে /proc/1
। মেমরির ব্যবহারটি কয়েকটি সংখ্যা দেখায় যা নীচে ব্যাখ্যা করা হয়েছে । কলামটি ব্যবহার করে ps -ef | less
এবং সন্ধান করে আপনি এই জাতীয় নিম্ন স্তরের প্রক্রিয়ার একটি তালিকা পেতে পারেন CMD
। বন্ধনীগুলির মধ্যে উপস্থিত জিনিসগুলি [[নাম ...] 'হ'ল সত্যই নিম্ন স্তরের এন্ট্রি (মডিউল সম্পর্কিত এন্ট্রি, এটি মডিউলগুলির দ্বারা নির্মিত কাজ হতে পারে, তবে আমি সে সম্পর্কে নিশ্চিতভাবে জানি না))
me $ cat /proc/1
46511 1381 790 348 0 37483 0
নোট করুন যে নম্বরগুলি পৃষ্ঠাগুলিতে পরিমাপ করা হয় । বেশিরভাগ ক্ষেত্রে, এর অর্থ আপনি বাইটগুলিতে আকার পেতে সংখ্যাটি 4096 দিয়ে গুণতে চান।
/proc/[pid]/statm
Provides information about memory usage, measured in pages.
The columns are:
size (1) total program size
(same as VmSize in /proc/[pid]/status)
resident (2) resident set size
(same as VmRSS in /proc/[pid]/status)
shared (3) number of resident shared pages (i.e., backed by a file)
(same as RssFile+RssShmem in /proc/[pid]/status)
text (4) text (code)
lib (5) library (unused since Linux 2.6; always 0)
data (6) data + stack
dt (7) dirty pages (unused since Linux 2.6; always 0)
আপনি যদি অন্যান্য বিভিন্ন প্রক্রিয়াতে আগ্রহী হন, সমস্ত ডেটা এর অধীনে উপলব্ধ হবে /proc
।
/proc/1/statm
(কেবলমাত্র নয়/proc/1
) হ'ল/sbin/init