আমি জানতে চাই যে কোনও রেড-হ্যাট ভিত্তিক লিনাক্সের আউটপুটটি ডেবিয়ান ভিত্তিক লিনাক্স দ্বারা আলাদাভাবে ব্যাখ্যা করা যেতে পারে।
প্রশ্নটিকে আরও সুনির্দিষ্ট করে তুলতে, আমি কী পরে top
রেড-হাট সিস্টেমে কমান্ডের প্রথম লাইন থেকে "লোড এভারেজ" কীভাবে ব্যাখ্যা করা হয় এবং এটি কীভাবে অফিসিয়াল ডকুমেন্টেশন র কোড দ্বারা যাচাই করা যায় তা বোঝা যাচ্ছে।
[এই বিষয়ে যোগাযোগের অনেকগুলি উপায় রয়েছে, সেগুলির সমস্তই প্রশ্নের গ্রহণযোগ্য উত্তর]
একটি সম্ভাব্য পন্থা হ'ল এই তথ্যটি কোথায় সরকারীভাবে নথিভুক্ত হয়েছে তা সন্ধান করা।
আর একটি, কোড সংস্করণটি top
সুনির্দিষ্টভাবে বিতরণ এবং যে সংস্করণে আমি কাজ করছি তাতে তৈরি করা হবে is
আমি যে কমান্ড আউটপুট পাচ্ছি তা হ'ল:
top - 13:08:34 up 1:19, 2 users, load average: 0.02, 0.00, 0.00
Tasks: 183 total, 1 running, 182 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.2%us, 0.2%sy, 0.0%ni, 96.8%id, 2.7%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 3922520k total, 788956k used, 3133564k free, 120720k buffers
Swap: 2097148k total, 0k used, 2097148k free, 344216k cached
এই ক্ষেত্রে আমি লোড গড় মূল্য কীভাবে ব্যাখ্যা করতে পারি ?
আমি একটি ডকুমেন্টেশন উত্স থেকে গড় লোড শেষ মুহুর্তের মধ্যে এবং এটি অন্য ডকুমেন্টেশন উত্স দ্বারা 100 দ্বারা গুণিত করার পরে এটি ব্যাখ্যা করা উচিত তা সনাক্ত করতে সক্ষম হয়েছি।
সুতরাং, প্রশ্নটি হল:
এটি 0.02% বা 2% লোড হয়েছে?
ডকুমেন্টেশন উত্স এবং সংস্করণ:
1) প্রথম এক তারা সঙ্গে
TOP(1) Linux User’s Manual TOP(1)
NAME
top - display Linux tasks
উত্স: man top
আমার রেডহ্যাট বিতরণে
উবুন্টুতে "টাস্ক" সহ এমন সংস্করণ রয়েছে যা এখানে লোড গড়ের ব্যাখ্যা দেয় না:
http://manpages.ubuntu.com/manpages/precise/man1/top.1.html
2) দ্বিতীয়টি দিয়ে শুরু হয়
TOP(1) User Commands TOP(1)
NAME top
top - display Linux processes
সূত্র:
http://man7.org/linux/man-pages/man1/top.1.htm
3) এটি দিয়ে শুরু হয়:
TOP(1)
NAME
top - display and update information about the top cpu processes
উত্স: http://www.unixtop.org/man.shtml প্রথম এক, দ্বারা দেখা যায় যে বা এবং এটি আউটপুট বিন্যাসের কোনো ব্যাখ্যা নেই (কিংবা সম্পর্কে লোড গড় যা আমি আগ্রহী) । দ্বিতীয় এক, একটি সংক্ষিপ্ত ব্যাখ্যা, ইশারা লোড গড় গত 1 মিনিট কি আছে যে রয়েছে, কিন্তু এর মান ব্যাখ্যা সম্পর্কে কিছুই!
man top
RHEL
online ubuntu documentation
আমি সরাসরি দ্বিতীয় উত্স থেকে উদ্ধৃতি:
2A। ইউপিটাইম এবং লোড গড়
এই অংশটিতে একটি একক লাইন রয়েছে:
প্রোগ্রাম বা উইন্ডো নাম, যা ডিসপ্লে মোডের
বর্তমান সময় এবং সময়ের দৈর্ঘ্যের উপর নির্ভর করে সর্বশেষ বুট থেকে
মোট 1 ব্যবহারকারী, সংখ্যা
1 মিনিটের মধ্যে সিস্টেমের লোড গড়
সুতরাং, যদি এই ব্যাখ্যাটি সত্যই সঠিক হয় তবে এটি বোঝার জন্য যথেষ্ট যে লোড গড়টি প্রায় 1 মিনিটের মতো।
তবে এটি সংখ্যার ফর্ম্যাটটি ব্যাখ্যা করে না।
ইন তৃতীয় ব্যাখ্যা, এটা বলে যে:
লোড গড়ের জন্য সংখ্যা নির্দিষ্ট করার সময় সেগুলি 100 দ্বারা গুণিত করা উচিত।
এই ব্যাখ্যা থেকে জানা যায় যে 0.02 এর অর্থ 2% এবং 0.02% নয়। তবে এটা কি সঠিক? তদ্ব্যতীত, লিনাক্সের সমস্ত বিতরণ এবং সম্ভাব্যভাবে বিভিন্ন বাস্তবায়নের জন্য এটি সঠিক top
?
এই প্রশ্নের উত্তর খুঁজে পেতে, আমি কোডটি অনলাইনে অনুসন্ধান করেই চেষ্টা করেছিলাম। তবে আমি খুঁজে পেয়েছি, কমপক্ষে, top
আরএইচইএল সম্পর্কিত দুটি ভিন্ন সংস্করণ খুঁজে পেয়েছি ! builtin-top.c
এবং রি-ফ্যাক্টর top.c
। কোডের শুরুর দিকে নোটিশটি যেমন রেড-হ্যাট দ্বারা কপিরাইটযুক্ত উভয়ই এইভাবে যৌক্তিক বলে মনে হয় যে আরএইচইএল এর মধ্যে একটি ব্যবহার করে।
http://lxr.free-electrons.com/source/tools/perf/builtin-top.c
http://lxr.free-electrons.com/source/tools/perf/util/top.c
সুতরাং, এতগুলি কোডটি আবিষ্কার করার আগে, আমি সিপিইউ লোডকে কীভাবে ব্যাখ্যা করা হয় তার সঠিক বোঝার জন্য কোথায় মনোযোগ দিতে হবে সে সম্পর্কে আমি একটি মতামত চেয়েছিলাম?
নীচের উত্তরে প্রদত্ত তথ্য থেকে, কিছু ব্যক্তিগত অনুসন্ধানের পাশাপাশি আমি সন্ধান করেছি যে:
1 - top
আমি যেটি ব্যবহার করছি তা প্যাকেজ প্রোপস -৩.২.৮ এ অন্তর্ভুক্ত রয়েছে। যা ব্যবহার করে যাচাই করা যেতে পারে top -v
।
2 - procps-3.2.8
যে সংস্করণটি আমি অফিসিয়াল ওয়েবসাইট থেকে ডাউনলোড করেছি তাতে মনে হয় যে সরঞ্জামটি ফাইল uptime
থেকে সরাসরি তার তথ্য পেয়ে থাকে (লিনাক্স ফাংশনটি ব্যবহার না করে )।
3 - এখন কমান্ডের জন্য এটি ফাংশনটিও ব্যবহার করে না । আমি যাচাই করতে পেরেছি যে প্রকৃতপক্ষে সেই একই জিনিসগুলি করেprocfs
/proc/loadavg
getloadavg()
top
getloadavg()
top
uptime
লোড গড় দেখানোর সরঞ্জাম। এটি আসলে uptime
সরঞ্জামটির ফাংশনটিকে কল করে , যা procfs
ফাইল থেকে তার তথ্য পায় /proc/loadavg
।
সুতরাং, সবকিছু /proc/loadavg
ফাইলকে নির্দেশ করে! সুতরাং, load average
উত্পাদিত দ্বারা উত্পাদিত সম্পর্কে সঠিক ধারণা গঠনের top
জন্য, ফাইলটি loadavg
কীভাবে লেখা আছে তা দেখতে কার্নেল কোডটি পড়তে হবে ।
উত্তরগুলির মধ্যে একটিতে নির্দেশিত একটি দুর্দান্ত নিবন্ধও রয়েছে যা এর তিনটি মান সম্পর্কে একটি সাধারণ ব্যক্তির শর্তাদি ব্যাখ্যা সরবরাহ করে loadavg
।
সুতরাং, সমস্ত উত্তর সমানভাবে কার্যকর এবং সহায়ক হয়েছে তা সত্ত্বেও, আমি যে প্রশ্নটি আমার প্রশ্নের উত্তর হিসাবে " http: //www.linuxj Journal.com//article/9001 " এ নির্দেশ করেছেন সেটিকে আমি চিহ্নিত করতে যাচ্ছি
। আপনার অবদানের জন্য সবাইকে ধন্যবাদ!
শীর্ষস্থানীয় ও লোড গড় বোঝার
প্রশ্নটি থেকে অতিরিক্ত , আমি কার্নেলের উত্স কোডের একটি লিঙ্ক পেয়েছি যা সেই স্থানটিকে নির্দেশ করে যেখানে loadavg
গণনা করা হয়। এটি যেভাবে কাজ করে তার ব্যাখ্যা করার জন্য একটি বিশাল মন্তব্য রয়েছে বলে মনে হচ্ছে, কোডের এই অংশটিও রয়েছে C
! কোডটির
লিঙ্কটি হ'ল http://lxr.free-electrons.com/source/kernel/sched/loadavg.c
আবার আমি কোন ধরণের চৌর্যবৃত্তিতে জড়িত হওয়ার চেষ্টা করছি না, আমি কেবল এটি সম্পূর্ণতার জন্য যুক্ত করছি। সুতরাং, আমি পুনরাবৃত্তি করছি যে কর্নেল কোডের লিঙ্কটি বোঝার শীর্ষ এবং লোড গড়ের বোঝার কোনও উত্তর থেকে পাওয়া গেছে ...
top -v
)