यदि आपने कभी किसी पुराने कंप्यूटर गेम को आधुनिक सिस्टम पर चलाने और चलाने की कोशिश की है, तो आपको संभावना है कि कैसे तेज खेल चला। पुराने गेम आधुनिक हार्डवेयर पर नियंत्रण से बाहर क्यों होते हैं?
इससे पहले आज हम आपको दिखाया गया है कि आधुनिक कंप्यूटर पर पुराने सॉफ़्टवेयर को कैसे चलाना है ; आज का प्रश्न और उत्तर सत्र एक अच्छी प्रशंसा है जो कुछ पुराने सॉफ़्टवेयर (विशेष रूप से गेम) में खो जाती है, जब आप उन्हें आधुनिक हार्डवेयर पर चलाने का प्रयास करते हैं तो कभी भी सही काम नहीं करते हैं।
आज का प्रश्न और उत्तर सत्र सुपरयूज़र के सौजन्य से आता है - स्टैक एक्सचेंज का एक उपखंड, जो कि क्यू एंड ए वेब साइटों का एक समुदाय-संचालित समूह है।
प्रश्न
सुपरयूजर रीडर ट्रेक जानना चाहता है कि पुराने कंप्यूटर गेम नए हार्डवेयर पर तेजी से क्यों चलते हैं:
मुझे कुछ पुराने प्रोग्राम मिले हैं, जिन्हें मैंने 90 के दशक के शुरुआती विंडोज़ कंप्यूटर से निकाला था और उन्हें अपेक्षाकृत आधुनिक कंप्यूटर पर चलाने की कोशिश की थी। दिलचस्प रूप से पर्याप्त है, वे तेज गति से धधकते हुए दौड़ते हैं - नहीं, 60 फ्रेम प्रति सेकंड के तेज नहीं, बल्कि ओह-माय-गॉड-ए-कैरेक्टर-इज़-वॉकिंग-ऑफ-द-स्पीड-द-साउंड तरह के तेज। मैं एक तीर कुंजी दबाऊंगा और पात्र का स्प्राइट स्क्रीन पर सामान्य से बहुत तेज गति से जिप करेगा। खेल में समय की प्रगति की तुलना में बहुत तेजी से हो रहा था। यहां तक कि कार्यक्रम भी बनाए गए हैं अपने सीपीयू को धीमा करें ताकि ये खेल वास्तव में खेलने योग्य हों।
मैंने सुना है कि यह सीपीयू चक्रों, या कुछ इस तरह के खेल से संबंधित है। मेरे प्रश्न हैं:
- पुराने खेल ऐसा क्यों करते हैं, और वे इसके साथ कैसे दूर हो गए?
- कैसे नए खेल नहीं यह करते हैं और सीपीयू आवृत्ति के स्वतंत्र रूप से चलाते हैं?
तो कहानी क्या है? क्यों वास्तव में पुराने खेल में स्प्राइट स्क्रीन पर इतनी तेजी से धधकते हैं कि खेल अचूक हो जाता है?
उत्तर
सुपरमैन योगदानकर्ता जर्नीमैन गीक इसे तोड़ देता है:
मेरा मानना है कि उन्होंने माना कि सिस्टम क्लॉक एक विशिष्ट दर पर चलेगा, और उनकी आंतरिक टाइमर में उस घड़ी की दर से बंधा होगा। इन खेलों में से अधिकांश शायद डॉस पर चले, और थे वास्तविक मोड (पूर्ण, प्रत्यक्ष हार्डवेयर पहुंच के साथ) और मान लिया कि आप एक चला रहे थे iirc पीसी के लिए 4.77 मेगाहर्ट्ज सिस्टम और जो भी मानक प्रोसेसर है वह मॉडल अमिगा जैसी अन्य प्रणालियों के लिए चला।
उन्होंने उन अनुमानों के आधार पर चतुर शॉर्टकट भी लिया, जिनमें कार्यक्रम के अंदर आंतरिक समय के छोरों को न लिखकर संसाधनों की थोड़ी बचत करना शामिल है। वे भी उतनी ही प्रोसेसर शक्ति लेते थे, जितनी कि धीमी गति के दिनों में एक सभ्य विचार था, अक्सर निष्क्रिय रूप से ठंडा चिप्स!
शुरू में अलग-अलग प्रोसेसर की गति को प्राप्त करने का एक तरीका अच्छा पुराना था टर्बो बटन (जो आपके सिस्टम को धीमा कर देता है)। आधुनिक अनुप्रयोग संरक्षित मोड में हैं और ओएस संसाधनों का प्रबंधन करने के लिए जाता है - वे नहीं करेंगे अनुमति कई मामलों में प्रोसेसर के सभी का उपयोग करने के लिए एक डॉस एप्लिकेशन (जो वैसे भी 32-बिट सिस्टम पर एनटीवीडीएम में चल रहा है)। संक्षेप में, OSes के पास API के रूप में स्मार्ट हो गए हैं।
भारी आधारित है Oldskool PC पर यह मार्गदर्शिका जहां तर्क और स्मृति मुझे विफल रही - यह एक महान पढ़ा गया है, और शायद "क्यों" में अधिक गहराई तक जाता है।
सामान की तरह CPUkiller अपने सिस्टम को "धीमा" करने के लिए यथासंभव संसाधनों का उपयोग करें, जो अक्षम है। आप का उपयोग करना बेहतर होगा DOSBox आपके एप्लिकेशन द्वारा देखी जाने वाली घड़ी की गति का प्रबंधन करने के लिए।
यदि आप इस बारे में उत्सुक हैं कि शुरुआती कंप्यूटर गेमों में वास्तविक कोड कैसे लागू किया गया था (और वे किसी तरह के इम्यूलेशन प्रोग्राम में सैंडबॉक्स किए बिना आधुनिक सिस्टम के लिए खराब तरीके से अनुकूल क्यों हैं), तो हम यह भी जांचने का सुझाव देते हैं इस लंबी लेकिन प्रक्रिया का दिलचस्प टूटना एक और सुपरयूजर जवाब में।
स्पष्टीकरण में कुछ जोड़ना है? टिप्पणियों में ध्वनि बंद। अन्य टेक-सेवी स्टैक एक्सचेंज उपयोगकर्ताओं से अधिक जवाब पढ़ना चाहते हैं? पूरी चर्चा धागा यहाँ देखें .