عکس پیش‌فرض نوشته

یکی دیگر از موارد مورد بحث در همزمانی سیستم های عامل، بن بست می باشد.
در این مطلب قصد داریم تا به طور خلاصه به بررسی مسائل بن بست هم زمانی سیستم های عامل بپردازیم.

سیستم های عامل - بن بست در هم زمانی

 

اصول بن بست :
– بن بست را به صورت مسدود بودن دائمی مجموعه ای از فرآیند ها که برای منابع سیستم رقابت می کنند یا با یکدیگر در ارتباط هستند، تعریف میکنند.
– راه حل کارآمدی برای بن بست وجود ندارد.
– تمام بن بست ها نیاز های متضاد دو فرآیند یا بیشتر، برای منابع هم راه هستند.

 

انواع منابع :
منابع قابل استفاده مجدد : بدون صدمه توسط یک فرآیند می تواند در هر زمان مورد استفاده قرار گیرد و تمام نمیشود.
مثل: پردازنده ها، حافظه اصلی و ثانویه و …
منابع مصرف شدنی : منابعی هستند که می توانند ایجاد و نابود گردند.
نوعاً روی تعداد منابع مصرف شدنی از یک نوع به خصوص، حدی وجود ندارد.

 

شرایط بن بست :
انحصار متقابل : یک فرآیند از یک منبع (شرط لازم)
نگه داشتن و انتظار : با داشتن منبع، درخواست منبع جدید می کند. (شرط لازم)
در این صورت یک منبع به مدت طولانی در اختیار یک فرآیند خواهد بود.
قبضه نکردن : (شرط لازم)
منبع را نمی توان به زور پس گرفت. تنها وقتی از بن بست جلوگیری می کند که منابع، دارای اولویت باشند.
انتظار مدور : (شرط لازم و کافی)
چند فرآیند درخواست منبع هایی می کنند که در اختیار منبع دیگر است؛ به همین سبب در انتظار چرخشی قرار می گیرند.
موجب کند کردن فرآیند ها و رد کردن غیر ضروری دسترسی منابع میشود.

 

سه رویکرد در برخورد با بن بست :
– پیشگیری
– کشف
– اجتناب

 

پیشگیری از بن بست :
– روش غیر مستقیم : پیشگیری از حالت های 1 و 2 و 3 (انحصار متقابل، نگه داشتن و انتظار، قبضه نکردن)
– روش مستقیم : پیگیری از بروز انتظار مدور

 

مزایای پیشگیری از بن بست :
– در مورد فرآیند هایی که فعّالیت های زیادی انجام می دهند.
– عدم نیاز به قبضه کردن

 

معایب پیشگیری از بن بست :
– نا کارآمدی
– تأخیر شروع فرآیند

 

کشف بن بست :
– سیاست تخصیص منابع : بسیار زیاد، در صورت امکان تخصیص داده می شود.
– طرح های مختلف : احضار دورها برای بررسی بن بست

 

مزایای اصلی کشف بن بست :
– عدم تأخیر در آغاز فرآیند
– تسهیل پردازش در حین کار

 

معایب اصلی کشف بن بست :
– ضرر های ذاتی قبضه

 

اجتناب از بن بست :
– سیاست تخصیص منابع : انتخاب راهی بین پیشگیری و کشف
– طرح های مختلف : دستکاری برای یافتن حداقل یک مسیر امن

 

مزایای اصلی اجتناب از بن بست :
– عدم نیاز به قبضه کردن

 

معایب اصلی اجتناب از بن بست :
– ضرورت اطّلاع رسانی از منابع مود نیاز آینده
– امکان مسدود شدن طولانی فرآیند

 

دو رویکرد برای اجتناب از بن بست :
– عدم شروع فرآیندی که ممکن است درخواست هایش به بن بست منتهی شود.
– عدم پاسخ به درخواست های منبع اضافی، از فرآیندی که با این تخصیص ممکن است منجر به بن بست شود.

 

عدم تخصیص در بن بست :
– به آن الگوریتم بانکداران نیز می گویند.
– حالت سیستم تخصیص منابع به فرآیند ها است.
– دارای دو حالت است :
1- حالت امن : حداقل یکی از فرآیند ها اجرا شود.
2- حالت نا امن : حالتی است که امن نباشد.
در این روش باید منابع با دقت به درخواست کننده های ارائه شود؛ تا دچار کمبود منابع نشویم.

 

امتیاز اجتناب از بن بست :
– حداکثر منابع مورد نیاز هر فرآیند باید پیش بینی شود.
– فرآیند های مورد نیاز باید مستقل باشد.
– تعداد منابع تخصیص باید ثابت باشند.
– فرآیندی که منبعی را در اختیار دارد نمی تواند خارج شود.

 

در مطلب بعد به ادامه بحث بن بست در هم زمانی سیستم های عامل می پردازیم …

این آموزش بیش از ۳ سال قبل ارسال شده و اکنون در لیست به‌روزرسانی‌های سایت قرار دارد. اگر پیشنهاد یا انتقادی برای بهبود آموزش دارید، خوشحال می‌شیم به ما اطلاع بدهید.