تالار گفتمان مانشت
الگوریتم strict alternation و پترسون برای n تا پروسس - نسخه‌ی قابل چاپ

الگوریتم strict alternation و پترسون برای n تا پروسس - maryam_ak - 13 خرداد ۱۳۹۱ ۰۶:۰۲ ب.ظ

سلام
می خواستم بدونم این الگوریتمارو چطور میشه برای n تا پروسس نوشت؟

الگوریتم strict alternation و پترسون برای n تا پروسس - mamat - 14 خرداد ۱۳۹۱ ۱۰:۲۶ ق.ظ

من الگوریتم strict alternation را نفهمیدم کدوم الگوریتمو میگین من تو کتاب استالینگز ندیدم همچین الگوریتمی
اما برا پترسون میتونم بگم
تو الگوریتم به جای اعداد (۱) یعنی هر عدد ۱ تو الگوریتم بزار (i-1) و به جای هر عدد ۰ بزار (i)
کد:
boolean flag[n];
int turn;
void Pi()
{
    while (true)
        {
            flag[i]=true;
            turn=1-i;
            while(flag[1-i]&&turn==1-i)
                    /*do nothing*/;
            /*critical section*/;
            flag[i]=false;
            /*remainder*/;
        }
}


void main()
{
   flag[i]=false;
   parbegin(Pi);
}

انشالله به دردتون بخورهSmile

RE: الگوریتم strict alternation و پترسون برای n تا پروسس - maryam_ak - 14 خرداد ۱۳۹۱ ۱۱:۱۲ ق.ظ

شما flag[i] و true کردین اون وقت turn و دادین یه چیز دیگه ؟ بعد این چطور برای n تا پروسس جواب داده ؟