الگوریتم زمانبندی SRT با زبان سی شارپ به همراه سورس کد
در این پست الگوریتم زمانبندی SRT با زبان سی شارپ به همراه سورس کد را برای شما کاربران گرامی آماده کرده ایم که در ادامه می توانید فیلم نحوه اجرا شدن پروژه را در ادامه مشاهده کنید.
زمانبندی SRT یا Shortest Remaining Time همان کوتاهترین زمان باقیمانده است و شبیه زمانبندی SJF یا Short Job First میباشد ولی زمانبندی SRT از نوع غیر انحصاری است. در زمانبندی SRT پردازشی که احتیاج به کمترین زمان جهت تکمیل خود دارد در مرحله اول اجرا می شود. موقع انتخاب یک پردازش در واقع کارهایی که تازه به صف آماده وارد می شوند هم در نظر گرفته خواهند شد. در این وضعیت ممکن است وقت CPU از یک پردازش در حال اجرا توسط پردازش جدیدی که نیاز به زمان کمتری برای اجرا و تکمیل شدن دارد گرفته شود.
جهت مشاهده توضیحات کامل الگوریتم زمانبندی SRT با زبان سی شارپ به همراه سورس کد لطفا به ادامه مطلب مراجعه کنید.
در زمانبندی SRT هم مانند زمانبندی SJF احتیاج به تخمین زدن آینده داریم و احتمال بروز مشکل گرسنگی در این روش نیز وجود دارد. زمانبندی SRT در مقایسه با زمانبندی SJF زمان کل خوبی را دارد زیرا به پردازش کوتاه نسبت به پردازش بلند در حال اجرا اولویت می دهد. ولی در عوض به خاطر همین پس گرفتن های CPU و مقایسه های زمانی بیشتر، روش SRT از SJF پر هزینه تر است.
در زیر مثالی از الگوریتم زمانبندی SRT داده شده است که مسئله را واضع می کند.
فرض کنید در مرحله اول پردازش p1 در زمان ورود 0 وارد سیستم می شود تا زمان 1 به اندازه 8 دقیقه از آن باقیمانده در زمان 1 پردازش p2 وارد سیستم می شود اگر زمان پردازش p2 کمتر از پردازش p1 باشد cpu به پردازش p2 داده خواهد شد. به این ترتیب مراحل بعدی را ادامه می دهیم تا دقیقه 4 که همه پردازش ها وارد سیستم شدند حال زمان باقیمانده همه پردازش ها را بررسی می کنیم و از هر کدام که زمان کمتری باقیمانده در ابتدا آن می تواند cpu را در اختیار بگیرد.
در این پروژه همان طور که در خروجی برنامه مشخص است ابتدا پردازش ها را به همراه زمان ورود و زمان انفجار آنها به لیست پردازش ها اضافه می کنیم سپس با زدن دکمه اجرای الگوریتم زمانبندی SRT برنامه شروع به اجرا می شود و بعد از اتما نتیجه را در قسمتی از برنامه نشان میدهد.
هیچ نظری ثبت نشده است