লিনাক্সে কোন শিডিউলিং অ্যালগরিদম ব্যবহার করা হয়?


11

সম্প্রতি একটি সাক্ষাত্কারে আমাকে লিনাক্স অপারেটিং সিস্টেম দ্বারা ব্যবহৃত শিডিয়ুলিং অ্যালগরিদম সম্পর্কে জিজ্ঞাসা করা হয়েছিল। কোন কারণে কেন ব্যবহৃত হয় অ্যালগরিদম?

এছাড়াও, রিয়েল-টাইম অপারেটিং সিস্টেমে কোন অ্যালগরিদম ব্যবহৃত হয় এবং কেন?


প্রক্রিয়া বা আইও সময়সূচী জন্য? নাকি অন্য কিছু?
ম্যাক্সচলেপজিগ

উত্তর:


7

বর্তমান লিনাক্স টাস্ক শিডিয়ুলারকে বলা হয় কমপ্লিট ফেয়ার শিডিউলার (সিএফএস)। আরও তথ্যের জন্য আপনার http://people.redhat.com/mingo/cfs-scheduler/sched-design-CFS.txt এ নজর দেওয়া উচিত । নকশাটি বেশ জটিল এবং আমার মতে আরটিওএসের জন্য উপযুক্ত নয়।

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


2

আপনি কার্নেলের I / O সময়সূচীটি গ্রহণ করছেন কিনা তা আমি নিশ্চিত নই। আপনি না থাকলে: এই উত্তরটি উপেক্ষা করুন।

উইকিপিডিয়া জানিয়েছে, কার্নেল ২.6.১৮ থেকে সিএফজি (সম্পূর্ণ ফেয়ার কুইউইং) ডিফল্ট।

আমার ওপেনসুএসে (কার্নেল ২.6.৩ running চলছে) আমি সিএফজি, এনওওপি এবং শেষ তারিখের মধ্যে স্যুইচ করতে পারি ।


আমি কৌতূহলী, আমরা কীভাবে একটি আলাদা অ্যালগোরিদম স্যুইচ করতে পারি? আপনি কি এই বিষয়ে কিছু আলোকপাত করতে পারেন? ধন্যবাদ
rsjethani

@rsjethani YaST -> সিস্টেম -> কার্নেল সেটিংস -> ২ য় ট্যাব (কার্নেল সেটিংস) -> গ্লোবাল আইও সিডিউলারে যান। (আমি কোনও জার্মান জিইউআই থেকে অনুবাদ করেছি বলে বিকল্পগুলির নামকরণ আলাদা হতে পারে)
টরবজরন

1

রাউন্ড রবিন অ্যালগরিদম সাধারণত সময় ভাগ করে নেওয়ার পরিবেশে ব্যবহৃত হয়।


0

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

এটি প্রতিটি প্রক্রিয়াটিকে বাস্তব সময় প্রক্রিয়া বা একটি সাধারণ (অন্যান্য) প্রক্রিয়া হিসাবে চিহ্নিত করে। রিয়েল-টাইম টাস্কগুলিকে [0,99] ব্যাপ্তিতে স্থির অগ্রাধিকার অর্পণ করা হয়, যেখানে কম নম্বর উচ্চতর অগ্রাধিকার নির্দেশ করে।

অন্যান্য সমস্ত কার্যগুলিতে [100,139] পরিসরে গতিশীল অগ্রাধিকার রয়েছে, তাদের কার্যকারিতার আন্তঃব্যক্তির উপর ভিত্তি করে যেগুলি তাদের ভাল মানগুলি এবং আরও বিয়োগের উপর ভিত্তি করে 5.। যে কার্যগুলি আরও ইন্টারেক্টিভ হয় সাধারণত দীর্ঘ সময় ঘুমের সময় থাকে এবং তাই এর সম্ভাবনা বেশি থাকে সময়সূচী ইন্টারেক্টিভ কাজের পক্ষে হিসাবে, −5 এর কাছাকাছি সামঞ্জস্য আছে। (কোনও টাস্কের ইন্টার্যাকটিভিটি আই / ও এর অপেক্ষার সময় কতক্ষণ ঘুমোচ্ছিল তা দ্বারা নির্ধারিত হয়)) কোনও কার্যের আন্তঃক্রিয়াশীলতা নির্ধারণ করে যে 5 মানটি যোগ করা হবে বা সুন্দর মান থেকে বিয়োগ করা হবে কিনা। এই জাতীয় সমন্বয়ের ফলাফল এই কাজের জন্য উচ্চ অগ্রাধিকার হবে। বিপরীতে, কম ঘুমের সময়গুলি সহ কার্যগুলি প্রায়শই বেশি সিপিইউযুক্ত এবং তাই তাদের অগ্রাধিকারগুলি হ্রাস পাবে।

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

কোনও কার্যের গতিশীল অগ্রাধিকারটি পুনরায় গণনা করা হয় যখন কার্যটির সময় পরিমাণটি শেষ হয়ে যায় এবং মেয়াদোত্তীর্ণ অ্যারেতে স্থানান্তরিত হয়। সুতরাং, যখন দুটি অ্যারে আদান প্রদান করা হয়, নতুন সক্রিয় অ্যারেতে সমস্ত কার্যকে নতুন অগ্রাধিকার এবং একই সময়ের স্লাইসগুলি অর্পণ করা হয়েছে। (দ্রষ্টব্য: এটি আব্রাহাম সিলবারস্যাটজ রচিত অপারেটিং সিস্টেম কনসেপ্টস (নবম সংস্করণ) বইয়ের একটি অংশ, ইত্যাদি। বিশদর জন্য দয়া করে এই বইয়ের 5.5.3 অনুচ্ছেদটি দেখুন)


সাইটে আপনাকে স্বাগতম এবং আপনার অবদানের জন্য আপনাকে ধন্যবাদ। >আপনার উত্তরের সেই অংশগুলির জন্য দয়া করে "উদ্ধৃতি" বিন্যাস (অর্থাত্ লাইনগুলি শুরু করুন ) ব্যবহার করুন যা আপনি কোনও বাহ্যিক উত্স থেকে গ্রহণ করেছেন, বিশেষত কোনও বইয়ের উদ্ধৃতি দেওয়ার সময়।
এডমিনবি

0

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.