مصحح

المصحح (بالإنجليزية: Debugger)‏ ويسمى أيضًا المنقح في علم البرمجة هو أداة لتشخيص، إيجاد، وإزالة الأخطاء من أنظمة الحواسيب؛ خصوصًا من البرمجيات.[1][2][3]

أدوار المصحح

  • توجيه عمل البرنامج عبر معالجة أوامر البرنامج خطوة بخطوة.

استعمال

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

التفنية

تختلف الأدوات التي يوفرها المصحح باختلاف لغة البرمجة (التي يستعملها المبرمج لكتابة الكود الذي يتم تصحيحه) التي صمم من أجلها.

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

أدوات لتوقيف تنفيذ البرنامج

  • أمر التوقف اليدوي : المبرمج يمكن أن يقرر إيقاف التنفيذ في أي وقت.
  • نقطة التوقف: توضع في نقطة محددة في البرنامج (عادة في شفرة المصدر " Code source" )، يشيرإلى المصحح بإيقاف التنفيذ عندما يصل إلى تلك النقطة.
  • نقطة توقف مشروطة : على غرار نقطة التوقف، ولكن مع شرط إضافي ( مثل عدد المرات التي مر فيها البرنامج من هاته النقطة).
  • نقطة الملاحظة : تستخدم لوقف تنفيذ البرنامج على شرط تبدل المتغير.

أدوات لتسيير تنفيذ البرنامج

  • خطوة بخطوة تنفيذ البرنامج تعليمة بتعليمة (instrcution).
  • إعادة تشغيل الوظيفة الحالية (drop frame) : إلغاء التنفيذ الحالي للوظيفة الحالية وتنفيذها من جديد.
  • فلاش باك: الرجوع إلى التعليمات السابقة، وإيجاد الحالة سابقة (ميزة نادرة).

أدوات لمراقبة حالة البرنامج

  • مراقبة متغير
  • مراقبة منطقة الذاكرة
  • مراقبة سجل للمعالجات الدقيقة
  • مراقبة مكدس الاستدعاء ات (المتتبع الخلفي)
  • مراقبة شفرة المصدر مع النقطة الحالية للتنفيذ
  • مراقبة الشفرة المجمعة (باستثناء اللغة المؤولة) مع النقطة الحالية التنفيذ
  • تعقب: تمكن من ملاحظة المعلومات حاليا، دون توقف تنفيذ البرنامج

بالإضافة إلى ذلك، يسمح لك المصحح عادة بتغيير حالة البرنامج، عند إيقاف تنفيذه:

  • تعديل السجل
  • تعديل المتغير
  • تعديل مساحة الذاكرة

تصحيح عن بعد

التصحيح عن بعد هو تصحيح البرامج عن بعد، غالبا من أجل هدف مختلف عن البيئة التطويرية.

مصحح نواة

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

مراجع

  1. Philip Claßen; Undo Software. "Why is reverse debugging rarely used?". Programmers Stack Exchange. Stack Exchange, Inc. مؤرشف من الأصل في 06 أغسطس 2016. اطلع عليه بتاريخ 12 أبريل 2015. الوسيط |CitationClass= تم تجاهله (مساعدة); تحقق من التاريخ في: |تاريخ أرشيف= (مساعدة)
  2. "IBM Global Solutions Directory - z/XDC Extended Debugging Controller z2.1". مؤرشف من الأصل في 02 فبراير 2017. اطلع عليه بتاريخ 29 مايو 2015. الوسيط |CitationClass= تم تجاهله (مساعدة); تحقق من التاريخ في: |تاريخ أرشيف= (مساعدة)
  3. "IBM Debug Tool for z/OS, V13.1" (PDF). Puiblic.dhe.ibm.com. مؤرشف من الأصل (PDF) في 12 مارس 2020. اطلع عليه بتاريخ 07 مايو 2015. الوسيط |CitationClass= تم تجاهله (مساعدة)


    • بوابة برمجة الحاسوب
    This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.