نمایش نتایج 1 تا 7 از 7

نام تاپیک: چگونه سیستم عامل متوجه می شود که یک درخواست منجر به بن بست می شود یا نه؟!

  1. #1

    چگونه سیستم عامل متوجه می شود که یک درخواست منجر به بن بست می شود یا نه؟!

    در اجنتاب از بن بست (deallock avoidance) داریم: هنگامیکه پردازشی می خواهد از یک منبع استفاده کند سیستم عامل بررسی می کند که آیا اون برنامه منجر به بن بست می شود یانه!
    می خوام بدونم چجوری os می فهمه که فلان پردازش بن بست ایجاد می کنه؟!

    سپاس

  2. #2

    نقل قول: چگونه سیستم عامل متوجه می شود که یک درخواست منجر به بن بست می شود یا نه؟!

    سلام
    روشهاي بن بست و اجتناب از بن بست داخل كتاب تتباوم توضيح داده شده. اكثر سيستم عاملها از روش شتر مرغ استفاده ميكنن چون ارزش نداره كه بررسي و اجتناب از بن بست بكنن.

  3. #3

    نقل قول: چگونه سیستم عامل متوجه می شود که یک درخواست منجر به بن بست می شود یا نه؟!

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

  4. #4

    نقل قول: چگونه سیستم عامل متوجه می شود که یک درخواست منجر به بن بست می شود یا نه؟!

    باز میگم خیلی بحث داره. سیلبر شاتز هم یه کتاب داره. دکتر حقیقت هم یه کتاب داره. اصلا سیستم عامل با یکی دو تا کتاب کارت پیش نمی ره. مگه اینکه عمقی بخونیش.
    بر منكرش لعنت.

    من خودم اول كتاب تتباوم رو ترجيح ميدم و بعد استالينگ. چون خودم هم دارم OS مي نويسم خيلي خوب ميدونم كتاب تتباوم مابين تمام كتابها به تمام معنا متفاوت و بهتر هست. مخصوصا مباحث مرتبط با مينيكس ( كه توي بعضي از چاپها نيست.) . اين كتاب اينقدر نكات ريزي توش داره كه فقط موقع پياده سازي متوجه اكثر جمله هاي ميشيد. من تا حالا اين كتاب رو سه بار از اول تا آخر خومندمش

  5. #5
    کاربر دائمی آواتار fazel-d
    تاریخ عضویت
    آذر 1386
    محل زندگی
    بورکینافاسو
    پست
    399

    نقل قول: چگونه سیستم عامل متوجه می شود که یک درخواست منجر به بن بست می شود یا نه؟!

    نقل قول نوشته شده توسط pswin.pooya مشاهده تاپیک
    سلام
    روشهاي بن بست و اجتناب از بن بست داخل كتاب تتباوم توضيح داده شده. اكثر سيستم عاملها از روش شتر مرغ استفاده ميكنن چون ارزش نداره كه بررسي و اجتناب از بن بست بكنن.
    البته این موضوع قابل توجه هست که : بین پیشگیری با اجتناب تفاوت و جود داره..!!

    الگوریتمی که تتنباوم به عنوان اجتناب معرفی می کنه Banker هست و از بانکدار می خواد که سرمایه بانکه رو به گونه ای بین مشتریان تقسیم کنه که بانک بر شکسته نشه.!!
    برای پیشگیری هم ار روش شترمرغ. که همون کبک خودمونه. یعنی سر سیستم عامل رو مثل کبک می کنی توی برف . این گار که بن بستی رخ نمی ده و نخواهد داد. اگر هم بخواد بده آخرش اینه که کاربر سیستم رو Reset می کنه
    ('$')

  6. #6
    کاربر جدید آواتار ali shabani fard
    تاریخ عضویت
    دی 1388
    محل زندگی
    جنگل
    پست
    24

    نقل قول: چگونه سیستم عامل متوجه می شود که یک درخواست منجر به بن بست می شود یا نه؟!

    الگوریتم بانکر کاملا قابل فهمه و اصلا سر سیستم عامل رو تو برف نمی کنه با منابعی که در اختیار سیستم عامل هست با توجه به اولویت هر پردازش و در خواست استفاده هر پردازش از منابع موجود منابع رو اختصاص میده، بن بست وقتی رخ میده که منابع محدود تر از درخواست هر پردازش برای قرار گرفتن در صف پردازش موجود باشه . سیستم عامل برای اینکار از چند ماتریس استفاده میکنه. در ضمن فکر نمیکنم سیستم عاملی وجود داشته باشه که بتونه بدون پردازش از بن بست جلوگیری کنه اول چک میکنه بعد پردازش رو انجام میده اگه منابع محدود بود پروسس ها رو جابجا میکنه

  7. #7
    کاربر دائمی آواتار aakh1361
    تاریخ عضویت
    آبان 1383
    محل زندگی
    تهران - سه راه افسریه - شهرک کاروان
    پست
    380

    نقل قول: چگونه سیستم عامل متوجه می شود که یک درخواست منجر به بن بست می شود یا نه؟!

    سیستم هیچ جوری نمیتونه بفهمه !
    در کد نویسی سیتم عامل اصلا به این موضوع توجه نمیشه چون بسیار زیاد برای سیستم سربار داره (البته در مورد بعضی منابع که بسیار کم در یک بازه زمانی ازشون استفاده میشه شاید استفاده بشه)

    برای همینه که بعضی از برنامه ها اصطلاحا هنگ میکنند و مجبور میشید دوباره اجراشون کنید
    یک جوریای هرکی به هرکیه چون احتمالش (بن بست) خیلی خیلی کمه ولی پیش میاد

    البته میشه کرنل رو جوری نوشت که بتونه بصورت نسبی بن بست رو کشف کنه که همون طور که اقا پویا گفتن کتاب تننبام کتاب بسیار خوبیه و کاملا توضیح داده
    ولی به خاطر سربار بسیار زیاد معمولا اینکار رو نمیکنند (کشف بن بست) مثل لینوکس

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •