simatic-it-preactor-sb-640x360_tcm27-95973

শিডিউলিং

শিডিউলিং 

অপারেটিং সিস্টেমে Scheduling একটি সারি থেকে একটি প্রক্রিয়া নির্বাচন করার প্রক্রিয়া। নির্বাহের জন্য এই প্রক্রিয়াতে CPU বরাদ্দ করা। অপারেটিং সিস্টেম এমনভাবে প্রক্রিয়াগুলি নির্ধারণ করে যাতে CPU নিষ্ক্রিয় না থাকে। 

অপারেটিং সিস্টেম শিডিউলিং সেই প্রক্রিয়াটিকে বোঝায় যার মাধ্যমে অপারেটিং সিস্টেম বিভিন্ন প্রক্রিয়া এবং কাজের জন্য CPU সময়, মেমরি এবং I/O ডিভাইসের মতো সংস্থানগুলি পরিচালনা করে এবং বরাদ্দ করে। সমস্ত প্রক্রিয়া এবং কাজগুলিকে সম্পদের ন্যায্য অংশ দেওয়া হয় এবং সিস্টেমটি প্রতিক্রিয়াশীল এবং দক্ষ থাকে তা নিশ্চিত করার জন্য এটি করা হয়। 

অপারেটিং সিস্টেম দ্বারা ব্যবহৃত বিভিন্ন সময়সূচী অ্যালগরিদম রয়েছে, যার মধ্যে রয়েছে: 

ফার্স্টকাম, ফার্স্টসার্ভড (FCFS): এটি হল সবচেয়ে সহজ শিডিউলিং অ্যালগরিদম, যেখানে প্রস্তুত সারিতে পৌঁছানোর প্রথম প্রক্রিয়াটি প্রথম কার্যকর করা হয়।

শর্টে স্ট জব ফার্স্ট (SJF): এই অ্যালগরিদমটি কার্যকর করার জন্য সবচেয়ে কম প্রত্যাশিত এক্সিকিউশন সময় সহ প্রক্রিয়াটি নির্বাচন করে। 

রাউন্ড রবি ন(Round Robin): এই অ্যালগরিদম প্রতিটি প্রক্রিয়ার জন্য একটি নির্দিষ্ট সময় স্লাইস (কোয়ান্টাম) বরাদ্দ করে, এবং প্রস্তুত সারির মধ্যে দিয়ে চক্রাকারে চলে, প্রতিটি প্রক্রিয়াকে নির্দিষ্ট সময়ের স্লাইসের জন্য চালানোর পালা দেয়। 

অগ্রাধি কার সময়সূচী(Priority Scheduling): এই অ্যালগরিদম প্রতিটি প্রক্রিয়ার জন্য একটি অগ্রাধিকার স্তর নির্ধারণ করে এবং সর্বোচ্চ অগ্রাধিকার সহ প্রক্রিয়াটিকে কার্যকর করার জন্য অগ্রাধিকার দেওয়া হয়। 

মাল্টিলেভেল কিউ শিডিউলিং(Multilevel Queue Scheduling): এই অ্যালগরিদম প্রস্তুত সারিকে একাধিক স্তরে ভাগ করে, প্রতিটি স্তরের জন্য আলাদা অগ্রাধিকার স্তর নির্ধারণ করা হয়। 

মাল্টিলেভেল ফিডব্যাক কিউ শিডিউলিং(Multilevel Feedback Queue Scheduling): মাল্টিলেভেল কিউ শিডিউলিংয়ের মতো, কিন্তু প্রক্রিয়াগুলি তাদের আচরণের উপর ভিত্তি করে সারিগুলির মধ্যে স্থানান্তর করতে পারে। 

প্রতিটি শিডিউলিং অ্যালগরিদমের নিজস্ব শক্তি এবং দর্বুর্বলতা রয়েছে এবং অ্যালগরিদমের পছন্দ অপারেটিং সিস্টেমের নির্দিষ্ট প্রয়োজনীয়তা এবং এটি যে সিস্টেমে চলছে তার উপর নির্ভর করে। 

সময় নির্ধারণের Criteria হল সেই উপাদানগুলি যা একটি অপারেটিং সিস্টেমের সময়সূচী পরবর্তীতে কোন প্রক্রিয়াটি সম্পাদন করতে হবে তা নির্ধারণ করতে ব্যবহার করে। কিছুসাধারণ সময় নির্ধারণের Criteria মধ্যে রয়েছে: 

CPU Utilization: সময়সূচী চালানোর জন্য প্রস্তুত প্রসেসগুলি নির্বাচন করে সিপিইউকে যতটা সম্ভব ব্যস্ত রাখার চেষ্টা করে।

Response Time: Reসময়সূচী একটি প্রতিক্রিয়া তৈরি করতে একটি প্রক্রিয়ার জন্য যে সময় লাগে তা কমানোর চেষ্টা করে। 

Throughput: সময়সূচী প্রতি ইউনিট সময়ে সম্পন্ন হওয়া প্রক্রিয়াগুলির সংখ্যা সর্বাধিক করার চেষ্টা করে। Turnaround Time: সময়সূচী একটি প্রক্রিয়া সম্পূর্ণ হতে মোট সময় কমানোর চেষ্টা করে। 

Waiting Time: সময়সূচী প্রস্তুত সারিতে অপেক্ষা করার সময় একটি প্রক্রিয়া ব্যয় করার পরিমাণ কমানোর চেষ্টা করে। 

Fairness: সময়সূচী নিশ্চিত করার চেষ্টা করে যে প্রতিটি প্রক্রিয়া CPU সময়ের একটি ন্যায্য অংশ পায়। 

বিভিন্ন সময়সূচী অ্যালগরিদম এই বিভিন্ন মানদণ্ডের উপর বিভিন্ন মাত্রার গুরুত্ব রাখে। উদাহরণস্বরূপ, রিয়েল-টাইম সিস্টেমগুলি প্রায়শই অন্যান্য সমস্ত মানদণ্ডের উপরে প্রতিক্রিয়া সময়কে অগ্রাধিকার দেয়, যখন ব্যাচ সিস্টেমগুলি থ্রুপুটকে অগ্রাধিকার দিতে পারে। একটি অপারেটিং সিস্টেমের নির্দিষ্ট প্রয়োজনীয়তা এবং এটি যে সিস্টেমে চলছে তা নির্ধারণ করবে কোন মানদণ্ড সবচেয়ে গুরুত্বপূর্ণ।র্ণ 

সামগ্রিকভাবে, অপারেটিং সিস্টেম শিডিউলিংয়ের লক্ষ্য হল সিস্টেমের কর্মক্ষর্ম মতা optimise করা এবং নিশ্চিত করা যে সমস্ত প্রক্রিয়া এবং কাজগুলি দক্ষতার সাথে এবং ন্যায্যভাবে সম্পাদিত হয়। 

কোন অপারেটিং সিস্টেম পরবর্তী এবং কতদিনের জন্য কোন প্রক্রিয়াটি সম্পাদন করা উচিত তা নির্ধারণ করতে সময় নির্ধারণের অ্যালগরিদম ব্যবহার করে। সময়সূচীর লক্ষ্য হল সিস্টেমের কর্মক্ষর্ম মতা optimise করা, যেমন থ্রুপুট সর্বাধিক করা এবং প্রতিক্রিয়া সময় কম করা। 

সোমা রানী দাস 

বিভাগীয় প্রধান 

ডিপার্টমেন্ট অফ কম্পিউটার টেকনোলজি 

Tags: No tags

Comments are closed.