מניעה הדדית

מתוך ויקיפדיה, האנציקלופדיה החופשית
קפיצה אל: ניווט, חיפוש

מניעה הדדית הוא מונח במדעי המחשב, בעיקר בתחום מערכות ההפעלה המתאר את הפתרון לבעיה של שני תהליכים או יותר הניגשים למשאב משותף (כמו זיכרון) בו-זמנית. הבעיה הוצגה לראשונה על ידי אדסחר דייקסטרה במאמר מ-1965 שכותרתו "פתרון בעיית השליטה בתכנות מקבילי". דוגמה פשוטה לבעיה עולה מהתבוננות על שני תהליכים הניגשים למקום בזיכרון שבו מאוחסנת רשימה מקושרת. אם שני התהליכים ינסו למחוק בו זמנית שני קודקודים עוקבים ברשימה, שאינם הקודקוד הראשון או האחרון, יכול להיווצר מצב בו אחד הקודקודים לא יימחק, על אף שהתהליך שניסה למחוק אותו ידווח שהמחיקה בוצעה כנדרש.

אחת מהטכניקות שמיישמות את פתרון המניעה ההדדית ופותרת גם בעיות דומות של סנכרון, היא מבנה התכנות mutex, שמשמעות שמו היא קיצור של "מניעה הדדית" באנגלית (Mutual exclusion).

ראו גם[עריכת קוד מקור | עריכה]

P Computer-science.png ערך זה הוא קצרמר בנושא מדעי המחשב. אתם מוזמנים לתרום לוויקיפדיה ולהרחיב אותו.