क्या दो-स्तरीय शेड्यूलर केवल स्वैपिंग को प्रबंधित करने के लिए उपयोगी हैं?


10

दो-स्तरीय शेड्यूलिंग तब उपयोगी होती है जब कोई सिस्टम RAM में फिट होने से अधिक प्रक्रियाएं चला रहा हो: एक निम्न-स्तरीय शेड्यूलर निवासी प्रक्रियाओं के बीच स्विच करता है, और एक उच्च-स्तरीय शेड्यूलर इन और आउट प्रक्रियाओं के समूहों को स्वैप करता है।

मुझे एंड्रयू टेनबाम के ऑपरेटिंग सिस्टम में दो-स्तरीय शेड्यूलिंग का कोई अन्य उल्लेख नहीं मिला है : डिजाइन और कार्यान्वयन , 1 एड। अभ्यास 2.22 पूछता है कि दो-स्तरीय शेड्यूलिंग का उपयोग क्यों किया जा सकता है; मुझे नहीं पता कि यह रीडिंग कॉम्प्रिहेंशन चेक के रूप में है या टेक्स्ट में प्रमुखता से उल्लेख नहीं किए जाने के अन्य कारण हैं।

क्या स्मृति के अलावा अन्य संसाधन सामग्री को प्रबंधित करने के लिए दो-स्तरीय शेड्यूलिंग उपयोगी है?


1
यह कैश और डिस्क IO के लिए अच्छा हो सकता है, लेकिन यह "मेमोरी के अलावा" नहीं है।
राफेल

जैसा कि @ राफेल कहते हैं, लेकिन दूसरे शब्दों में, यह थ्रशिंग से बचता है / कम करता है।
डेव क्लार्क

जवाबों:


8

आपके द्वारा वर्णित प्रकार की तुलना में दो-स्तरीय शेड्यूलिंग के अन्य रूप हैं। उदाहरण के लिए, शेड्यूलिंग का एक स्तर प्रति-उपयोगकर्ता हो सकता है और दूसरा प्रति-प्रक्रिया हो सकता है, जिसका लक्ष्य 20 प्रक्रियाओं वाले उपयोगकर्ता को 1 प्रक्रिया वाले उपयोगकर्ता के समान CPU समय देना है। एकल-स्तरीय शेड्यूलर के साथ, प्रत्येक प्रक्रिया में CPU समय का 1/21 हो सकता है।

दो-स्तरीय शेड्यूलिंग का एक अन्य रूप प्रति-प्रक्रिया और प्रति-सूत्र हो सकता है, जिसका लक्ष्य 1 थ्रेड के साथ एक प्रक्रिया के रूप में सीपीयू समय की 20 मात्रा के साथ एक प्रक्रिया देना है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.