במדעי המחשב, סמפור הוא סוג נתונים משתנה או מופשט המשמש לשליטה בגישה למשאב משותף על ידי מספר תהליכים ולהימנע מבעיות מקטע קריטי במערכת במקביל, כגון מערכת הפעלה מרובת משימות.
מה המטרה של סמפורות?
סמפור הוא משתנה של מספר שלם, המשותף למספר תהליכים. המטרה העיקרית של שימוש בסמפור היא סנכרון תהליכים ובקרת גישה למשאב משותף בסביבה במקביל. הערך ההתחלתי של סמפור תלוי בבעיה שעל הפרק.
מהו סמפור ולמה להשתמש באחד?
Semaphore הוא פשוט משתנה שאינו שלילי ומשותף בין שרשורים. משתנה זה משמש כדי לפתור את בעיית המקטע הקריטי ולהשיג סנכרון תהליכים בסביבת ריבוי עיבודיםסמפורים הם משני סוגים: סמפור בינארי - זה ידוע גם כנעילת mutex.
מתי תשתמש בדוגמה של סמפור?
סמאפורות כלליות משמשות משימות "ספירה" כגון יצירת אזור קריטי המאפשר כניסה למספר מוגדר של שרשורים. לדוגמה, אם אתה רוצה שארבעה שרשורים לכל היותר יוכלו להיכנס לקטע, תוכל להגן עליו באמצעות סמפור ולאתחל את הסמפור הזה לארבעה.
מהם שלושת סוגי הסמפורים?
ישנם 3 סוגים של סמפור, כלומר סמפור בינארי, ספירה ו-Mutex.