কম্পিউটার টিউটোরিয়াল

C++-এ একটি সিস্টেম হ্যান্ডল করতে পারী জম্বি প্রসেসের সর্বোচ্চ সংখ্যা


দেওয়া কাজ হল একটি সিস্টেম যে সর্বোচ্চ কতগুলো জম্বি প্রসেস হ্যান্ডল করতে পারে তা খুঁজে বের করা বা অন্য কথায়, প্রোগ্রামটি এক্সিকিউশন বন্ধ করে না।

একটি জম্বি প্রসেস (যাকে ডিফাঙ্ক্ট প্রসেসও বলা হয়) হল এমন একটি প্রসেস যা exit() সিস্টেম কল দিয়ে তার এক্সিকিউশন শেষ করেছে কিন্তু প্রসেস টেবিলে এখনো এর এন্ট্রি আছে।

প্রোগ্রামে ব্যবহৃত পদ্ধতি

  • প্রোগ্রাম রান করার জন্য <unistd.h> যোগ করা আবশ্যক।

  • main() ফাংশনে num = 0 ইন্টিজার আরম্ভ করুন जिसे প্রোগ্রাম এক্সিকিউশন বন্ধ না হওয়া পর্যন্ত বাড়াতে থাকব।

  • একটি জম্বি প্রসেস শুরু করার জন্য একটি while স্টেটমেন্ট তৈরি করুন কন্ডিশন সহ - while( fork() > 0 )

    Fork() সিস্টেম কল একটি নতুন প্রসেস শুরু করতে ব্যবহৃত হয় যাকে চাইল্ড প্রসেস বলা হয় যা কনকারেন্টলি রান করে এবং fork() কলটিকে (যা পেরেন্ট প্রসেস) তৈরি করে।

  • while লুপের ভেতরে num বাড়ান এবং প্রিন্ট করুন।

C++ প্রোগ্রাম উদাহরণ

#include<iostream>
#include<unistd.h>
using namespace std;

int main(){
    int num = 0;
    while (fork() > 0){
        num++;
        cout<<num<<" ";
    }
}

আউটপুট

উপরের কোড রান করলে নিচের আউটপুট मिलবে -

C++-এ একটি সিস্টেম হ্যান্ডল করতে পারী জম্বি প্রসেসের সর্বোচ্চ সংখ্যা

উপরের আউটপুটে num ৯৩-এ বেড়ার বন্ধ হয়েছে। কিন্তু এই সংখ্যা ফিক্সড নয় এবং সিস্টেম কনফিগারেশনের উপর নির্ভর করে পরিবর্তিত হতে পারে।

  1. C++-এ সেভেন সেগমেন্ট ডিসপ্লেতে N সেগমেন্ট দিয়ে প্রদর্শনযোগ্য সর্বোচ্চ সংখ্যা

  2. C++-এ একটি সিস্টেম হ্যান্ডল করতে পারী জম্বি প্রসেসের সর্বোচ্চ সংখ্যা

  3. C++-এ N কাটা দিয়ে সর্বোচ্চ টুকরো বের করা

  4. C++-এ কণকোণী সমদ্বিবাহু ত্রিভুজে ফিট হতে পারা ম্যাক্সিমাম বর্গের সংখ্যা