المقاطعة في أنظمة الحاسوب أنواعها وتطبيقاتها Interrupt

الكاتب: سامي -
المقاطعة في أنظمة الحاسوب أنواعها وتطبيقاتها Interrupt
ما هي المقاطعة an Interrupt؟
تعريف المقاطعة:
أنواع المقاطعة Types of Interrupt:
مقاطعات الأجهزة Hardware Interrupts:
المقاطعات البرمجية Software Interrupts:
طرق التشغيل Triggering Methods:
المقاطعة المشغلة على المستوى Level-triggered Interrupt:
المقاطعة المشغلة من الحافة Edge-triggered Interrupt:
تنفيذ النظام System Implementation:
طلبات المقاطعة المشتركة Shared Interrupt Requests (IRQs):
النوع الهجين Hybrid:
النوع Message Signaled:
نوع الجرس Doorbell:
النوع متعدد المعالجات Multiprocessor IPI:
الاستخدامات والتطبيقات النموذجية:

تستخدم أجهزة الكمبيوتر طلبات المقاطعة للتعامل مع وظائف الأجهزة المختلفة، تمّ تقديم مقاطعات الأجهزة لأول مرة بواسطة (UNIVAC 1103) في عام (1953)، تمّ دمج أول حالة لإخفاء المقاطعة بواسطة (IBM 650) في عام (1954).

 

ما هي المقاطعة an Interrupt؟

 

من الضروري تعيين (IRQs) مختلفة لأجهزة مختلفة لأداء وظائف مختلفة، أثناء تنفيذ البرنامج، تتطلب أجهزة مثل لوحات المفاتيح، الماوس، خدمات وحدة المعالجة المركزية ويقوم بإنشاء مقاطعة لجذب انتباه وحدة المعالجة المركزية ومعالجة الخدمة المطلوبة، تُعرف هذه “بالمقاطعات”.

 

تُعرف إحدى ناقلات جهاز الإدخال / الإخراج المخصص لخدمة هذا الغرض باسم روتين خدمة المقاطعة (ISR)، يتم استخدامها في تطبيقات مختلفة مثل الأحداث الحساسة للوقت، ونقل البيانات، والتأكيد على الأحداث غير الطبيعية، وأجهزة ضبط الوقت، (traps)، وما إلى ذلك.

 

تعريف المقاطعة:

 

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

 

تمّ إدخال آلية جديدة للتغلب على هذه العملية المعقدة، في هذه الآلية، سترسل الأجهزة أو البرامج الإشارة إلى المعالج، بدلاً من فحص المعالج بحثًا عن أي إشارة من الأجهزة أو البرامج، تنبه الإشارة المعالج بأولوية قصوى وتوقف الأنشطة الحالية عن طريق حفظ حالتها ووظيفتها الحالية، وتعالج المقاطعة على الفور، وهذا ما يعرف بـ (ISR)، نظرًا لأنّه لا يدوم طويلاً، يقوم المعالج بإعادة تشغيل الأنشطة العادية بمجرد معالجتها.

 

أنواع المقاطعة Types of Interrupt:

 

يتم تصنيف المقاطعة إلى نوعين رئيسيين، وهما:

 

مقاطعات الأجهزة Hardware Interrupts:

 

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

 

المقاطعات المقنعة (Maskable Interrupts): يتعين على المعالجات مقاطعة سجل القناع (mask register)، الذي يسمح بتمكين وتعطيل مقاطعات الأجهزة، تمّ وضع بت كل إشارة في سجل القناع إذا تمّ تعيين هذا البت، فسيتم تمكين المقاطعة وتعطيلها عندما لا يتم تعيين بت، أو العكس، يشار إلى الإشارات التي تقطع المعالجات من خلال هذه الأقنعة بالمقاطعات المقنعة.

 

المقاطعات غير المقنعة (NMI) (Non-maskable Interrupts): تعد (NMIs) الأنشطة ذات الأولوية القصوى التي تحتاج إلى معالجتها على الفور وفي أي موقف، مثل إشارة (timeout) التي تمّ إنشاؤها من مؤقت مراقب.

 

المقاطعات البرمجية Software Interrupts:

 

يطلب المعالج نفسه مقاطعة البرنامج بعد تنفيذ تعليمات معينة أو في حالة استيفاء شروط معينة، يمكن أن تكون هذه تعليمات محددة تؤدي إلى مقاطعة مثل استدعاءات الروتين الفرعي ويمكن تشغيلها بشكل غير متوقع بسبب أخطاء تنفيذ البرنامج، والمعروفة باسم الاستثناءات أو الاعتراضات (exceptions or traps).

 

طرق التشغيل Triggering Methods:

 

بشكل عام، تمّ تصميم هذه الإشارات بحيث يتم تشغيلها باستخدام مستوى إشارة منطقية أو حافة إشارة، هذه الطرق هي من نوعين:

 

المقاطعة المشغلة على المستوى Level-triggered Interrupt:

 

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

 

المقاطعة المشغلة من الحافة Edge-triggered Interrupt:

 

تستدعي وحدة إدخال المقاطعة المشغلة من الحافة مقاطعة بمجرد أن تحدد حافة مؤكدة، حافة هبوط أو حافة صاعدة (falling or a rising edge)، تصبح الحافة ملحوظة عندما يتغير مستوى
شارك المقالة:
1420 مشاهدة
هل أعجبك المقال
0
0

مواضيع ذات محتوي مطابق

التصنيفات تصفح المواضيع
youtubbe twitter linkden facebook