किसी प्रक्रिया के लिए "रीयलटाइम" प्राथमिकता के लिए क्या उपयोग है?


12

मेरे अनुभव में, किसी भी प्रक्रिया को रियलटाइम पर सेट करने से आपके कंप्यूटर की गति धीमी हो जाएगी। यदि यह आपके कंप्यूटर को अनुपयोगी बना देता है, तो इस सेटिंग का क्या उपयोग है?


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

जवाबों:


7

वास्तव में आप क्या वर्णन करते हैं, अपने कंप्यूटर के बाकी हिस्सों को एक क्रॉल तक धीमा करने की कीमत पर यह वास्तविक समय में प्रक्रिया को चलाता है जो इसे बाकी सब से अधिक प्राथमिकता देता है। यह केवल समय-महत्वपूर्ण अनुप्रयोगों के लिए आवश्यक है, अधिकांश लोग अपने दैनिक जीवन में इन्हें नहीं देखते हैं ...


कुछ बहुत ही सामान्य प्रोग्राम, जैसे ध्वनि सर्वर (पल्सएडियो और दो लिनक्स उदाहरण के रूप में जैक), वास्तविक समय प्राथमिकता वाले थ्रेड का उपयोग करते हैं।
user1686

@grawity: JACK एक सर्वर नहीं है, बल्कि सिर्फ एक डेवलपमेंट किट है। दोनों क्रॉस-प्लेटफॉर्म हैं। अच्छी बात यह है कि उस ऑडियो सामग्री के लिए वास्तविक समय की प्राथमिकता की आवश्यकता होती है, लेकिन मैं विंडोज 7 के दृष्टिकोण से बात कर रहा था, जहां आपके द्वारा निर्दिष्ट इन प्रक्रियाओं को वास्तविक समय प्राथमिकता नहीं मिलती है। विंडोज ने कुछ इस तरह की प्रक्रियाओं के लिए मल्टीमीडिया क्लास शेड्यूलर कहा है ...
तमारा विजसमैन

jackdध्वनि सर्वर नहीं तो क्या है ? (जो मैं अब तक समझ रहा हूं, उससे पीए और जैक दोनों एक ही तरह से काम करते हैं, जिसमें वे एक ध्वनि सर्वर और इसे एक्सेस करने के लिए एक लाइब्रेरी / किट दोनों प्रदान करते हैं ...)
user1686

यह किट को अचानक सर्वर नहीं बनाता है। हम यहां प्रक्रियाओं के बारे में बात कर रहे हैं, धागे के बारे में नहीं ...
तमारा विज्समैन

1
रियल-टाइम ऐप्स के अन्य उदाहरण मेडिकल ऐप और सीधे नियंत्रित रोबोटिक्स हैं। चीजें जहां 10 failures सही संचालन और विफलता के बीच का अंतर है (जहां विफलता में कुछ रोबोट ड्राइविंग कर सकते हैं जिसमें एक चट्टान या एक रोगी बहुत अधिक विकिरण के संपर्क में है)।
ligos

2

यह अनावश्यक लग सकता है लेकिन जब एक प्रक्रिया शुरू की जाती है, तो ऐसे पैरामीटर पारित किए जा सकते हैं जो प्रक्रिया को प्राथमिकता के विभिन्न स्तरों पर चलाने के लिए निर्धारित करते हैं। टास्क मैनेजर इसे एक वैकल्पिक सेटिंग के रूप में दिखाता है क्योंकि यह एक विकल्प है जो उस सॉफ़्टवेयर द्वारा प्रक्रिया के लिए सेट किया जा सकता है जिसने इसे निष्पादित किया है। अधिकांश सॉफ़्टवेयर "सामान्य" स्तर के अंतर्गत चलते हैं, लेकिन कभी-कभी आप कुछ ऐसे भी देख सकते हैं जो डिफ़ॉल्ट रूप से निचले स्तर पर चल रहे हैं। मैंने कभी ऐसा सॉफ्टवेयर नहीं देखा है जो उपरोक्त सामान्य अवस्था में शुरू होता है।

यह भी ध्यान देने योग्य है कि एक ऐसा मामला है जब कोई प्रक्रिया उच्चतम प्राथमिकता सेटिंग पर चल सकती है और यह आपके सिस्टम के प्रदर्शन को बहुत प्रभावित नहीं करती है। उदाहरण के लिए, यदि कोई प्रक्रिया शुरू की जाती है और उसे 8 सीपीयू कोर में से केवल 1 पर काम करने का काम सौंपा जाता है, तो प्रक्रियाओं को "वास्तविक समय" के लिए प्राथमिकता देने का मतलब होगा कि यह एक प्रोसेसर का उपभोग करेगा, जिससे 7 का उपयोग किया जाएगा। ओएस और किसी भी अन्य सॉफ्टवेयर। इस मामले में, वास्तविक समय निष्पादन प्रणाली पर लगभग कोई प्रभाव नहीं डाल सकता है, लेकिन उच्च प्राथमिकता प्रक्रिया के लिए एक उचित प्रदर्शन टक्कर देता है।

मैं सिस्टम मैनेजर के भीतर से "वास्तविक समय" में चलने के लिए एक प्रक्रिया को मैन्युअल रूप से सेट करने की अनुशंसा लगभग कभी नहीं करूंगा। ऐसा इसलिए है क्योंकि आप एक ऐसी प्रक्रिया के लिए निष्पादन सेटिंग्स बदल रहे हैं जो एक विशिष्ट निष्पादन स्थिति के तहत संचालित करने के लिए डिज़ाइन की गई हो सकती है। निष्पादन की प्राथमिकता में परिवर्तन, कुछ मामलों में, एप्लिकेशन को क्रैश कर सकता है और यदि यह डेटा-राइट ऑपरेशन है, तो संभवतः आपके डेटा को दूषित कर सकता है!

हालांकि, कुछ ऐसे मामले हैं जहां एक प्रक्रिया के लिए अधिकतम निष्पादन प्राथमिकता सेटिंग का उपयोग करना सही बात हो सकती है, लेकिन फिर भी, इस तरह की प्राथमिकता सेटिंग्स को नियंत्रण एप्लिकेशन द्वारा निर्धारित किया जाना चाहिए और सिस्टम प्रबंधन संवाद के माध्यम से अंतिम उपयोगकर्ता द्वारा नहीं।

मैं, व्यक्तिगत रूप से, कभी भी कार्य प्राथमिकता को बदलने की सिफारिश नहीं करूंगा जब तक कि आप वास्तव में परवाह नहीं करते हैं यदि यह दुर्घटनाग्रस्त हो जाता है और कार्य पूरी तरह से गैर-महत्वपूर्ण है। यदि सॉफ़्टवेयर दस्तावेज़ीकरण में स्पष्ट रूप से कहा गया है कि आप प्रोसेसर के काम के एक बहुत बड़े भार को तेज करने के लिए तेज गति से चलाने के लिए प्रक्रिया को बढ़ा सकते हैं, तो वह भी स्वीकार्य होगा, हालांकि, एक तंत्र से अगर मुझे थोड़ा संदेह होगा आवेदन के भीतर प्रदान नहीं किया गया है।

एक व्यक्तिगत उपाख्यान के रूप में, केवल एक प्रक्रिया है जिसे मैं कभी-कभी मैन्युअल रूप से बदल देता हूं - सॉफ्टवेयर संपीड़न अनुप्रयोग। मुझे लंबे समय में एक बड़े पैमाने पर फाइल को अनज़िप नहीं करना पड़ा है, लेकिन मैंने पाया है कि अगर मैं जल्दबाज़ी में हूं ( अहम होने के कारण अधीर हो रहा हूं) तो मैं इस प्रक्रिया को प्राथमिकता दे सकता हूं और प्रदर्शन में मामूली उछाल ला सकता हूं। चूँकि ये अनुप्रयोग एक कार्य कार्य शुरू करते हैं, और तब समाप्त होने पर वे बंद हो जाते हैं, मुझे अपनी प्रोसेसर सेटिंग्स को परेशान करने के बारे में चिंता करने की आवश्यकता नहीं है क्योंकि जब अनुप्रयोग डेटा को निकालना समाप्त हो जाता है, तो यह अपने आप ही बंद हो जाएगा। यह एकमात्र समय है जब मैंने सिस्टम प्रबंधन के माध्यम से प्रोसेसर की गति को नियंत्रित करने के लिए इसे व्यक्तिगत रूप से उपयोगी पाया है।


1
एक प्रोग्रामर के रूप में मैं संभवत: ऐसी स्थिति के बारे में नहीं सोच सकता, जहां किसी प्रोग्राम को अधिक संसाधन देने से यह दुर्घटनाग्रस्त हो जाए
TheLQ

एक प्रोग्रामर के रूप में, हाँ, लेकिन एक विशिष्ट स्तर पर चलाने के लिए एक प्रक्रिया सेट करना समस्या का कारण बन सकता है, खासकर अगर सॉफ्टवेयर अन्य प्रक्रियाओं के साथ समवर्ती चलाने के लिए लिखा गया था (संभवतः खराब भी)। मेरे सुझाव दोनों अनुभव और एक समझ के साथ आते हैं जो सभी उपयोगकर्ता डेवलपर्स नहीं हैं। चल रही प्रक्रियाओं की प्राथमिकताओं को निर्धारित करना, जो आपने विकसित नहीं किए हैं, निश्चित रूप से अप्रत्याशित व्यवहार को समाप्त कर सकते हैं। मैं किसी को भी डराना नहीं चाहता, हालांकि, मैं अन्य उपयोगकर्ताओं को प्रक्रिया सेटिंग्स के साथ गड़बड़ करने के लिए प्रोत्साहित नहीं करना चाहता अगर कोई मौका है कि उनके परिवर्तन हानिकारक हो सकते हैं।
RLH

0

मैं अपने गैर-गेमिंग लैपटॉप पर गेम को गति देने के लिए रियल टाइम प्राथमिकता का उपयोग करता हूं। जब मैं खेल में होता हूं तो मुझे पृष्ठभूमि की प्रक्रिया की परवाह नहीं होती है और मुझे अपनी प्रोसेसिंग पावर को इस तरह से आवंटित करने में बहुत अधिक सुखद अनुभव मिलता है।

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