بخشی از پاورپوینت
--- پاورپوینت شامل تصاویر میباشد ----
اسلاید 1 :
اجراي همروند پردازه ها (سيستم تك پردازنده اي)
مزايا:
- استفاده مناسبتر از منابع سيستم
- بهبود زمان پاسخگويي
معايب:
- ممكن است نتايج اجراي همروند پردازه ها با نتيجه اجراي ترتيبي آنها متفاوت باشد.
- سربار سيستم را زياد ميکند.
- مديريت منابع مشترک ساده نيست و هر منبع تا تکميل کار با آن بايد در اختيار يک پردازه باشد.
- يافتن علت رخداد خطاهاي سيستم و رفع آن مشکل است.
اسلاید 2 :
Echo()
chin = getchar();
chout = chin;
putchar(chout);
اسلاید 3 :
علت مشکل: متغير سراسري و مشترك chin و chout
اگر پردازهاي متغير سراسري را تغيير دهد وسپس با وقفه مواجه شود،پردازه ديگري مي تواند مقدار اين متغير را عوض كند.
راه حل: متغير مشترک تا پايان کار يک پردازه در انحصار آن باشد.
اسلاید 4 :
حالات مختلف ارتباط پردازهها
- اجراي پردازهها بدون ارتباط
- ارتباط غير مستقيم: با استفاده از متغيرهاي مشترک
- ارتباط مستقيم: پردازه ها مستقيما براي يکديگر داده ارسال كنند.
اسلاید 5 :
چند تعريف
ناحيه بحراني:(Critical Section) بخش هايي از کد پردازه که با منابع مشترک کار دارد.
انحصار متقابل(Mutual Exclusion): در هر لحظه تنها يک پردازه در حال اجراي ناحيه بحراني باشد.
بن بست: رقابت و در اختيار گرفتن حلقوي منابع بصورتي که ادامه اجراي پردازه ها ممکن نباشد.
گرسنگي: محروم ماندن يک يا چند پردازه از يک يا چند منبع
انتظار مشغولي: چک کردن مداوم ابزار جانبي توسط پردازنده براي آگاهي از آمادگي آن را انتظار مشغولي ميگويند.
اسلاید 6 :
نكته مهم
ايجاد انحصار متقابل براي اجراي صحيح پردازه ها بصورت همروند ضروري است.
ايجاد انحصار متقابل ميتواند امكان رخداد بن بست و گرسنگي را بوجود آورد.
اسلاید 7 :
شرايط لازم براي برقراري انحصار متقابل
- در هر لحظه تنها يک پردازه در حال اجراي ناحيه بحراني باشد.
- پردازه اي که در حال اجراي ناحيه غير بحراني خود است نبايد روي بقيه پردازه ها تأثير بگذارد.
- پردازه ای که به منبعی نياز دارد، نبايد تا ابد منتظر بماند.
- اگر هيچ پردازه ای در ناحيه بحرانی نيست، اولين تقاضا بايد پذيرفته شود.
- هيچ پردازه ای تا ابد منبعی را در اختيار نگيرد.
اسلاید 8 :
روشهاي برقراري انحصار متقابل
- ايجاد انحصار متقابل در محيط کاربر
–مشخصه اين روشها اين است که از انتظار مشغولي استفاده ميکنند.
- روشهايي که نياز به حمايت سخت افزار دارند.
- روشهايي که نياز به حمايت سيستم عامل دارند.
- روشهايي که نياز به حمايت کامپايلرها دارند.
اسلاید 9 :
روش چک کردن ايجاد يا عدم ايجاد انحصار متقابل
- روش ساده تر اين است که به جاي اثبات ايجاد انحصار متقابل، به دنبال حالت نقض بگرديم.
- بايد حالات خاصي را در نظر بگيريم که زمان اجراي پردازهها در نواحي نزديک به شرط ورود به ناحيه بحراني رخ دهند.
- اگر مورد نقضي پيدا نشد باز هم بصورت قطعي نميتوان گفت که انحصار متقابل وجود دارد، اما ميتوان گفت که مثال نقضي يافت نشده است.
اسلاید 10 :
در اين روش به جاي يک متغير نوبت، از دو فلاگ استفاده میشود.
مشکل نوبتي بودن اجرا حل شده است.
اما اين روش انحصار متقابل را ايجاد نميکند.