سمافور
From Wikipedia, the free encyclopedia
برای وبگاه، سمافور (وبگاه) را ببینید.
در علم رایانه سمافور (به انگلیسی: Semaphore) به متغیری گفته میشود که در محیطهای همروند برای کنترل دسترسی فرایندها به منابع مشترک به کار میرود. سمافور میتواند به دو صورت دودویی (که تنها دو مقدار صحیح و غلط را دارا است) یا شمارنده اعداد صحیح باشد. از سمافور برای جلوگیری از ایجاد وضعیت رقابتی میان فرایندها استفاده میگردد. به این ترتیب، اطمینان حاصل میشود که در هر لحظه تنها یک فرایند به منبع مشترک دسترسی دارد و میتواند از آن بخواند یا بنویسد (انحصار متقابل)
سمافورها اولین بار بهوسیلهٔ دانشمند علوم رایانه هلندی، ادسخر دیکسترا معرفی شدند.[1] و امروزه بهطور گستردهای در سیستم عاملها مورد استفاده قرار میگیرند.