time spent waiting + expected service time expected service time

Document Sample
time spent waiting + expected service time expected service time Powered By Docstoc
					Uniprocessor Scheduling

                     ‫فصل نهم‬
‫‪Aim of Scheduling‬‬

                               ‫‪ ‬اهداف‬
                         ‫‪ ‬زمان پاسخ‬
                       ‫‪ ‬توان عملیاتی‬
                    ‫‪ ‬کارآیی پردازنده‬
‫‪Types of Scheduling‬‬

                                   ‫‪ ‬زمانبندی طوالنی مدت‬
                  ‫‪ ‬تصمیم گیری در مورد پذیرش فرآیند جدید‬
                                      ‫‪ ‬زمانبندی میان مدت‬
   ‫‪ ‬تصمیم گیری در مورد اضافه نمودن کل یا بخشی از فرآیند‬
                                         ‫به حافظه اصلی‬
                                     ‫‪ ‬زمانبندی کوتاه مدت‬
                 ‫انتخاب یکی از فرآیندهای آمده برای اجرا‬   ‫‪‬‬

                                            ‫‪ ‬زمانبندی ‪I/O‬‬
  ‫‪ ‬انتخاب یکی از فرآیندهای منتظر ‪ I/O‬برای دسترسی به ‪I/O‬‬
                                                ‫موجود‬
‫‪Long-Term Scheduling‬‬

    ‫‪ ‬مشخص می کند که کدام برنامه برای پردازش توسط‬
                             ‫سیستم پذیرفته می شود.‬
              ‫‪ ‬درجه ی چندبرنامگی را مشخص می کند.‬
 ‫‪ ‬هر چه تعداد فرآیندها بیشتر باشد، درصد کمتری از وقت‬
      ‫پردازنده برای اجرا به فرآیندها تخصیص می یابد.‬
‫‪Medium-Term Scheduling‬‬

                          ‫‪ ‬جزیی از تابع جابجایی است.‬
 ‫‪ ‬تصمیم برای مبادله یک فرآیند به داخل بر اساس نیازهای‬
      ‫مدیریت درجه ی چند برنامگی صورت می گیرد.‬
‫‪Short-Term Scheduling‬‬

  ‫‪ ‬معموال تحت عنوان ‪ Dispatcher‬یا توزیع کننده شناخته‬
                                              ‫می شود.‬
                   ‫‪ ‬بیشتر از همه فرآیندها اجرا می گردد.‬
          ‫‪ ‬هر وقت یک اتفاق رخ دهد، صدا زده می شود:‬
                                    ‫‪ ‬وقفه های ساعت‬
                                      ‫‪ ‬وقفه های ‪I/O‬‬
                                 ‫‪ ‬فراخوانیهای سیستمی‬
                                           ‫‪ ‬سیگنالها‬
‫‪Short-Term Scheduling Criteria‬‬

                                            ‫‪ ‬کاربر- محور‬
                                             ‫‪ ‬زمان پاسخ‬
      ‫‪ ‬مدت زمان بین ارسال یک درخواست و دریافت پاسخ آن‬
                                            ‫‪ ‬سیستم-محور‬
                         ‫‪ ‬استفاده موثر و کارآ از پردازنده‬
‫‪Short-Term Scheduling Criteria‬‬

                                        ‫‪ ‬معیارهای وابسته به کارآیی‬
                                            ‫‪ ‬قابل اندازه گیری (کمی)‬
                                     ‫‪ ‬مثل زمان پاسخ و توان عملیاتی‬
                                 ‫‪ ‬معیارهای غیر وابسته به کارآیی‬
                                                                       ‫‪ ‬کیفی‬
                                                ‫‪ ‬مثل قابلیت پیش بینی‬
  ‫خدمات ارائه شده به کاربر در طی زمان، دارای مشخصات یکسانی باشد.‬   ‫‪‬‬
‫‪Priorities‬‬

   ‫‪ ‬زمانبند همیشه فرآیندی را که اولویت آن بیشتر هست را‬
                                      ‫ترجیح می دهد.‬
  ‫‪ ‬در این حالت، برای هر سطح از اولویت یک صف آماده‬
                                               ‫داریم.‬
        ‫‪ ‬ممکن است فرآیندهای کم اولویت گرسنگی بکشند.‬
     ‫‪ ‬می توان به فرآیند اجازه داد که اولویت خود را بر اساس‬
                                    ‫طول عمر تغییر دهد.‬
‫‪Decision Mode‬‬

                                         ‫‪ ‬بدون قبضه کردن‬
      ‫‪ ‬فرآیندی که در حال اجرا است، تا وقتی که تمام نشود یا‬
                         ‫مسدود نشود به اجرا ادامه می دهد.‬
                                             ‫‪ ‬با قبضه کردن‬
   ‫‪ ‬ممکن است که فرآیند در حال اجرا دچار وقفه شود یا توسط‬
                        ‫سیستم عامل به حالت آماده برگردد.‬
 ‫‪ ‬چون هیچ فرآیندی پردازنده را به انحصار خود در نمی آورد،‬
                 ‫در این روش خدمات بهتری ارائه می شود.‬
Process Scheduling Example
‫)‪First-Come-First-Served (FCFS‬‬

             ‫0‬          ‫5‬           ‫01‬          ‫51‬           ‫02‬



         ‫‪A‬‬
         ‫‪B‬‬
         ‫‪C‬‬
         ‫‪D‬‬
         ‫‪E‬‬

                         ‫‪ ‬فرآیند تازه به صف آماده ها می پیوندد.‬
  ‫‪ ‬وقتی که اجرای فرآیند جاری تمام شد، قدیمی ترین فرآیند موجود‬
                     ‫در صف آماده برای اجرا انتخاب می گردد.‬
‫)‪First-Come-First-Served (FCFS‬‬

  ‫‪ ‬ممکن است که فرآیندهای کوتاه مدت زمان زیادی منتظر‬
                                        ‫اجرا باقی بمانند.‬
    ‫‪ ‬به نفع فرآیندهای که نیاز ‪ I/O‬آنها کم و نیاز پردازنده‬
                             ‫آنها زیاد است عمل می کند.‬
‫‪Round-Robin‬‬
        ‫0‬         ‫5‬            ‫01‬         ‫51‬          ‫02‬



    ‫‪A‬‬
    ‫‪B‬‬
    ‫‪C‬‬
    ‫‪D‬‬
    ‫‪E‬‬




                ‫‪ ‬از وقفه ساعت برای قبضه کردن استفاده می کند.‬
 ‫‪ ‬هر فرآیند به اندازه یک مدت زمان معین از پردازنده استفاده می‬
                                                         ‫کند.‬
‫‪Round-Robin‬‬

     ‫‪ ‬وقفه های ساعت در فواصل منظمی تولید می شوند.‬
   ‫‪ ‬وقتی وقفه ساعت رخ می دهد، فرآیند در حال اجرا به‬
                            ‫صف آماده ها بر می گردد.‬
           ‫‪ ‬فرآیند سر صف برای اجرا انتخاب می گردد.‬
       ‫‪ ‬این روش به نام برهه زمانی نیز شناخته می شود.‬
‫‪Shortest Process Next‬‬
         ‫0‬         ‫5‬           ‫01‬          ‫51‬          ‫02‬



     ‫‪A‬‬
     ‫‪B‬‬
     ‫‪C‬‬
     ‫‪D‬‬
     ‫‪E‬‬


                        ‫‪ ‬یک سیاست بدون قبضه کردن است.‬
  ‫‪ ‬فرآیندی که به زمان کمتری برای اجرا نیاز دارد انتخاب می‬
                                                   ‫شود.‬
                      ‫‪ ‬باید بتوان زمان پردازش را تخمین زد.‬
‫‪Shortest Process Next‬‬


     ‫‪ ‬قابلیت پیش بینی فرآیندهای طوالنی کاهش می یابد.‬

     ‫‪ ‬ممکن است که فرآیندهای طوالنی گرسنگی بکشند.‬

    ‫‪ ‬اگر زمان تخمینی اجرای فرآیند درست نباشد، ممکن‬
                   ‫است سیستم عامل آنرا قطع نماید.‬
‫‪Shortest Remaining Time‬‬
         ‫0‬       ‫5‬         ‫01‬        ‫51‬         ‫02‬



     ‫‪A‬‬
     ‫‪B‬‬
     ‫‪C‬‬
     ‫‪D‬‬
     ‫‪E‬‬



             ‫‪ ‬نسخه همراه با قبضه کردن روش ‪SPN‬‬
              ‫‪ ‬باید بتوان زمان پردازش را تخمین زد.‬
Highest Response Ratio Next (HRRN)

           0          5                   10                 15   20



       A
       B
       C
       D
       E



                                .‫هدف مینیمم کردن معیار زیر است‬         
               .‫لذا، فرآیندی که بیشترین نرخ را دارد، انتخاب می شود‬     

                     time spent waiting + expected service time
                               expected service time
‫‪Feedback‬‬
           ‫0‬        ‫5‬          ‫01‬        ‫51‬         ‫02‬



       ‫‪A‬‬
       ‫‪B‬‬
       ‫‪C‬‬
       ‫‪D‬‬
       ‫‪E‬‬

   ‫‪ ‬کارهایی که مدت طوالنی تری در حال اجرا هستند را‬
                                           ‫جریمه کنید.‬
  ‫‪ ‬مقدار زمانی را که فرآیند برای خاتمه نیاز دارد را نمی‬
                                                  ‫دانیم.‬

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:48
posted:10/29/2012
language:Persian
pages:25