0

قسمت پایانی:آشنایی با مفاهیم پردازش و شیوه کار پردازنده (CPU)

 
samsam
samsam
کاربر طلایی1
تاریخ عضویت : بهمن 1387 
تعداد پست ها : 50672
محل سکونت : یزد

قسمت پایانی:آشنایی با مفاهیم پردازش و شیوه کار پردازنده (CPU)
جمعه 11 دی 1394  11:37 AM

بررسی الگوریتم

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

اولین مشکل،معرفی معیارها یی است که در یک الگوریتم مورد استفاده قرار می گیرد.همانطور که در بخش قبل دیدیم، بهره وری CPU، زمان پاسخ، یا توان عملیاتی است. برای انتخا یک الگوریتم، ابتدا باید اهمیت نسبی این معیارها معلوم شوند. معیار ما شامل موارد خاصی به شکل زیر است:

  • حداکثر کردن بهره وری CPU تحت شروط و محدودیتهایی که حداکثر زمان پاسخ 1 ثانیه شود.
  • حداکتر کردن توان عملیاتی به طوری که زمان برگشت (به طور میانگین) به طور خطی متناسب با زمان کل اجرا باشد.

زمانی که معیار گزینش مشخص شود، باید الگوریتمهای گوناگون را بررسی کنیم.

بررسی تحلیلی

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

مدلسازی قطعی

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

مثلا بار کاری زیر را در نظر بگیرید. تمامی این 5 فرایند در زمان 0 می رسند. به همان ترتیبی که وارد شده اند. و زمان اجرای CPU بر حسب میلی ثانیه معلوم شده است:

فرایند                                     زمان اجرا

P0                                           10

P1                                           29

P2                                           3

P3                                           7

P4                                           12

الگوریتمهای زمانبندی FCFS، SJFو RR (کوانتوم =10 میلی ثانیه) در نظر بگیرید. کدام الگوریتمها کمترین میانگین زمان انتظار می شود؟

برای الگوریتم fcfs فرایند ها را به شکل زیر اجرا می کنیم

P5

P4

P3

P2

P1

61

49

42

39

10

زمان انتظار 0 میلی ثانیه برای فرایند p1، 10 میلی ثانیه فرایند P2، 39 میلی ثانیه فرایند P3، 42 میلی ثانیه P4 و 49 میلی ثانیه برای فرایند P5 است.

بنابراین زمان انتظار میانگین به صورت زیر است:

(0+10+39+42+49)/5=28 میلی ثانیه

با زمانبندی غیر پیشگیرانه SJF فرایندها را اجرا می کنیم

P2

P5

P1

P4

P3

61

32

20

10

3

 

کوانتوم خیلی کوچک است، سربار برنامه ریزی به شکل زمان تغییر زمینه بیش از اندازه خواهد بود.

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

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

مدیریت بالاتر

مدیریت انتظارات تابعی را مشخص می کند که توسط مدیر باید اجرا شود. برای براورده کردن انتظارات مذیریت بالاتر ، مدیر باید با دیگر گروهها تعامل داشته باشد. هر درخواست نقش معمولا در تعامل با دیگران خواهد بود.

تشکرات از این پست
دسترسی سریع به انجمن ها