चेतावनी: मेरा प्रश्न अधिक सैद्धांतिक और कम व्यावहारिक है। दुर्भाग्यवश, मैंने इसके बारे में ज्यादा जानकारी खोजी नहीं है।
शैक्षिक उद्देश्यों के लिए कुछ मूल एमआईपीएस32 विधानसभा प्रोग्रामिंग शुरू करने के बाद, मुझे कुछ समझ में नहीं आ रहा है: यदि कोई एमआईपीएस विधानसभा में एक कार्यक्रम लिखता है, और यह प्रोग्राम एमआईपीएस मल्टीटास्किंग ऑपरेटिंग सिस्टम पर चलाया जाता है, प्रक्रिया शेड्यूलिंग कैसे काम करता है?
1) उदाहरण के लिए, एक मल्टीटास्किंग वातावरण में, जब किसी अन्य प्रक्रिया में स्विच होना चाहिए, तो क्या ओएस मे मेमोरी में कहीं रजिस्टरों के मूल्यों को स्टोर करता है और फिर रजिस्टरों को पोंछता है ताकि अगली प्रक्रिया उनका उपयोग कर सके? 2) रजिस्टरों का उचित उपयोग क्या है? क्या किसी भी समय मेरे निपटान में सभी अस्थायी रजिस्टरों ($ t0- $ t7) हैं? क्या मैं जब भी चाहूं तो कुछ अन्य रजिस्टरों का उपयोग कर सकता हूं?
1), हाँ, से स्विच करते समय बी को संसाधित करने के लिए प्रक्रिया ए, ओएस को ए के रजिस्टरों को मेमोरी में स्टोर करना है और यह बी के रजिस्टरों को एक समान भंडारण स्थान से पुनर्स्थापित करता है।
इस वजह से, एक प्रक्रिया में यह भ्रम है कि यह पूरी तरह से नियंत्रण में है प्रोसेसर का पूरा रजिस्टर सेट; एमआईपीएस पर सभी सामान्य प्रयोजन रजिस्टरों का उपयोग प्रक्रिया द्वारा उपयोग किया जा सकता है, लेकिन यह (26 और 27 रजिस्टरों के अपवाद के साथ जो कि कर्नेल के लिए आरक्षित है) के लिए उपयोग किया जा सकता है। अस्थायी मूल्यों के लिए रजिस्टरों के लिए और अधिक जटिल सम्मेलनों हैं और ऐसा इसलिए है कि एक प्रक्रिया में कार्य ठीक से सहयोग कर सकते हैं, मूल्यों को पार कर सकते हैं और एक दूसरे के रजिस्टरों पर कदम नहीं उठा सकते हैं।
एबीआई पर किरकिरा विवरण यहां पा सकते हैं :
Comments
Post a Comment