تالار گفتمان مانشت
سوال دوم از فصل سوم (سوال از الگوریتم اولین تلاش) - نسخه‌ی قابل چاپ

سوال دوم از فصل سوم (سوال از الگوریتم اولین تلاش) - mina1 - 03 آبان ۱۳۹۰ ۱۲:۵۱ ب.ظ

سلام.
یه سوال از الگوریتم اولین تلاش یا همون الگوریتم تناوب قطعی.
چرا در الگوریتم اولین تلاش ادعا میکنیم که فقط شرط پیشرفت رعایت نمیشه . در مورد بن بست‌: اگه در ناحیه بحرانی فرایند ۰ مشکل ایجاد بشه و turn هرگز نتونه ۱ بشه مگه به همین بن بست نمیگیم ؟؟؟؟و در مورد قحطی‌: همون طور که درباره‌ی عدم رعایت شرط پیشرفت میگیم ممکن یه فرایند در ناحیه غیر بحرانی خیلی کند عمل کنه و مانع بشه که فرایند با سرعت بالاتر نتونه وارد بخش بحرانیش بشه در مورد قحطی هم میشه گفت یه اگه یه فرایند در ناحیه غیر بحرانی تصمیم بگیره هرگز به بخش بحرانیش سر نزنه فرایند دیگه دچار یه انتظار طولانی میشه و به همین میگیم قحطی؟؟؟نمیدونم مفهوم سوالما خوب رسوندم یا نه ؟؟؟فک کنم حسابی اینجا را قاطی کردم Huh

سوال از الگوریتم اولین تلاش - mamat - 03 آبان ۱۳۹۰ ۰۴:۱۰ ب.ظ

(۰۳ آبان ۱۳۹۰ ۱۲:۵۱ ب.ظ)mina1 نوشته شده توسط:  در مورد بن بست‌: اگه در ناحیه بحرانی فرایند ۰ مشکل ایجاد بشه و turn هرگز نتونه ۱ بشه مگه به همین بن بست نمیگیم ؟؟؟؟
بن بست زمانی اتفاق می افته که هیچ کدوم از فرایندها نتونن منابع مورد درخواستشون را در اختیار بگیرن. اینجا فرضا فرایند P0 بره ناحیه بحرانی ولی باشکست مواجه بشه و یا اینکه سوپروایزر خارجش کنه هیچ شرط از شروط بن بست رخ نداده.
مشکل شما اینجاست که فکر میکنین اون منبع یا ناحیه بحرانی در اختیار فرایند P0 باقی مونده درحالی که سیستم عامل یا سوپروایزر اون منبع یا ناحیه بحرانی رو از P0 گرفته ولی چون P1 فقط به پرچم P0 نگاه میکنه فکر میکنه که منبع در اختیار اونه و تا بی نهایت منتظر باقی میمونه که اینجا انحصار متقابل رعایت شده کرده و بن بستی رخ نداده.
در باره شرط پیشرفت هم اینطور بگم فرض کنید P0 بره ناحیه بحرانی و برگرده ولی P1 فعلا دلش نخواد به ناحیه بحرانی بره اما باز P0 میخواد بره ناحیه بحرانی و باید منتظر P1 باشه که یه بار بره و برگرده. یعنی شرط پیشرفت P0 بستگی به فرایند P1 داره.

باز اگه جایش مشکل داره بگین.

RE: سوال از الگوریتم اولین تلاش - mina1 - 03 آبان ۱۳۹۰ ۰۴:۳۱ ب.ظ

ممنون از کمکتون . در مورد بن بست دیگه سوالی نیست ولی من سوال دومم در مورد پیشرفت نبود متوجه وابستگی دو فرایند شدم سوالم دربارهی قحطی فرایندی بود که به علت سرعت کند فرایند دیگه معلوم نیست تا کی باید منتظر ورود به ناحیه‌ی بحرانی باشه و چون مدت انتظارش معلوم نیست به نظر دچار قحطی شده . در صورتی که در الگوریتم اولین تلاش بحثی از قحطی نیست .

سوال از الگوریتم اولین تلاش - mamat - 03 آبان ۱۳۹۰ ۰۵:۰۰ ب.ظ

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