اقدم لكم فى هذا الدرس ان شاء الله درس خفيف وبسيط وتفصيلى للمقاطعات فى الوضع المحمى
المقاطعات فى الوضع المحمى
عملية عنونة المقاطعات فى النمط المحمى من ناحية النتيجة لا تختلف عنها فى النمط الحقيقى ولكن الية عنونة والوصول الى المقاطعات هى الية مختلفة فكما نعرف فى الوضع الحقكان لدينا جدول بأشعة المقاطعات ويحتوى هذا الجدول على عناوين البرامج ل 256 مقاطعة فى الحاسب وهو جدول أشعة المقاطعات ولكل حقل من حقول هذه الجداول كانت بحجم 32 خانة , 16 خانة للمقطع الموجود فيه برنامج خدمة المقاطعة و16 خانة للازاحة التى يبدأ عندها برنامج خدمة المقاطعة . أما فى النمط المحمى فالبنية العامة اختلفت واصبح لدينا عوضا عن جدول أشعة المقاطعات فأصبح جدولا بواصفات المقاطعات (IDTR) ويحتوى هذا الجدول على 25 مقاطعة ايضا ويعتمد هذا الجدول فى عنونة المقاطعات على الية عنونة للمقاطعات فى النمط المحمى اى على البنية GDT
كل حقل من حقول واصفات المقاطعات حجمه 8 بايت تماما مثل جدول واصفات المقاطع وبالتالى لكى نصل الى الواصف المطلوب من خلال رقم المقاطعة فعلينا ضرب رقم المقاطعة ب8 ومن ثم يقوم المعالج بجمع الناتج بالعنوان المخزن فى المؤشر الذى يشير الى جدول المقاطعات IDTR وبهذا نكون وصلنا للواصفة ضمن جدول واصفات المقاطعات والان من خلال هذه الواصفة التى وصلنا اليها يكون مخزن قيمة ناخب المقطع الذى يوجد به برنامج خدمة المقاطعة وبالاضافة للازاحة التى يبدأ عندها برنامج خدمة المقاطعة وبذلك نكون وصلنا الى برنامج خدمة المقاطعة ويقوم المعالج بتنفيذه
ونجد حسب الالية المذكورة والتى ايضا تتم بشكل تلقائى من قبل المعالج نجد ان المقاطعات أصبحت عنوانيها مختلفة عن عناوين مقاطعات الBIOS الآساسية واننا لم نعتمد على جدول أشعة المقاطعات التى يتم تعبئتها بشكل قياسى من قبل نظام الاقلاع الآساسى الBIOS كما ان بنية برامج خدمة المقاطعة التى يقوم بوضعها نظام الBIOS لا يمكن استخدامها فى الوضع المحمى وذلك لآن برامج خدمة المقاطعة هذه مكتوبة للتعامل اساسا على اساس نظام عنونته 16BIT بينما البرامج المكتوبة فى الوضع المحمى تتعامل مع نظام عنونته 32Bit وبالتالى عمليات القفز البعيد وعملية الاستدعاءات البعيدة للتوابع سوف لن نستطيع استخدامها بغض النظر عن نمط العمل وبالتالى نحن مطالبين باعادة كتابة برامج خدمة المقاطعة ولا نستطيع تحاوز خطوة اعادة كتابة برامج خدمة المقاطعة وهذا ما سنراه لاحقا وايضا فى اعتبارات اخرى يعتبر استخدام مقاطعات الBIOS ضرب من المستحيل لدى البرمجة فى النمط المحمى
والى اللقاء مجددا وسنتحدث فى المرة القادمة ان شاء الله عن
ناخبات المقاطع