آموزش سیستم های عامل - بخش چهارم
Post on 12-Jan-2017
83 Views
Preview:
TRANSCRIPT
عاملآموزش سیستم های
faradars.org/fvsft103
:مدرسفرشید شیرافکن
دانشجوی دکتری دانشگاه تهران (بیو انفورماتیک: دکتری( )کامپیوتر نرم افزار: کارشناسی و کارشناسی ارشد )
سیستم های عامل
1
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
2
فصل چهارم
(DeadLock)بستبن فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
بن بست
بایاندکنمیرقابتسیستممنابعبرایکهفرایندهاازایمجموعهدائمیبودنمسدود:بستبن
.هستندارتباطدریکدیگر
حذفارفرایندیمثالًدهد،انجامالعاده ایفوقعملعاملسیستمتامی یابدادامهبودنمسدوداین
.کندعقببهبرگشتبهمجبوریاکند
3
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثال عبوربرایخودروهر.می شوندمحسوبمنابع،راهچهاراینربعچهار.استمفروضرسیده اندراهیچهاربهزمانیکدرکهخودروچهار
ولیگرفتهاختیاردرراراهچهارازربعیکخودروهربشوند،تقاطعواردخودروچهارهراگر.داردنیازچهارراهازربعدوبهراهچهاراز
.دهدمیرخبستبنپس.استدیگرخودرویاختیاردردومنیازموردربعچونبرود،پیشنمی تواند
4
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
شرایط بن بست.می دهدرخبستبنباشد،داشتهوجودسیستمیدرهمزمانزیرشرطچهاراگر
.باشندمیبستبنوقوعبرایکافیوالزمشروطشرط،چهارهربودنبرقرار
Hold)انتظارونگهداری-1 and Wait)
یگریدمنبعآوردندستبهمنتظروباشدداشتهاختیاردررامنبعیکحداقلکهداردوجودفرایندی
.استدیگریفراینداختیاردرفعالکهباشد
Non)نشدنیقبضه-2 Preemption)
.گرفتپسباززوربهرامنبعآننتوانودارداختیاردررامنبعیفرایندیکههنگامی
Mutual)متقابلانحصار-3 Exclusion)
مانهدرخواستدیگریفراینداگروکنداستفادهمنبعیکازمی تواندفرایندیکتنهازمانهردر
.شودآزادمنبعتابماندمنتظربایدکند،رامنبع5
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
Circular)چرخشیانتظار-4 Wait)
.داردوجودانتظارازایچرخه
P1اختیاردرکهاستمنبعیمنتظرp2است.
p2اختیاردرکهباشدمنبعیمنتظرp3است.
.
.
.
.استp1اختیاردرکهباشدمنبعیمنتظرpn،نهایتدر
.می گرددانتظارونگهداریشرطبهمنجرچرخشیانتظارشرط:نکته
6
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
. روشی برای تشریح دقیقتر مسئله بن بست است
. فرایندها با دایره و منابع با مربع نشان داده می شوند
: دو نوع یال وجود دارد
یال درخواست -1
یال تخصیص -2
aP R1
aR P 1
7
گراف تخصیص منابع (Resource Allocation Graph)
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مشخص کردن بن بست :منبع توجه به گراف تخصیص نحوه تعیین بن بست با
.نباشد، بن بست نداریم( سیکل)اگر در گراف چرخه-1
:اگر چرخه ای در گراف باشد-2
.اگر از هر منبع یک نمونه داشته باشیم، بن بست رخ می دهد: الف
ست وجود چرخه شرط الزم برای وجود بن ب.)اگر هر منبع دارای چند نمونه باشد، احتمال بن بست است: ب
.(است ولی شرط کافی نیست
8
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
. بنابراین بن بست رخ می دهد
) P R P R P R P 1 1 1 2 3 3 2 1
) P R P R P 2 2 3 3 2 2
9
مثال
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
.برودبینازچرخهومی شوددادهP3بهR2آنگاهوکندآزادراR2می تواندP4چون.دهدنمیرخبستبنچرخهوجودبا
10
مثال
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثال
.هيچ فرایندي درحالت بن بست نمي باشدP P P P 4 2 1 3
11
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثال Dفرایندهای , E , G ,Bدارندقراربستبندر.
12
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
شرط رخ ندادن بن بست
صورتدرباشد،موجود(نوعیکاز)منبعmوفرایندnسیستمیدراگر
.دادنخواهدرخبستبنزیرشرطبودنبرقرار
n
i
request(i) m n
1
13
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثالرقابتهمبامنابعاینگرفتناختياردربرايپردازهnواستمنبعیكازواحدmدارايكامپيوتري
.مي كنند
راعمنبواحدیكتنهامي تواندزمانهردروداشتهنيازمنبعاینازواحددوبهحداكثرپردازههر
.نمایددرخواستیاآزاد
.كنيدمشخصرا،نمي شودبن بستدچارسيستمآنازايبهكهnمقدارحداكثر
n
i
request(i) m n
1
n m n n m 2
14
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
:کردتقسیمعمدهگروهسهبهتوانمیرابستبنرفعروشهای(Prevention)بستبناز(جلوگیری)پیشگیری-1
حداقلکهکنیمتضمینیعنیبرود،بینازبستبنامکانقبلازکهشودطراحیطوریسیستم
.ندهدرخبستبنشرطچهارازیکی
(Avoidance)بستبنازاجتناب-2
.ندهدرخبستبنشرطچهارازیکیحداقلکهشودرفتارطوریمنبعدرخواست هایمورددر
(Detection)بستبنکشف-3
ناوبمتطوربهعاملسیستم.می شوددادهفرایندهابهدرخواستیمنابعباشد،ممکنکههرجا
.کندکشفراچرخشیانتظارشرطوجودتامی کنددنبالراالگوریتمی
15
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
روش های پیشگیری
انتظارونگهداری
همههکزمانیتاوکنددرخواستیکبارهرانیازموردمنابعهمهتاکردمجبوررافرایندباید
.کردمسدودرافرایندنشود،دادهاوبهمنابع
نکردنقبضه
یدباحالتایندر.نشودموافقتجدیدشدرخواستدارد،اختیاردررامنابعیفرایندیاگر
.نمایددرخواستاضافیمنابعبامجدداًنیاز،صورتدروکندآزادراخودقبلیمنابع
16
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
چرخشیانتظار
.می کنیمتعریفمنابعانواعازخطیترتیبیکشرط،اینبروزازپیشگیریبرای
هککنددرخواستمی تواندرامنابعیتنهاادامهدریابد،تخصیصفرایندیکبهRنوعازمنبعیاگر
.باشدگرفتهقرارRازبعدآنهانوع
iاگرمثالً < jآنگاهRiازقبلRjفراینداگر.استp1منبعRiوباشدداشتهاختیاردرراRjوکندتقاضاراp2
.باشدمیj<iوi<jمستلزمچوناستممکنغیرحالتاینکند،تقاضاراRiوباشدداشتهاختیاردرراRjمنبع
ضروریغیرکردنردوفرایندهاکردنکندموجباستممکنچرخشی،انتظارشرطازپیشگیری
.گرددمنابعبهدسترسی
17
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103روشهای اجتناب از بن بست
:داردوجودرویکرددوبستبنازاجتناببرای
.شودبستبنبهمنجرهایشدرخواستاستممکنکهفرایندیشروععدم-1
نجرماستممکنتخصیصاینباکهفرایندیطرفازاضافیمنبعهایدرخواستبهپاسخعدم-2
(بانکدارانالگوریتم).شودبستبنبه
:می شودانجامپویابصورتزیرتصمیم گیریبست،بنازاجتنابدر
."نهیاشودبستبنبهمنجرمی تواندآیاشود،دادهتخصیصشده،درخواستمنبعاگر"
.استآیندهدرخواستهایازاطالعنیازمندبستبنازاجتنابیعنی
18
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
محدودیت های اجتناب از بن بست .تعداد منابع تخصیص باید ثابت باشد-1
.فرایندی که منبعی در اختیار دارد نمی تواند خارج شود-2
.حداکثر منابع مورد نیاز هر فرایند باید از قبل معلوم شود-3
.فرایندهای مورد نظر باید مستقل باشند-4
(بر خالف کشف.)امتیاز اجتناب از بن بست این است که قبضه کردن فرایند، الزم نمی باشد
19
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
حالت امنبدونشوند،کاملواجرامی توانندکهداردوجودفرایندهاازترتیبیکحداقلآندرکهاستحالتی
.دهدرخبستبناینکه
.استامنناوضعیتیکبست، بنوضعیت
.نیستندبست بن الزاماناامن،هایوضعیتتمام اما
20
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
الگوریتم بانکداران .این الگوریتم برای اجتناب از بن بست استفاده می شود
: از بردارها و ماتریسهای زیر استفاده می شود
.شامل مقدار کل هر یک از منابع: Resourceبردار -1
(تخصیص داده نشده)شامل مقدار کل هر یک از منابعی که موجود است : Availableبردار -2
.شامل درخواستهای فرایندها( : حداکثر نیاز) Claimماتریس -3
.شامل منابع تخصیص داده شده به فرایندها: Allocationماتریس -4
21
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثال :بررسی وجود حالت امن Resource : R ,R ,R 1 9 2 3 3 6
22
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
R ,R ,R 1 0 2 1 3 1
23
P2 :بعد از اجرای
Resource : R ,R ,R 1 9 2 3 3 فرادرس6
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103 اجرای بعد ازp1 :
24
:p3بعد از اجرای
. می شود اجرا p4نهایت در
P P P P 2 1 3 4 : ترتیب امن
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
مثالR): در دسترس منابع سيستم چيست؟ حالت . منبع مدیریت مي شود2فرایند فعال و 4تحت سيستم عاملي ,R ) 1 22 1
:دسترسدرمنابع
:p3اجرايازبعد.شونداجراتوانندنميابتدادرp2وp1فرایند
:p4اجرايازبعد.شونداجراتوانندنميp2وp1همباز
.شونداجراتوانندنميp2یاp1همباز
)1,2( 21 RR
)2,3( 21 RR
)2,6( 21 RR
25
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
پایان فصل چهارم
26
فرادرس
FaraDars.org
عاملآموزش سیستم های
faradars.org/fvsft103
عاملآموزش سیستم های
faradars.org/fvsft103
27
این اسالید ها بر مبنای نکات مطرح شده در فرادرس« آموزش سیستم های عامل»
.تهیه شده است
.برای کسب اطالعات بیشتر در مورد این آموزش به لینک زیر مراجعه نمایید
فرادرس
FaraDars.org
top related