سؤال

أنا أعمل على محمل التمهيد على x86 آلة.

عندما BIOS نسخ محتويات MBR إلى 0x7c00 ويقفز إلى هذا العنوان ، هل هناك معيار معنى محتويات السجلات?هل السجلات القياسية القيم ؟

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

هل كانت مفيدة؟

المحلول

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

من نظام التشغيل ديف ويكي, حيث كنت الحصول على المعلومات عندما ألعب مع بلدي لعبة OS

نصائح أخرى

أفضل خيار هو أن نفترض أي شيء.إذا كان لديهم معنى, سوف تجد أنه من الجانب الآخر عندما كنت في حاجة إلى المعلومات التي تقدمها.

غير معروف, ما أعتقد ؟ أعتقد أن هذا يعتمد على اللوحة الأم وحدة المعالجة المركزية ، وينبغي أن تعامل على أنها عشوائية لمصلحتك.

الرهان الأكثر أمانا هو أن نفترض غير معروف.

تفترض دائما undefined, وإلا فإنك سوف تصل سيئة مشاكل إذا كنت من أي وقت مضى في محاولة ميناء أبنية.

لا يوجد شيء تماما مثل آلام ترقية البرمجية التي تتحمل كل شيء غير مهيأ سيتم تعيين إلى صفر.

الشيء الوحيد الذي أعرفه أن تكون محددة تحديدا جيدا هو المعالج الدولة فورا بعد إعادة تعيين.

للعلم يمكنك أن تجد أن في إنتل مطور برامج دليل المجلد 3 الفصل 8:"معالج إدارة التهيئة" في الجدول بعنوان "IA-32 معالج الدول التالية السلطة حتى إعادة تعيين أو الحرف الأول"

يمكنك دائما تهيئة لهم على نفسك أن تبدأ مع الدولة المعروفة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top