كيف يمكنني حجز ذاكرة منخفضة (ما قبل نظام التشغيل)؟

StackOverflow https://stackoverflow.com/questions/126689

  •  02-07-2019
  •  | 
  •  

سؤال

خلفية: أحتاج إلى حجز مقدار من الذاكرة أقل من 0xA0000 قبل بدء تشغيل نظام التشغيل الخاص بي.للقيام بذلك قمت بتغيير 0040:0013 (أو 0x413) كلمة وهي مقدار الذاكرة المنخفضة المتوفرة في KiB.

ومع ذلك، يستخدم Windows وأنظمة التشغيل الأخرى E820h/INT15h للاستعلام عن تخطيط الذاكرة وبعض BIOS:es لا يعكس تغييرات 0x413 في وظيفة E820h/INT15h BIOS.لذلك لا بد لي أيضًا من توصيل وظيفة E820h إذا لزم الأمر.

سؤال: هل هناك طريقة أخرى (أكثر موثوقية) لحجز ذاكرة منخفضة قبل نظام التشغيل؟أو أي طريقة أخرى لتغيير نتائج E820h/INT15h بخلاف ربط INT15h (ربما عن طريق دس EBDA؟)

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

المحلول

لا أعتقد ذلك، ولكن إذا كنت لا تستخدم أداة تحميل التشغيل، فيمكنك جعل نظام التشغيل افتراضيًا.يمكنك إلقاء نظرة على برنامج Xen Hypervisor لذلك.

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