1 / 46

سيستمهای چندپردازنده ای

سيستمهای چندپردازنده ای. سیستمهاي عامل پیشرفته. انواع سیستمهای چندپردازنده ای (چند cpu داریم). از دیدگاه سخت افزاری همگن(متجانس) (همه cpu ها از یک نوع باشند) ناهمگن(نامتجانس) آیا پردازنده های روی مادربورد سیستم چند پردازنده محسوب میشود؟

Download Presentation

سيستمهای چندپردازنده ای

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. سيستمهای چندپردازنده ای سیستمهاي عامل پیشرفته

  2. انواع سیستمهای چندپردازنده ای(چند cpu داریم) از دیدگاه سخت افزاری همگن(متجانس) (همه cpu ها از یک نوع باشند) ناهمگن(نامتجانس) آیا پردازنده های روی مادربورد سیستم چند پردازنده محسوب میشود؟ خیر منظور پردازنده ای است که چند منظوره باشد نه تک منظوره از دیدگاه نرم افزاری (از دیدگاه سیستم عامل) متقارن: در این سیستمها، تمامی پردازنده ها دارای نسخه یکسانی از سیستم عامل هستند و در هنگام نیاز با هم ارتباط برقرار می کنند. نامتقارن: در این سیستمها، یا هر پردازنده سیستم عامل خاص خودش را دارد (با هم متفاوتند) و یا اینکه یک سیستم عامل به بخشهایی شکسته شده و هر بخش روی یک پردازنده اجرا می شود. سیستم هاي عامل پیشرفته

  3. مزایای یک سیستم چندپردازنده ای افزایش سرعت ( به علت اجرای موازی برنامه ها) افزایش تحمل پذیری خطا (درصورت خرابی يک پردازنده، ديگر پردازنده ها می توانند اين کار را انجام دهند اما با کارايی پايين تر) کاهش نسبت هزینه به کارایی (به جای تهيه چند کامپيوترکامل می‏توان از چندپردازنده وتنها يک case و يک power استفاده کرد.) کاربردها (شطرنج، محاسبات مربوط به هواشناسی ...) سیستم هاي عامل پیشرفته

  4. مقايسه سيستم های چندکامپيوتری(شبکه ای) با چندپردازنده ای هردو سيستم به روش چندداده – چنددستور(MIMD) عمل می کنند. ارتباط ميان فرآيندها در سيستمهای چندپردازندهای با استفاده از حافظه مشترک (Shared Memory) و در سيستمهای چندکامپيوتری از طريق تبادل پيغام(Message Passing) صورت می گيرد. سهولت قابليت گسترش :(Scalability) در سيستمهای چند کامپيوتری راحت تر از چندپردازنده ای ها انجام می شود Increamental با قدرت بیشتری است(یکی یکی افزایش دادن) روی سيستمهای چندپردازنده ای يک نوع سيستم عامل وجود دارد اما در سيستمهای چند کامپيوتری می تواند بر روی هر کامپيوتر سيستم عامل متفاوتی وجود داشته باشد. سیستم هاي عامل پیشرفته

  5. مقايسه سيستم های چندکامپيوتری با چندپردازنده ای معیار کارایی/هزینه سرعت درسيستمهای چندپردازنده ای نسبت به سيستمهای چندکامپيوتری بيشتر است. چند کامپيوتریها از نظر سرعت مانند چند پردازنده ای ها عمل می کنند به شرطی که شبکه ارتباطيآنها سريع باشد. سیستم هاي عامل پیشرفته

  6. معماری یک سیستم چندکامپيوتری حافظه محلی(LM) I/O ماژول1 ماژول2 ماژول3 … پروسسور انتخابگرBus شبکه نمايی از يک ماژول سیستم هاي عامل پیشرفته

  7. معماری یک سیستم چندپردازنده ای در یک بورد قرار میگیرند InterruptSignal Interconnection network I/O Processor Interconnection Network P0 P1 Pn LM0 LM1 LM n Local Memories . . . چون چند پردازنده نمی توانند همزمان در يک حافظه مشترک بنويسند برای منتظر نماندن هر پردازنده بايد چندين حافظه مشترک وجودداشته باشد. معمولا گذرگاه مشترک است. . . . SM0 SM1 SMm Shared Memories d1 d2 … … d(k) Processor Memory Interconnection Network سیستم هاي عامل پیشرفته

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

  9. سازماندهی سیستم عاملهای چند پردازنده ای آیا همه باید سیستم عامل را داشته باشندو... ازجمله وظایف سیستم عامل سرویس دهی است، در واقع سرویس های سیستم عامل چند پردازنده ای بین چند پردازنده توزیع می شوند و یا هر پردازنده یک یا چندین سرویس دارد. 1- روش Master/Slave 2- روش Separate Supervisor (سرپرست مجزا) 3- روش Floating Supervisor (روش سرپرست شناور) سیستم هاي عامل پیشرفته

  10. روش Master/Slave Pn P2 P0 P1 هسته OS فرآيند1 فرآيند2 فرآيندn ... در اين روش هسته بر روی يک پردازنده قرار می‎گيرد و اين پردازنده فرآيندهای موجود را بر روی پردازنده‏های ديگر توزيع می‏کند. تمام مدیریت زمانبندی و.. روی master انجام میشود فرآيندها بصورت موازی اجرا می‎‎شود در نتیجه سرعت اجرا بالا رفته و زمان اجرا کاهش می‎یابد. سيستمهايی مانند Windowsو Unix از اين دسته اند. سیستم هاي عامل پیشرفته

  11. ویژگیهای روش Master/Slave پیاده سازی و مدیریت آن بسیار ساده است.(هر جا متمرکز است مدیریت آسانتراست) عیب:1)قابليت اطمينان پایین: با از کارافتادن يک پردازنده (پردازنده مربوط به هسته) فرآيندهای اجرايی ديگر از کار می افتند.(یک نقطه خرابی داریم) 2)وجود گلوگاه(Bottleneck): پديده ای است که درآن چند پردازنده برای اجرای وظايف خود می‏خواهند از يک منبع (پردازنده) استفاده کنند. System callها روی هسته است. با فراخوانی برنامه متوقف میشود تا هسته اجرا شود. 3) کاهش سرعت: برای فرایندهایی که نیاز به System Call دارند هسته همیشه در حال اجرا است. سیستم هاي عامل پیشرفته

  12. روش سرپرست مجزا P0هسته Shell P2هسته Pnهسته P1هسته ….. در اين حالت هسته سيستم عامل برروی تمام پردازنده ها به صورت جداگانه قرار می گيرد اما تنها يک Shell(پوسته ارتباط با کاربر) وجود دارد که فرآیندهای ديگر هم برای ارتباط با کاربر از همين پوسته استفاده می کنند. هسته روی تمام پردازنده ها قرار می‎گیرد و روی هر پردازنده چندین فرایند می‏تواند اجرا شود. سیستم هاي عامل پیشرفته

  13. ویژگی های روش سرپرست مجزا عیب ها:اين روش مشکلات روش Master/Slave را ندارد. تکرار هسته سيستم عامل فضای زيادی از حافظه را اشغال می کند. مدیریت پیچیده‏تری دارد. Shell با همه ارتباط دارد.دستورات کاربر را میگیرد به دیگران منتقل میکند. اگر پوسته یا پردازنده دارای پوسته از کار بيفتد امکان ارتباط فرایندها با کاربر قطع می شود هرچند که پردازنده ها می توانند به کار پردازشی خود ادامه دهند. مزیت:افزایش سرعت: برای فرایندهایی که نیاز به System Call دارند هر زمان که نیاز باشد همزمانی ایجاد می شود زیرا کدهای سیستم عامل بر روی هر پردازنده قرار می گیرد. سیستم هاي عامل پیشرفته

  14. روش سرپرست شناور P1 Print Server P2 File Server … Pn Memory Server این روش ترکیبی از دو روش قبل است. ريزهسته سيستم عامل برروی تمام پردازنده ها قرار می گيرد. هر يک از سرویسهای سيستم عامل بر روی يکی از پردازنده ها قرار می گيرد .(shell یکی از سرویس های سیستم عامل است. میتوان چند تا داشت ولی در آن واحد یکی استفاده شود) سیستم هاي عامل پیشرفته

  15. ویژگی های روش سرپرست شناور نسبت به روش Master/Slave جای بيشتری را اشغال می کند چون علاوه بر تمام سرویسهای سیستم عامل هر پردازنده ريز هسته دارد نسبت به روش سرپرست مجزا حجم کمتری اشغال می کند چون سرویسها توزيع شده است. تا حدودی از اجرای همزمان و موازی فرایندها استفاده می شود. عیب:ممکن است تا چند کار به مثلاً memory server احتیاج داشته باشند سیستم هاي عامل پیشرفته

  16. وظایف سیستم عامل در سیستم چندپردازنده‏ای بسیارشبیه سیستم عامل تک‎پردازنده‏ای 1- مدیریت فرایند (زمانبندی، بن بست، .... ) تفاوت چندپردازنده‏ای با تک‏پردازنده‏ای در تعداد منابع پردازشی است و در نتیجه زمانبندی‏‎ها نیز متفاوت است چون در سیستم‏های چندپردازنده‏ای علاوه بر چگونگی تخصیص پردازنده ها به فرایندها، تخصیص کدامین پردازنده به کدامین فرایند نیز مورد نظر است. 2- مدیریت I/O (چاپگر) 3- مدیریت حافظه اولیه (RAM) 4- مدیریت حافظه ثانویه (فایل) 5- شبکه‎بندی ویندوز xp تا 4 پردازنده را میشناسد سیستم هاي عامل پیشرفته

  17. زمان بندی cpu(Scheduling) هدف از زمان بندی،تخصیص پردازنده ها به فرآیندها در طول زمان است به گونه ای که هدفهای سیستم برآورده شود. (هدف: throghput بالا برود، متوسط زمان پاسخ کم بشود، ...) الگوریتم زمان بندی تصمیم گیری برای چگونگی اختصاص فرآیندها به پردازنده ها است نه اجرای فرآیندها زمانبندی با اجرا متفاوت است سیستم هاي عامل پیشرفته

  18. انواع زمان بندی 1- انحصاری، غیر قابل پس گرفتن (Non-preemptive) هنگامی که پردازنده در اختیار یک فرآیند قرار گرفت، آنقدر در اختیارش باقی می ماند تا فرآیند به اتمام برسد یا مسدود شود (مثل:عمل I/Oو send,recieve ) 2- غیر انحصاری، قابل پس گرفتن (Preemptive) هنگامی که زمانبند سیستم عامل پردازنده را به یک فرآیند واگذار کرد، می تواند بر طبق الگوریتم زمان بندی بر خلاف میل فرآیند، پردازنده را از فرآیند باز پس گیرد. سیستم هاي عامل پیشرفته

  19. انواع زمان بندی 2 1- زمانبندی قطعی Deterministic هر بار که الگوریتم زمانبندی برای تعداد فرایند یا تعداد کار ثابت اجرا می شود یک جواب حاصل می شود. مانند SJF 2- زمانبندی غیر قطعی Non deterministic در هر بار اجرای الگوریتم زمانبندی ممکن است جواب های متفاوتی بدست آید. مانند الگوریتمهای ژنتیک سیستم هاي عامل پیشرفته

  20. انواع زمان بندی 3 1- زمان بندی ايستا (Static) به گونه ای که زمان ورود کارها به سيستم و مدت زمان انجام آنها قبل از شروع برای الگوریتم زمانبندی مشخص است و اگر کار جدیدی وارد سیستم شود تا پایان اجرای کلیه کارهای قبلی در زمانبندی دخالت داده نمی‎شود.(مثل sjf)کاربرد این زمانبندی در web server است 2- زمان بندی پويا (Dynamic) ممکن است مشخصات کليدی کارها از قبيل مدت زمان انجام آنها در زمان اجرای برنامه تغییر یابد.اگر کار جدیدی وارد سیستم شود در هنگام اجرای کارهای قبلی ممکن است در زمانبندی دخالت داده شود. سیستم هاي عامل پیشرفته

  21. الگوریتمهای زمانبندی پویا در سیستم چند پردازنده ای 1- اشتراک بار Load Sharing 2- زمانبندی گروهی 3- اختصاص پردازنده به فرآیند 4- جداسازی سیاست از مکانیزم زمانبندی سیستم هاي عامل پیشرفته

  22. الگوریتم زمانبندی اشتراک بار فرآیند ها وارد صف مشترک مابین پردازنده ها (اشتراک بار) می شوند. پردازنده های بیکار آنها را از صف برمی‏دارند و اجرا می‎کنند. پس از اتمام زمان در نظر گرفته شده برای هر يک از فرآیند (زمانبندی قابل پس گرفتن) یا اتمام فرایند یا انجام هر عملی که باعث مسدود شدن شود مثل عمل I/O (زمانبندی غیر قابل پس گرفتن) فرآیند دوباره به انتهای صف می‏رود. پردازنده ای که از انجام آن فارغ شده فرآیند بعدی موجود در صف را برمی‏دارد و انجام می‏‎دهد وبه همين ترتيب... سیستم هاي عامل پیشرفته

  23. ویژگی های الگوریتم زمانبندی اشتراک بار P0 P1 ... Pn P0 P1 ... صف فرایندها هميشه پردازنده ها بطور متوازن در حال کارند و معمولا پردازنده بيکار وجود ندارد. بهره وری یا مشغول بودنcpu بالا میرود صف مشترک را هرگونه می توان پياده سازی نمود در نتیجه گرسنگی نداریم و به روشهای مختلف زمان بندی کرد.(,..fifo,RR) مدیریت صف مشترک ساده است. cache در نظرگرفته شده برای هر يک از پردازنده ها جهت ذخيره اطلاعات یا کدهای فرایندها قبلی اجرا شده روی پردازنده ممکن است ارزشی نداشته باشد. کش: حافظه سریعی است که بین cpu و حافظه کند قرار میگیره صف مشترک بخش بحرانی می‎شود و سبب ایجاد گلوگاه می شود. Pn سیستم هاي عامل پیشرفته

  24. الگوریتم زمانبندی گروهی گروهی از فرایندها که با هم ارتباط بیشتری دارند یا يک فرایند به همراه نخهای آن با یکدیگر زمانبندی شده و همزمان به گروهی از پردازنده ها تخصیص داده شده یا از گروه گرفته می‏شود. چون به صورت موازی اجرا می شود باعث افزایش سرعت می شود و کمتر مسدود می شود بخاطر ارتباطاتی که با یکدیگر دارند. برای اینکه ارتباط بین فرآیندها را تشخیص داد میشود یک history از ارتباطشان تهیه کرد سیستم هاي عامل پیشرفته

  25. الگوریتم زمانبندی اختصاص پردازنده به فرآیند گروهی از فرایندها که با هم ارتباط بیشتری دارند یا يک فرایند به همراه نخهای آن همزمان به گروهی از پردازنده ها تخصیص داده می شوند. هیچگاه فرآیند از پردازنده پس گرفته نمی‏شود مگر اینکه فرآیند تمام شود.(i/o هم رخ دهد پس گرفته نمیشود) سرعت اجرا بالا می‎رود چون تعویض فرایند وجود ندارد. عیب بزرگ این روش بی کار بودن پردازنده و کاهش بهره وری پردازنده است. سیستم هاي عامل پیشرفته

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

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

  28. معیار مهم زمانبندی در سیستمهای چند پردازنده ای Total finish time(make span) یکی از معیارهای زمانبندی ایستا در سیستمهای چند پردازنده ای است. حداکثر زمانی که برای اجرای کل کارها (Taskها) طول می کشد را Total finish time می گویند. حداکثر زمانی که آخرین کار تمام میشود. هر چه TFT کوچکتر باشد میشود گفت پردازنده ها متعادلتر کارها را انجام میدهند سیستم هاي عامل پیشرفته

  29. معیارهای زمان بندی جمع کل زمانهای اجرا = میزان موازی سازی بزرگترین زمان در TFT زمان پردازش = بهره وری CPU زمان کل تعداد کار تکمیل شده در واحد زمان = توان عملیاتی زمان کل سیستم هاي عامل پیشرفته

  30. الگوریتمهای زمانبندی ایستا در چند پردازنده ای • الگوریتم زمانبندی ایستا قابل پس گرفتن • Bin Packing • الگوریتم زمانبندی ایستا غیر قابل پس گرفتن SPT (Shortest Processing Time) LPT (Largest Processing Time) RLPT (Reverse Largest Processing Time) LSPT (Largest Shortest Processing Time) الگوریتمهای اکتشافی سیستم هاي عامل پیشرفته

  31. الگوریتم زمانبندی ایستا قابل پس گرفتن Bin Packing یک الگوریتم قابل پس گرفتن است. در اين روش به هر پردازنده حداکثر زمانی به اندازه FToptداده می شود که عبارت است از: FTopt = Max { , Max(Ti) } سپس کارها به هر ترتیبی (مثلاً ترتيب بزرگی به کوچکی) به پردازنده ها نسبت داده می شوند. ادعا میکند که بهترین TFT را میدهد ∑Ti m طول بزرگترين کارموجود مجموع طول کارهاتقسيم بر تعداد پردازنده ها سیستم هاي عامل پیشرفته

  32. مثال الگوریتم Bin Packing زمان کارهای موجود در سيستم عبارتنداز: Ti = {15, 11, 8, 7, 4, 2, 1, 1} M = 2 تعداد پردازنده ها مجموعه کارها Ftopt = Max { 15,(15+11+8+7+4+2+1+1)/2 } = Max {15, 24.5} = 24.5 M1 24.5 M2 24.5 سیستم هاي عامل پیشرفته

  33. الگوریتمهای زمانبندی ایستا غیرقابل پس گرفتن SPT (Shortest Processing Time) مثل SJF اینجا کار کوچکتر به پردازنده بیکار داده میشود LPT (Largest Processing Time) RLPT (Reverse Largest Processing Time) LSPT (Largest Shortest Processing Time) سیستم هاي عامل پیشرفته

  34. سیستم هاي عامل پیشرفته

  35. الگوریتم زمانبندی SPT Shortest Process Time یک الگوریتم غیرقابل پس گرفتن است. 1- کارها (Taskها) بر اساس زمان اجرایشان به صورت صعودی مرتب می شوند. 2- کوچکترين کاردر اولين پردازنده آزاد قرار می گيرد و کار بعدی در پردازنده آزاد بعدی الی آخر تا تمام کارها زمانبندی شوند. سیستم هاي عامل پیشرفته

  36. سیستم هاي عامل پیشرفته

  37. مثال الگوریتم زمانبندی SPT Ti = {1, 4, 7, 7, 9, 15, 18, 20, 30, 70} M = 3 M1 96 1 8 0 26 M2 13 0 4 33 M3 52 22 7 0 TFT (SPT) = 96 10 کار موجود در یک سيستم با 3 پردازنده عبارتند از:به صورت صعودی مرتب میکنیم سیستم هاي عامل پیشرفته

  38. الگوریتم زمانبندی LPT Longest Processing Time یک الگوریتم غیرقابل پس گرفتن است. 1- کارها بر اساس زمان اجرایشان به صورت نزولی مرتب می شوند. 2- بزرگترين کاردر اولين پردازنده آزاد قرار می گيرد و کار بعدی در پردازنده آزاد بعدی الی آخر تا تمام کارها زمانبندی شوند. LPT چه مزیتی نسبت SPT به دارد؟ LPT بهتر از SPT است.TFT بهتراست اما زمان پاسخ و زمان انتظارش بدتر است سیستم هاي عامل پیشرفته

  39. مثال الگوریتم زمانبندی LPT 10 کار موجود در یک سيستم با 3 پردازنده عبارتند از: Ti = {1, 4, 7, 7, 9, 15, 18, 20, 30, 70} M = 3 M1 70 M2 30 45 52 56 M3 55 20 54 49 38 TFT (LPT) = 70 سیستم هاي عامل پیشرفته

  40. الگوریتم زمانبندی RLPT Reverse Longest Processing Time یک الگوریتم غیرقابل پس گرفتن است. 1- کارها بر اساس زمان اجرایشان به صورت نزولی مرتب می شوند. 2- بزرگترين کار در اولين پردازنده آزاد قرار می گيرد و کار بعدی در پردازنده آزاد بعدی الی آخر تا تمام کارها زمانبندی شوند. 3- برای هر پردازنده لیست کارهای اجرایی معکوس می شود. RLPT چه مزیتی نسبت LPT به دارد؟ سیستم هاي عامل پیشرفته

  41. مثال الگوریتم زمانبندی RLPT 10 کار موجود در یک سيستم با 3 پردازنده عبارتند از:برای هر پردازنده لیستی که میخواید بدین برا اجرا برعکسش کن Ti = {1, 4, 7, 7, 9, 15, 18, 20, 30, 70} M = 3 M1 70 M2 4 13 25 56 M3 17 8 55 22 1 ثابت ماند.زمان پاسخ و انتظار کم شدTFT (RLPT) = 70 سیستم هاي عامل پیشرفته

  42. الگوریتم زمانبندی LSPT Longest Shortest Processing Time یک الگوریتم غیرقابل پس گرفتن است. این الگوریتم تلفیقی از الگوریتم های SPT و LPT است. 1- کارها بر اساس زمان اجرایشان به صورت صعودی مرتب می شوند. 2- سپس به ترتیب کارها به دسته های M تایی تقسیم می شوند ( M تعداد پردازنده ها است). 3- به ترتیب M کار بصورت LPT زمانبندی می شوند. یعنی بزرگترين کار در اولين پردازنده آزاد قرار می گيرد و کار بعدی در پردازنده آزاد بعدی الی آخر تا تمام M کارها زمانبندی شوند. اگر تعداد کارها مضربی از تعداد پردازنده ها باشد؟ سیستم هاي عامل پیشرفته

  43. مثال الگوریتم زمانبندی LSPT 10 کار موجود در یک سيستم با 3 پردازنده عبارتند از: Ti = {1, 4, 7, 7, 9, 15, 18, 20, 30, 70} M = 3 M1 104 7 14 34 M2 4 13 43 M3 34 1 16 TFT (LSPT) = 104 سیستم هاي عامل پیشرفته

  44. الگوریتم های زمانبندی اکتشافی روشهای اکتشافی برای کاربرد های خاص ایجاد می شوند: MAX-MIN و OLBو MET و ... تمرین روش‏های مبتنی بر هوشمندی (اکثراً غیرقطعی هستند) الگوریتم ژنتیک و PSO و کلونی مورچه ها و ... الگوریتمهای مبتنی بر روشهای هوشمند یک روش جستجو هستند که از روشهای کلاسیک و قطعی بهترند ولی تضمین یافتن زمانبندی بهینه را نمی دهند. سیستم هاي عامل پیشرفته

  45. گراف جهت دار غیر حلقه بدون دور T1 T2, T3 در صورتی اجرا می شود که T1 تمام شده باشد T2 T3 بعضی از مواقع ترتیب و تقدم اجرای کارها مهم است که (DAG)Directed Acyclic Graph ترتیب اجرا را نشان می دهد و برای سیستمهای چند پردازنده ای و توزیع شده نیز قابل استفاده است. سیستم هاي عامل پیشرفته

  46. گراف وزندار جهت دار غیر حلقه بدون دور 1 T1 زمان اجرای T2, T3T1, به ترتیب 1، 6 و 5 است. T3 حداقل 2 واحد زمان بعد از اتمام T1 بایستی آغاز به اجرا نماید. 3 2 5 6 T2 T3 بعضی از مواقع علاوه بر ترتیب و تقدم اجرای کارها هزینه ارتباط بین کارها نیز مهم است که (WDAG)Weighted Directed Acyclic Graph ترتیب اجرا و هزینه ارتباط بین کارها را نشان می دهد. سیستم هاي عامل پیشرفته

More Related