ফলাফল হিসেবে আমরা দুটো প্রসেস পেয়েছি। প্রথম প্রসেসটার প্রসেস আইডি বা PID হল 19394। TTY হল 'teletype' এর সংক্ষিপ্ত রূপ। এই প্রসেসদুটি টেলিটাইপ কন্ট্রোলিং টার্মিনাল 5 এ কাজ করছে। TTY আমাদের কাছে গুরুত্বপূর্ণ কিছু না। তারপরেই TIME। টাইম বলতে এখানে ওই প্রসেসটি প্রসেসরের কতটা সময় ব্যয় করে তাই নির্দেশ করে। আর শেষে CMD এর ঘরে থাকে কমান্ডটি।
এ বড় সাদামাটা লাগছে। তাইতো? আসুন কিছু অপশন সহ চেষ্টা করি। প্রথমে আমরা 'x' অপশনটি ব্যবহার করবো। অন্য কমান্ডের মত ps কমান্ডের অপশনগুলোর সামনে '-' বা '--' থাকে না।
আমরা লম্বা একটা লিস্ট পেয়েছি প্রসেসের। তারসাথে STAT নামের নতুন একটা ঘর যোগ হয়েছে। 'x' অপশন দিয়ে আমরা বলেছি যেকোনো কন্ট্রোলিং টার্মিনাল থেকে চালু প্রোগ্রাম দেখাতে। STAT যেটি কিনা 'state' এর সংক্ষিপ্তরূপ প্রসেসটির বর্তমান অবস্থা সম্পর্কে গুরুত্বপূর্ণ তথ্য দেয় সংক্ষিপ্ত ভাবে। আসুন এই অক্ষরগুলোর অর্থ জেনে নেয়া যাক:
নির্দেশক
অর্থ
R
Running Process। অর্থাৎ যে প্রসেস এখনো কাজ করছে প্রসেসরে বা এখন কাজ করতে প্রস্তুত।
S
Sleeping Process। যে প্রসেসটা এখন কাজ না করে অপেক্ষা করছে কিছু একটা ঘটার। সেটা যেকোনো ধরনের সংকেত হতে পারে। কোনো বাটন চাপা বা কোনো নেটওয়ার্ক প্যাকেট পাওয়া।
D
Uninterruptible Sleep। এমন স্লিপিং প্রসেস যা কোনোরকম ইনপুট বা আউটপুটের জন্য অপেক্ষা করছে এবং যাকে বন্ধ করা যায় না। যেমন ডিস্ক ড্রাইভ।
T
Stopped Process। যে প্রসেসকে বন্ধ করতে বলা হয়েছে। আমরা পরে এ নিয়ে বিস্তারিত জানবো।
Z
Zombie Process। এগুলো এমনসব চাইল্ড প্রসেস যা বন্ধ করা হয়েছে কিন্তু তার প্যারেন্ট প্রসেস এখনো তাকে মুছে ফেলেনি।
<
অতিগুরুত্বপূর্ণ প্রসেস। এমন প্রসেস যাকে প্রসেসরে বেশি সময় নিতে সুযোগ দেয়া হয়।(প্রসেসের ক্ষেত্রে niceness বলে একটি টার্ম আছে। এধরনের প্রসেসকে less nice বলা হয় কারন এরা নিজেরা বেশি সময় ব্যবহার করে এবং অন্যদের সময় কম দেয়।)
N
একটি কম গুরুত্বপূর্ণ বা nice process। গুরুত্বপূর্ণ প্রসেসগুলোর পর এরা প্রসেসরে সময় পায়।
আরো তথ্যসমৃদ্ধ প্রসেস লিস্ট আমরা দেখতে পারি এভাবে:
me@howtocode-pc:~$ ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 33832 3160 ? Ss 11:29 0:02 /sbin/init
root 2 0.0 0.0 0 0 ? S 11:29 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 11:29 0:00 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S< 11:29 0:00 [kworker/0:0H]
root 7 0.0 0.0 0 0 ? S 11:29 0:01 [rcu_sched]
root 8 0.0 0.0 0 0 ? S 11:29 0:01 [rcuos/0]
root 9 0.0 0.0 0 0 ? S 11:29 0:00 [rcuos/1]
root 10 0.0 0.0 0 0 ? S 11:29 0:00 [rcuos/2]
root 11 0.0 0.0 0 0 ? S 11:29 0:00 [rcuos/3]
root 12 0.0 0.0 0 0 ? S 11:29 0:00 [rcu_bh]
root 13 0.0 0.0 0 0 ? S 11:29 0:00 [rcuob/0]
root 14 0.0 0.0 0 0 ? S 11:29 0:00 [rcuob/1]
....
আমরা পুরো লিস্টটি এখানে দিইনি। এখানে আমরা USER নামে ঘরে দেখতে পারছি কোন ইউজার এই প্রসেসটি চালু করেছে। %CPU এবং %MEM নির্দেশ করছে শতকরা কতটুকু প্রসেসর ও মেমরি প্রসেসটি খরচ করছে। VSZ ভার্চুয়াল মেমরির পরিমান দেখাচ্ছে। RSS দেখাচ্ছে Resident Set Size অর্থাৎ RAM এ কতটুকু জায়গা প্রসেসটি নিচ্ছে(এটি কিলোবাইটে প্রকাশ করা হচ্ছে।)। START দিয়ে বোঝানো হচ্ছে কখন প্রসেসটি চালু করা হয়েছে।
ডায়নামিক্যালি প্রসেস দেখা
ps কমান্ডটি আমরা যখন ব্যবহার করি ঠিক সেই মুহুর্তের প্রসেসের একটি চিত্র আমরা দেখতে পাই। আমরা যদি চাই এটা ডায়নামিক্যালি দেখতে তাহলে top কমান্ডটি ব্যবহার করতে হবে:
কমান্ডটি দিলে টপ প্রোগ্রামটি চালু হবে। এর প্রথম অংশে সিস্টেম সম্পর্কিত বেশ কিছু গুরুত্বপূর্ণ তথ্য দেবে। আর দ্বিতীয় অংশে প্রসেসের লিস্ট। এটি প্রতি তিনসেকেন্ডে একবার আপডেট হয়। এবার আমরা কমান্ডটির বিভিন্ন অংশের অর্থ জেনে নিই:
সারি
অংশ
অর্থ
1
top
প্রোগ্রামের নাম।
1
12:43:00
বর্তমান সময়।
1
up 1:13
কম্পিউটার কতক্ষণ চালু আছে বা আপটাইম।
1
3 users
কতজন ইউজার লগড-ইন আছে।
1
load average:
কতগুলো প্রসেস কাজ করার জন্য প্রস্তুত। এখানে তিনটি সংখ্যা আছে প্রথমটি দিয়ে গত ৬০সেকেন্ডের লোড এভারেজ এবং পরের দুটি দিয়ে যথাক্রমে ৫মিনিট ও ১৫মিনিটের লোড এভারেজ জানায়।
2
Tasks:
এখানে বিভিন্নধরনের প্রসেসের মোট সংখ্যা দেখায়।
3
Cpu(s):
এই সারিতে প্রসেসর সম্পর্কিত বিভিন্ন গুরুত্বপূর্ণ তথ্য দেখায়।
3
12.7 us
শতকরা কতটুকু প্রসেসর কার্নেলছাড়া অন্যসব ইউজার দ্বারা ব্যবহৃত হচ্ছে।
3
3.0 sy
শতকরা কতটুকু প্রসেসর কার্নেল বা সিস্টেম ব্যবহার করছে।
3
4.6 ni
নাইস প্রসেস দ্বারা ব্যবহৃত প্রসেসরের শতকরা অংশ।
3
75.2 id
শতকরা কতটুকু প্রসেসর অলস পড়ে আছে বা ব্যবহৃত হচ্ছে না।
3
4.6 wa
শতকরা কতটুকু ইনপুট বা আউটটপুটের অপেক্ষায় আছে।
3
0.0 hi
হার্ডওয়্যার ইন্টারাপশনজনিত ব্যবহৃত প্রসেসর।
3
0.1 si
সফ্টওয়্যার ইন্টারাপশনজনিত ব্যবহৃত প্রসেসর।
3
0.0 st
হাইপারভাইজরে ব্যবহৃত সময়।
4
Mem:
ব্যবহৃত মেমরি।
5
Swap:
ব্যবহৃত সোয়াপ বা ভার্চুয়াল মেমরি।
top এর বেশ কয়েকটি কীবোর্ড কমান্ড আছে। এটি বন্ধ করতে 'q' চাপুন।