زمان کنونی: ۱۰ آذر ۱۴۰۳, ۰۲:۳۷ ق.ظ مهمان گرامی به انجمن مانشت خوش آمدید. برای استفاده از تمامی امکانات انجمن می‌توانید عضو شوید.
گزینه‌های شما (ورودثبت نام)

سمافور؟؟؟

ارسال:
  

jafarir پرسیده:

سمافور؟؟؟

سلام
سوال) اگر فرایند زیر به صورت همروند اجرا شوند و مقدار اولیه ی سمافور x=3 و y=6 ،حداکثر تعداد فرایند در حال اجرا در قسمت های AوBوC ؟؟

[tex]down(x)[/tex]
A
[tex]down(y)[/tex]
B
[tex]up(x)[/tex]
C
[tex]up(y)[/tex]

۱) A=3, B=3,C=3
*۲) A=3,B=3,c=6
۳) A=3,B=6,c=6
۴) A=3,B=6,C=9
سوال من اینه که چرا C=6 شده من Cرو ۳ تا بدست آوردم؟؟Huh
ممنون

۰
ارسال:
  

mp1368 پاسخ داده:

RE: سمافور؟؟؟

سلام دوست عزیز.

اگر در ابتدا سه فرآیند به طور هم زمان این مجموعه دستورات رو که فرض کن مجموعا داخل یک تابع هست اجرا کنن. با توجه به مقدار x=3 هر سه فرآیند با کم کردن یکی واحد از شمارنده سمافور وارد ناحیه A میشن که باعث میشه x=0 شه، پس هر فرآیندی که بخواد این دستورات رو اجرا کنه به حالت مسدود میره . حالا ادامه کار با همین سه فرآیندی که وارد شدن، سه فرآیند با اتمار کار در ناحیه A با کم کردن یک واحد از شمانده ی y ، وارد ناحیه B می شن پس مقدار شمارنده y=3 هست.
و حواسمون باشه تا اینجا هیچ فرآیندی هم اجازه وارد شدن به ناحیه A رو نداشته بدلیل x=0 .
حالا اگه توجه کنی میبینی این سه فرآیند با اتمام کارشون توی ناحیه B هر کدام یک عدد به شمارنده x اضافه میکنند که مقدار x=3 میشه که به ترتیب سه فرآیند که اول کار مسدود میشن وارد ناحیه A می شن که آنها هم با اتمام کار توی ناحیه A به ترتیب مقدار y=0 می کن و وارد ناحیه B می شن. و در ادامه هم با up کردن x وارد ناحیه C می شوند و با اون سه فرآیندی که قبلا وارد ناحیه C شده بودن همون حداکثر ۶ فرآیند در ناحیه C می شن . در ادامه هم اگر این ۶ فرآیند کارشون تموم بشه با ۶ تا up رو y دوباره مقدار y=6 میشه که باعث تکرار روند قبلی تکرار میشه .
ان شالله که مطلب واست جا افتاده باشه اگه ابهام داشتی جاییش بگو با هم برطرفش کنیم.

ارسال:
  

sara_m پاسخ داده:

RE: سمافور؟؟؟

(۲۹ مهر ۱۳۹۱ ۰۱:۰۵ ب.ظ)mp1368 نوشته شده توسط:  حالا اگه توجه کنی میبینی این سه فرآیند با اتمام کارشون توی ناحیه B هر کدام یک عدد به شمارنده x اضافه میکنند که مقدار x=3 میشه که به ترتیب سه فرآیند که اول کار مسدود میشن وارد ناحیه A می شن که آنها هم با اتمام کار توی ناحیه A به ترتیب مقدار y=0 می کن و وارد ناحیه B می شن. و در ادامه هم با up کردن x وارد ناحیه C می شوند و با اون سه فرآیندی که قبلا وارد ناحیه C شده بودن همون حداکثر ۶ فرآیند در ناحیه C می شن . در ادامه هم اگر این ۶ فرآیند کارشون تموم بشه با ۶ تا up رو y دوباره مقدار y=6 میشه که باعث تکرار روند قبلی تکرار میشه .
ان شالله که مطلب واست جا افتاده باشه اگه ابهام داشتی جاییش بگو با هم برطرفش کنیم.

سلام
بچه ها من توی مبحث سمافور گیج شدم!!!!
همین مثال رو برا اینکه درک کنم بیشتر توضیح میدید؟
مخصوصا این تکه آخرش...Huh
یافتن تمامی ارسال‌های این کاربر



موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
Exclamation سوال از سمافور mary1234 ۱ ۲,۴۹۸ ۰۶ آذر ۱۳۹۷ ۰۷:۳۱ ب.ظ
آخرین ارسال: fatemehshiravani1998
  تحلیل کدنویسی(سمافور) diiimah ۰ ۱,۵۸۶ ۱۵ اردیبهشت ۱۳۹۷ ۰۱:۱۳ ب.ظ
آخرین ارسال: diiimah
  سمافور IT94 Hopegod ۴ ۳,۴۴۲ ۰۳ اردیبهشت ۱۳۹۶ ۱۱:۵۷ ب.ظ
آخرین ارسال: *tarannom*
  سمافور *tarannom* ۷ ۴,۹۲۷ ۱۸ فروردین ۱۳۹۶ ۰۲:۲۴ ب.ظ
آخرین ارسال: *tarannom*
  تعریف کلی سمافور alireza01 ۳ ۴,۷۷۷ ۰۳ بهمن ۱۳۹۵ ۰۲:۳۴ ب.ظ
آخرین ارسال: Saman
  سمافور ، کارشناسی ارشد کامپیوتر سراسری ۷۶ joyebright ۴ ۳,۷۴۶ ۰۳ آبان ۱۳۹۴ ۱۱:۳۱ ب.ظ
آخرین ارسال: محمد رعیت
  نمونه سوال های مفهومی از مبحث سمافور Emadsmart ۴ ۶,۹۳۲ ۳۰ فروردین ۱۳۹۴ ۰۲:۵۴ ب.ظ
آخرین ارسال: Sadi_gh
  حل مسئله انحصار متقابل با استفاده از سمافور ها (صفحه ۲۰۲ پارسه پاراگراف سه) m-kafiyan ۱۰ ۹,۳۸۴ ۰۷ آبان ۱۳۹۳ ۰۶:۵۲ ب.ظ
آخرین ارسال: m-kafiyan
  سوال در مورد سمافورها s.h5102 ۲ ۱,۹۹۸ ۰۶ آبان ۱۳۹۳ ۰۲:۰۱ ب.ظ
آخرین ارسال: s.h5102
  سمافور و انحصار متقابل - فضاپیمای راهیاب کنکور ۹۱ hosshah ۴ ۳,۹۵۰ ۲۳ بهمن ۱۳۹۲ ۰۴:۴۳ ب.ظ
آخرین ارسال: hosshah

پرش به انجمن:

Can I see some ID?

به خاطر سپاری رمز Cancel

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close

رمزت رو فراموش کردی؟

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. close