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

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

سیستم های عامل - بن بست

 

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

 

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

 

* مسائل اصلی بن بست گرسنگی را تشریح می کند.

 

راهکارهای هم زمانی در unix :
لوله ها :
یکی از مهم ترین کمک های unix به ایجاد و توسعه سیستم های عامل است.
بر اساس مدل تولید کننده و مصرف کننده با هم ارتباط برقرار می کند.
صف خروجی به ترتیب ورودی است. دو نوع لوله بی نام و با نام وجود دارد.

پیام ها :
بلوکی از متن به همراه یک نوع است.
از فراخوان سیستمی msgsnd و msgrcv برای فرآیندهای درگیر در تبادل پیام استفاده می کنند.

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

راهنماها :
از اولیه های wait و signal است.
عملیات متعددی به صورت هم زمان اجرا میشود. یک راهنما شامل عناصر زیر است:
1- مقدار جاری راهنما
2- شناسه
3- تعداد فرآیندهای منتظر مقدار راهنما از مقدار جاری آنها بزرگ تر باشد.
4- تعدا فرآیندهای منتظر، مقدار راهنمای آنها صفر باشد.

علائم :
یک راهکار نرم افزاری است که از بروز یک حادثه نا به هنگام خبر میدهد.

 

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

 

راهکارهای هم زمانی در windows NT :
فرآیند : احضار یک برنامه
نخ : موجودیت قابل اجرا
پرونده : نمونه پرونده باز
ورودی میز کار : یک میانگیر صفحه نمایش متنی
اعلام تغییر پرونده : تغییر سیستم پرونده
Mutex (انخصار متقابل)
راهنما : شمارنده تعدا نخ های برنامه را تنظیم میکند.
حادثه : یک حادثه سیستمی اتفاق افتاده است.
زمان سنج قابل انتظار : شمارنده برای ثبت گذشت زمان

 

سعی کردیم مبحث بن بست در سیستم های عامل را در دو بخش بررسی کنیم.

ما را از انتقادات و پیشنهادات خود مطلع سازید.

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