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