***1
کامپیوتر ها دارای منابع زیادی هستند که در هر لحظه فقط توسط یک processمی توانند استفاده شوند . مثلا printer ها ،tape drive ها ، scanner ها ، slot های process table .
اگر دو پروسس همزمان بخواهند در یک slot درون process table بنویسند، باعث خراب شدن سیستم میشود.اگر دو پروسس بخواهند روی printer بنویسند حاصل آشغال خواهد بود.
بنا بر این تمام سیستم های عامل قدرت تخصیص دسترسی انحصاری (به طور موقت) به منابع مشخصی را دارند . در بسیاری از برنامه های کاربردی ، process نیازانحصاری به چندین منبع را دارد . فرض کنیدقرار باشد نقشه یک کشور از روی یک cd ،روی یک plotterبرده شود . فرض کنید process Aدرخواست cd-Rom کند وcd-Rom به او تخصیص یابد. کمی بعد process Bدرخواست plotterکند وبه او داده شودحالا process A درخواست plotterکند،و در انتظار آن منبع ،block شود . سپس process B، تقاضای cd_Rom driverکند وblock شود . در این لحظه هر دوی process ها در حالت blockهستند و تا ابد در این حالت باقی می مانند . این وضعیت deadlockنام دارد.
***2
منبع : هر چیزی است که در هر لحظه فقط توسط یک پروسس می تواند استفاده شود . منبع می تواند سخت افزاری یا نرم افزاری باشد .
Resource ها دو نوعند:
قابل پس گرفتن preemptable
غیر قابل پس گرفتن nonpreemptable
***3
دنباله اتفاقات در مورد استفاده از یک منبع به این صورت است:
.1تقاضا برای منبع
.2استفاده از منبع
.3آزاد کردن منبع
***7
اصول بن بست
تعریف رسمی بن بست این است:
مجموعه ای از processها در حالت بن بست قرار دارد اگر هر process
این مجموعه منتظر اتفاقی باشد که فقط process دیگری در این مجموعه میتواند ایجادش کند.از آنجا ئیکه همه پروسس ها منتظر هستند،هرگزهیچ یک از آنها نمی تواند اتفاقی که باعث بیدار شدن عضو دیگری از مجموعه شود
را ایجاد کنند و همه process ها برای همیشه منتظر خواهند بود.