প্রসেস এর প্রাথমিক ধারণা

প্রসেস কি?

সাদামাটা কথায় যা কম্পিউটারের কাছে কাজ, তাই প্রসেস। তা চালু থাকা কোনো প্রোগ্রাম হতে পারে। বা যেকোনো ধরনের কাজ।

কীভাবে প্রসেস কাজ করে?

যখন সিস্টেম চালু হয়, কার্নেল নিজের কিছু কাজ শুরু করে প্রসেস হিসেবে। তারপর একটা প্রোগ্রাম চালু করে যার নাম init। এরপর init প্রোগ্রামটি /etc ডিরেক্টরিতে থাকা কিছু শেলস্ক্রিপ্ট চালু করে যাদের ইনিটস্ক্রিপ্ট(init script) বলা হয়। এই স্ক্রিপ্টগুলো কিছু সার্ভিস প্রোগ্রাম চালু করে যেগুলো নেটওয়ার্কিংসহ বিভিন্ন বিষয় পরিচালনা করে। এগুলো অধিকাংশই ডেমন(daemon) প্রোগ্রাম অর্থাৎ যাদের ইউজার ইন্টারফেস নেই বরং ব্যাকগ্রাউন্ডে কাজ করে। মানে আমরা যদি লগিন নাও করি কম্পিউটার কিছু কাজকর্মে ব্যস্ত থাকে। এরপর আমরা কোনো প্রোগ্রাম চালালে সেগুলো প্রসেসে যুক্ত হয়। এবং সেই প্রোগ্রামগুলো আরো প্রোগ্রাম তথা প্রসেস চালু করতে পারে। তখন বলা হয় প্যারেন্ট প্রসেস চাইল্ড প্রসেস তৈরী করছে।

কার্নেল প্রত্যেক প্রসেস সম্পর্কে তথ্য রাখে যেন তাদের ঠিকমত ব্যবহার করতে পারে। যেমন প্রত্যেক প্রসেসকে সে একটি নম্বর দিয়ে দেয় যাকে PID বলে। init সবার আগে চালু হয় বলে এর PID হয় 1। তাছাড়াও কোন প্রসেসের কতটুকু মেমরী লাগবে, বা তা চালু হতে প্রস্তুত কিনা এগুলোর খবরও কার্নেলকে রাখতে হয়।

একটা প্রসেস আরো প্রসেস তৈরী করতে পারে। নতুন জন্ম দেয়া প্রসেসটিকে চাইল্ড প্রসেস বলা হয় আর তার জন্মদাতা প্রসেসকে প্যারেন্ট প্রসেস।