الجمود في البرامج

ما هو الجمود (Deadlock) في البرامج؟

الجمود (Deadlock) هو حالة يتعذر فيها على البرنامج الوصول إلى المورد الذي يحتاجه للمتابعة. عندما يصل تطبيق نشط إلى حالة توقف تام، فقد “يتعطل” أو يصبح غير مستجيب.

قد يتم قفل الموارد، مثل البيانات المحفوظة أو المخزنة مؤقتًا، عند الوصول إليها من خلال عملية معينة داخل البرنامج. يؤدي تأمين البيانات إلى منع العمليات الأخرى من الكتابة فوق البيانات قبل الأوان.

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

على سبيل المثال، سيؤدي الموقف التالي إلى طريق مسدود بين عمليتين:

  • تطلب العملية 1 المورد B من العملية 2.
  • يتم تأمين المورد ب أثناء تشغيل العملية 2.
  • تتطلب العملية 2 المورد A من العملية 1 حتى تنتهي من التشغيل.
  • يتم تأمين المورد أ أثناء تشغيل العملية 1.

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

إقرأ أيضاً… ما هي (jQuery) في برمجة الجافا؟


طرق تجنب الجمود.

يمكن للمطورين منع حالات التوقف التام عن طريق تجنب شروط القفل في منطق البرمجة الخاص بهم.

على سبيل المثال، بدلاً من اعتماد عمليتين على بعضهما البعض، يمكن كتابة التعليمات البرمجية المصدر بحيث ينتهي كل مؤشر ترابط قبل أن يحتاج مؤشر ترابط آخر إلى موارده.

من خلال ضمان إمكانية الوصول إلى البيانات عند الحاجة، يمكن للمبرمجين حماية تطبيقاتهم من التعليق أو التعطل.

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

مقالات مرتبطة...

  • ما هي تقنية 4K؟

    تقنية 4K هي معيار عرض يتضمن أجهزة التلفزيون والشاشات وأجهزة الفيديو الأخرى التي تدعم دقة أفقية تبلغ حوالي 4000 بكسل. معيار 4K الأكثر شيوعًا هو Ultra HD (أو UHD)، الذي تبلغ دقته 3840 × 2160 بكسل. (عرض 3840 بكسل وطول 2160 بكسل). ما هي 4K؟ إنها بالضبط ضعف دقة HDTV (1920 × 1080) ولها نسبة…

  • ما هو عنوان (URL)؟

    عندما تتصفح الإنترنت وتنظر إلى شريط العنوان في متصفح الويب، ستجد أمامك أسم الموقع ورابط الصفحة التي قمت بفتحها، والذي يسمى بعنوان URL، فما هو عنوان URL؟ ومم يتكون؟ ما هو عنوان URL؟ عنوان URL (محدد موقع المعلومات – Uniform Resource Locator) هو نوع من معرفات الموارد الموحدة وهو عنوان لمورد موجود على شبكة الويب العالمية…

  • تعريف أجهزة الإخراج في الحاسوب.

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

  • التطورات المستقبلية في تقنيات الاتصالات.

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

  • ما هو منفذ USB؟

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

  • طريقة عمل جيلبريك للآيفون(IPhone Jailbreak) .

    يحتوي متجر تطبيقات أبل AppStore على أكثر من 3 ملايين تطبيق, لكن بالنسبة لبعض المستخدمين فهذا الرقم ليس كافياً لهم, لذا فهم يسعون لتحميل وتثبيت بعض التطبيقات الغير متوفرة على متجر تطبيقات أبل, في الواقع يمكن فعل ذلك عن طريق عمل جيلبريك. وذلك لأن شركة أبل تقف هنا بالمرصاد, فنظام التشغيل الموجود في أجهزة الآيفون…