إجهاض (الحوسبة)
في أنظمة الحاسوب أو نقل البيانات ، يعني الإجهاض إنهاء عملية معالجة، عادةً بطريقة مُتحكَّم بها، إما لاستحالة استمرارها أو لعدم الرغبة في ذلك، أو لوجود خطأ ما. وقد يُصاحب هذا الإجراء معلومات تشخيصية حول العملية المُجهضة. [ 1 ]
إضافةً إلى كونها فعلاً، فإنّ كلمة "abort" لها معنيان اسميان. في الحالة العامة، يُشار إلى عملية الإجهاض بـ"abort". أحيانًا يُطلق على عملية الإجهاض اسمٌ خاص، كما في حالة الإجهاض الذي يشمل نواة نظام يونكس ، حيث يُعرف باسم " kernel panic" . تحديدًا في سياق نقل البيانات ، يُعدّ "abort" وظيفةً تستدعيها محطة الإرسال لإجبار المُستقبِل على تجاهل جميع تسلسلات البتات التي أرسلها المُرسِل منذ تسلسل العلم السابق .
في لغة البرمجة C ، abort()تُعدّ هذه الدالة دالة مكتبة قياسية تُنهي التطبيق الحالي وتُعيد رمز خطأ إلى بيئة التشغيل. [ 2 ]
أنواع الإجهاض
- عمليات الإيقاف التي يبدأها المستخدم : يمكن للمستخدمين غالبًا إيقاف المهام باستخدام اختصارات لوحة المفاتيح (مثل Ctrl + C في تطبيقات الطرفية) أو أوامر لإنهاء العمليات. يُعد هذا مفيدًا بشكل خاص لإيقاف البرامج التي لا تستجيب أو تلك التي تستغرق وقتًا أطول من المتوقع للتنفيذ. [ 3 ]
- الإيقاف البرمجي : يمكن للمطورين تضمين منطق الإيقاف في برامجهم. على سبيل المثال، عندما يواجه البرنامج خطأً أو مدخلات غير صالحة، فإنه قد يستدعي دوالًا كما
abort()في لغتي C أو C++ لإنهاء التنفيذ. يساعد هذا الأسلوب في منع حدوث المزيد من الأخطاء أو تلف البيانات المحتمل. [ 2 ] [ 4 ] - عمليات الإيقاف على مستوى النظام : قد تقوم أنظمة التشغيل بإيقاف العمليات تلقائيًا في ظروف معينة، مثل استنفاد الموارد أو عدم الاستجابة. على سبيل المثال، يمكن لمؤقت المراقبة إنهاء عملية تظل خاملة لفترة تتجاوز حدًا زمنيًا محددًا. [ 3 ] [ 4 ]
- معاملات قواعد البيانات : في إدارة قواعد البيانات، يُعدّ إجهاض المعاملة (أو ما يُسمى غالبًا "التراجع") أمرًا بالغ الأهمية للحفاظ على سلامة البيانات. فإذا تعذّر إتمام معاملة ما بنجاح، فإن إجهاضها يُعيد قاعدة البيانات إلى حالتها السابقة، مما يضمن عدم تسبب المعاملات غير المكتملة في تضارب البيانات. [ 4 ]
Aborts are typically logged, especially in critical systems, to facilitate troubleshooting and improve future runs.[4]
See also
References
- ↑"What is Abort?". www.computerhope.com. Archived from the original on 2019-04-22. Retrieved 2019-04-22.
- 12"C11 standard (ISO/IEC 9899:2011)"(PDF). Archived(PDF) from the original on 2018-03-29. Retrieved 2020-03-11.
- 12"What is Abort? | Webopedia". nojs-rotate.domaincntrol.com. 24 May 2021. Retrieved 3 November 2024.
- 1234"C exit(), abort() and assert() Functions". GeeksforGeeks. 2010-07-09. Retrieved 2024-11-03.
- Computing terminology
- Computing stubs
