صفحه 1:
به نام خدا سیستم های عامل اسلاید 7

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

صفحه 3:
سمافور( ‎pole‏ نگهبان» راهنما) ‎(Semaphore)‏ ‏مکانیسم سمافور شامل يكسري متغیر و دو تابع اصلي است. بر دو نوع است: 1 سمافور صحیح 2 سمافور باينري

صفحه 4:
سمافورهاي صحیح wait (semaphore s) signal (semaphore s) t t 5 ‏بجيو‎ ‎if (s <0) if (s <= 0) t { Add current process s.queue Remove process P from s.queue: Wait current process; Add P to ready list; } } تولبع انه۷ و ‎signal‏ بصورت اتميك هستند. ( يعني در میان اجراي لین تولبع. تعویض پردازه انجام نمیگیرد.) &

صفحه 5:
ایچاد انحصار متقابل با سمافور صحیح int semaphore s ۳00 ۳10 1 ۱ wait(s); wait(s); <CS> <CS> signal(s); signal(s); wait (semaphore s) signal (semaphore s) if (6 <0) if(s<=0) Add current process s queue ‘Remove process P from s.queue: Wait current process Add P to ready list;

صفحه 6:
سمافور صحیح * براي هر نوع منبع مشترک از یک متغیر سمافور استفاده میشود. * مقدار یک راهنما بیانگر تعداد منابع آزاد است. پس: 7 اگر مقدار سمافور منفی باشد. يعني هیچ منبع آزادي وجود ندارد و تعداد درخواستها از منابع آزاد بیشتر است. 7 اگر مقدار سمافور صفر باشد. يعني هیچ منبع آزادي وجود ندارد و تمام درخواستها سرویس دهی شده است. 7 اگر مقدار سمافور مثبت باشد. یعنی منبع آزاد وجود دارد.

صفحه 7:
سمافورهاي باينري signalB (semaphore s) 1 { if (s.queue is empty) Remove process P from s.queue; Place P to ready queue: waitB (semaphore s) 1 if(s=1) Place current process to s.queue; Block current process;

صفحه 8:
ایچاد انعصار متقاپل پا سمافور باینری signal (semaphore s) if (queue is empty) Remove process P ftom s queue; Place P to ready queue waitB(s); <CS> signalB(s); ait (semaphore s) ۳10 راوز 1 waitB(s); <CS> signalB(s); bool semaphore s = 1; ۳00 {

صفحه 9:
تفاوت سمافورهاي صحیح و باينري مقدار سمافور صحیح نشان دهنده تعداد منلبع آزاد است. اما مقدار سمافور باينري گوباي این است که آیا منبع آزاد داریم یا نه؟ سمافور باينري در شرايطي مناسب است که « پردازه بر سر يك منبع رقابت دارند.

صفحه 10:
مسایل گلاسیک در مسأله ارتباط فرآیندها ۰ مساله تولید کننده و مصرف کننده Producer(s) and consumer(s) problem ۰ مساله خوانندگان و نویسندگان Readers and writers problem ۰ مساله فیلسوفان ‎Philosophers problem‏ ۰ مساله آرایشگاه ‎Barbershop problem‏ 0

صفحه 11:
مسایل گلاسیک در مسأله ارتباط فرآیندها ۰ مساله تولید کننده و مصرف کننده ‎“si‏ Ss Producer(s) and consumer(s) problem aS Spee تولیدکننده ad

صفحه 12:
مسایل گلاسیک در مسأله ارتباط فرآیندها * مساله خوانندگان و نوبسندگان Readers and writers problem نویسنده 1 خواتنده خواننده نویسنده 1 خواننده در هر لحظه هر تعداد دلخواه خواننده میتوانند با هم بخوانند. اما در هر لحظه تنها یک نوبسنده باید در حال نوشتن باشد. عم

صفحه 13:
مسایل کلاسیک در مسأله ارتباط فرآیندها ۰ مساله فیلسوفان 1 ۵ 8 Philosophers problem هر فیلسوف براي غذا خوردن نیاز به دو چنگال دارد. هر فیلسوف در صورتي که دو چنگال داشته باشد. شروع به خوردن میکند وگرنه به حالت تفکر میرود. چگونه عمل کنیم که بن بست ایجاد نشود؟ oe

صفحه 14:
مسایل کلاسیک در مسأله ارتباط فرآیندها * مساله آرايشكاه 2 ‎Barbershop problem‏ اگر كسي روي صندليهاي انتظار باشد. آرایش میشود وگرنه آرایشگر به خواب میرود. 6 ao

صفحه 15:
oO 3 خط 3 | بن بست و گرسنگی نتیجه مستقیم ایجاد انحصار متقابل است. بن پست و گرسنگي

صفحه 16:
4 6 روشي براي نمايش بن بست رهاكردن ‎A‏ رها کردن. ‎Aan‏ ‏7 A owt Baw 2 رها کردن رهاكردن 8 كرضن 8 ‎Awe‏ علوم 7۳ سل یه 2 ‎Ande!‏ هم۲ و هم 0 منبع 8 زا می‌خواهند = ‎Bade‏ تمه رس لایر -. 08 ‎0s Pye pty‏ بخش افقى مسير نشائدهنده اين الست كه" ذز حال أجرا و( منتظر است: بخش عمودى مسير نشائد هنده اين لست كه 0 در حال اجرا و منتظر است. Gea ®; 62 RAO; RAG; Get B; 62 #۵ Rel ۶

صفحه 17:
د درخواست منیع و نگهداري منیع درخواست (الف) منبع درخواست می‌شود. ۰ سس هي (ب) منبع نكيدارى مى شود

صفحه 18:
ملزومات پن پست براي رخداد بن بست باید همه شرایط زیر فراهم باشد: 1- انحصار متقابل: در هر زمان فقط يك پردازه میتواند از يا 2- نگهداري و انتظار: دا منبع استفاده کند يك پردازه میتواند در حالي که منتظر تخصیص منابع است منابع تخصیص يافته را نگه 3- بدون قبضه کردن: نمیتوان با زور منبعي را از پردزه اي گرفت. 4- انتظار دایره اي: يك زنجیره بسته از پردازه ها وجود دارد به طوري که هر پردازه حداقل يك منبع مورد نیاز پردازه بعدي زنجیره را نگه میدارد. oe (cans 8) ps atid

صفحه 19:
oe اگر از هر منبع چندین واحد بصورت آزاد وجود داشته باشد بن بست رخ نخواهد داد.

صفحه 20:
روشهاي مقابله با پن بست 1- جلوگيري از بن ‎(Deadlock prevention) Cum‏ در این روش سیستم عامل بگونه اي طراحي میشود که اصولا امکان رخداد بن بست وجود نداشته باشد. 2- اجتناب از بن بست ‎(Deadlock avoidance)‏ در این روش در حین عملکرد سیستم عامل سعي ميشود از رخداد بن بست جلوگيري شود. * عدم شروع پردازه هايي که شروع آنها ايمن نیست. * عدم تخصیص منابعي که تخصیص آنها ايمن نیست. 3- تشخیص و رفع بن بست ‎(Deadlock detection)‏ eo

جهت مطالعه ادامه متن، فایل را دریافت نمایید.
34,000 تومان