סמפור (מדעי המחשב) – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
Luckas-bot (שיחה | תרומות)
מ r2.7.1) (בוט מוסיף: vi:Đèn báo (lập trình)
שורה 15:
 
==פתרון הבעיה באמצעות סמפור==
כיום נהוג לפתור בעיה זו על ידי שימוש ב'''סמפור''': מעין דגל (flag) אשר כדי לשנות את ערכו התהליך נדרש לבקש זאת ממערכת ההפעלה. במידה והדגל כבר "נתפס" על ידי תהליך אחר, מערכת ההפעלה תעביר את התהליך ל"מצב שינה", ו"תעיר" אותו על ידי משלוח [[פסיקה (מחשב)|פסיקה]] ברגע שהדגל "משוחרר" על ידי התהליך שתפס אותו.
 
בצורה זו מתאפשר סנכרון ללא בזבוז זמן מעבד, וכן מובטח לנו כי מערכת ההפעלה מפקחת על מצב הדגל ושינוי של ערכו מבוצע בצורה אטומית (לא ניתן לחטוף לתהליך את המעבד בזמן שינוי ערך הדגל).