الصفحة الرئيسية » howto » لماذا تسير الألعاب القديمة بسرعة كبيرة على أجهزة الكمبيوتر الحديثة؟

    لماذا تسير الألعاب القديمة بسرعة كبيرة على أجهزة الكمبيوتر الحديثة؟

    إذا حاولت من أي وقت مضى الحصول على لعبة كمبيوتر قديمة وتشغيلها على نظام حديث ، فمن المحتمل أن تكون قد صدمت بكيفية ذلك بسرعة ركض اللعبة. لماذا تخرج الألعاب القديمة عن السيطرة على الأجهزة الحديثة?

    في وقت سابق من اليوم ، أظهرنا لك كيفية تشغيل البرامج القديمة على أجهزة الكمبيوتر الحديثة. جلسة الأسئلة والأجوبة اليوم هي مجاملة لطيفة تحفر لماذا لا يبدو أن بعض البرامج القديمة (الألعاب تحديدًا) تعمل بشكل صحيح عند محاولة تشغيلها على الأجهزة الحديثة.

    تأتي جلسة الأسئلة والأجوبة اليوم مقدمة من SuperUser-a subdivision of Stack Exchange ، وهي مجموعة مجتمعية مدفوعة من مواقع Q & A.

    السؤال

    يريد قارئ TREK المؤلف من SuperUser معرفة سبب تشغيل ألعاب الكمبيوتر القديمة بسرعة فائقة على الأجهزة الجديدة:

    لقد حصلت على بعض البرامج القديمة التي قمت بإنشائها على كمبيوتر يعمل بنظام Windows في وقت مبكر من التسعينيات وحاولت تشغيلها على كمبيوتر حديث نسبياً. من المثير للإهتمام ، أنها ركضت بسرعة مذهلة - لا ، ليس 60 إطارًا في الثانية ، نوعًا سريعًا ، بل هو نوع من السرعة في الصوت بسرعة. وأود أن اضغط على مفتاح سهم ، ورمز الحرف الخاص بك عبر الشاشة أسرع من المعتاد. كان تقدم الوقت في اللعبة أسرع بكثير مما ينبغي. حتى أن هناك برامج مصممة لإبطاء وحدة المعالجة المركزية الخاصة بك بحيث يمكن لعب هذه الألعاب بالفعل.

    لقد سمعت أن هذا مرتبط باللعبة حسب دورات المعالج ، أو شيء من هذا القبيل. أسئلتي هي:

    • لماذا تفعل الألعاب القديمة هذا ، وكيف أفلتت من ذلك?
    • كيف الألعاب الأحدث ليس القيام بذلك وتشغيلها بشكل مستقل عن تردد وحدة المعالجة المركزية?

    إذن ما هي القصة؟ لماذا بالضبط تتكاثر النقوش المتحركة في الألعاب القديمة عبر الشاشة بسرعة وتصبح اللعبة غير قابلة للتشغيل?

    الاجابة

    مساهم SuperUser JourneymanGeek يكسره:

    أعتقد أنهم افترضوا أن ساعة النظام ستعمل بمعدل محدد ، وتعادل في توقيتها الداخلي إلى معدل الساعة. معظم هذه الألعاب على الأرجح ركضت على دوس ، وكان الوضع الحقيقي (مع وصول الأجهزة ، كاملة ومباشرة) ويفترض أنك كانت تدير IIRC نظام 4.77 ميغاهرتز لأجهزة الكمبيوتر وأيا كان معيار المعالج الذي ركض النموذج لأنظمة أخرى مثل أميغا.

    كما أخذوا اختصارات ذكية مبنية على هذه الافتراضات بما في ذلك توفير القليل من الموارد من خلال عدم كتابة حلقات التوقيت الداخلية داخل البرنامج. كما أنها استوعبت الكثير من قوة المعالج قدر استطاعتها - والتي كانت فكرة جيدة في أيام الرقائق البطيئة ، والتي غالباً ما تبرد بشكل سلبي!

    في البداية كانت إحدى الطرق للتغلب على سرعة المعالج المختلفة هي زر Turbo القديم الجيد (الذي أدى إلى إبطاء النظام). التطبيقات الحديثة في الوضع المحمي ويميل نظام التشغيل إلى إدارة الموارد - لم يفعلوا ذلك السماح تطبيق DOS (الذي يعمل في NTVDM على نظام 32 بت على أي حال) لاستخدام كافة المعالج في كثير من الحالات. باختصار ، لقد حصلت أنظمة تشغيل أكثر ذكاءً ، مثلها مثل واجهات برمجة التطبيقات.

    يعتمد بشكل كبير على هذا الدليل على Oldskool PC حيث فشل المنطق والذاكرة لي - إنها قراءة رائعة ، وربما تذهب إلى عمق أكبر في "لماذا".

    تستخدم أشياء مثل CPUkiller أكبر عدد ممكن من الموارد "لإبطاء" النظام الخاص بك ، وهو غير فعال. سيكون من الأفضل استخدام DOSBox لإدارة سرعة الساعة التي يراها التطبيق.

    إذا كنت متشوقًا بشأن كيفية تنفيذ الشفرة الفعلية في ألعاب الكمبيوتر المبكرة (ولماذا تتكيف بشكل سيئ جدًا مع الأنظمة الحديثة دون أن يتم وضع الحماية في نوع ما من برامج المحاكاة) ، فإننا نقترح أيضًا التحقق من هذا التعطيل الطويل والمثير للاهتمام العملية في إجابة أخرى لـ SuperUser.


    هل لديك شيء تضيفه إلى الشرح؟ الصوت قبالة في التعليقات. هل ترغب في قراءة المزيد من الإجابات من مستخدمي Stack Exchange الآخرين المحترفين بالتكنولوجيا؟ تحقق من موضوع المناقشة الكامل هنا.