تالار گفتمان مانشت

نسخه‌ی کامل: سوال از زمانبندیRR(پوران موسوی ص85)
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
بچه ها من تو این مورد گیر کردم...سوال اومده به جای اینکه از نمودار گانت استفاده کنه اومده یه نمودار جدولی کشیده بر حسب زمان و جاب ها...
فرآیند P0 ...زمان ورود ۰ .......زمان اجرا 10
فرآیند P1 ...زمان ورود ۱ ....... زمان اجرا ۳
فرآیند P2 ...زمان ورود ۵ ...... زمان اجرا ۳
فرآیند P3....زمان ورود۱۰ .....زمان اجرا ۳

اینم از جوابShy

مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.

یکم توضیح میدین
شما با همون نمودار گانت حل کن. البته اون شکل جدولی هم چیز خاصی نیست. محور افقی زمان رو نشون میده و محور عمودی هم که معلومه. فقط میمونه اون اعدادی که روی خطوط نوشته شده (همون اعداد ۱ و ۲). مثلا وقتی p0 وارد میشه فرآیند دیگه ای وجود نداره پس تا زمان ۱ اجرا میشه ( این یک واحد زمان اجرا شدن رو روی خط جلوی p0 نوشته). در لحظه ۱ فرآیند p1 میاد و تا زمان ۵ فرآیند p0 دو واحد و p1 هم دو واحد اجرا میشه. ۲ واحد اجرا شدن فرآیندهای p0 و p1 رو باز با نوشتن عدد ۲ روی خطوط مقابل فرآیندهای p0 و p1 نشون داده و سه نقطه.
این در واقع یه نمودار برای تخصیص فرایندهاست. من تا یه قسمتی رو میگم٬ فکر کنم مشکلتون حل بشه.
البته در واقع فرقی هم نداره این نوع تخصیص یا نمودار گانت... اما:
ببینید در زمان ۰ فقط فرایند P0 وجود داره پس طبق کوانتوم زمانی (اگر یک باشه) یک واحد اجرا میشه.
زمان‌بند به یک میرسه که فرایند P1 هم میتونه حضور داشته باشه٬ بنابراین CPU باید بین این دوتا بچرخه تا کی؟ تا زمانیکه فرایند تازه‌ای نباشه٬ یعنی زمان ۵... بنابراین میشه گفت٬ یک واحد P0 اجرا میشه و یک واحد P1 و برای اینکه زمان به ۵ برسه این کار یک بار دیگه تکرار میشه و زمانبند به ۵ میرسه و حالا باید فرایند P2 اجرا بشه.

در نهایت٬ این روش یه جورایی نمودار گانت رو خلاصه کرده.

پ.ن: وقتی این رو فرستادم جناب mfXpert پاسخ رو نفرستاده بودند Smile
مرسی از دوستاننننننننننننننBig Grin
فهمیدیم....من از نمودار گانت راحترمAngel
نمیدونم چرا کلا روش راند رابین قاطی کردم!!!!
کسی هست بتونه واسم توضیح بده فرایند ها چطور توی صف قرار میگیرند؟!!

خودم قبلا با صف این کارو میکردم اما الان جزوه ام پیش دوستمه و قراره واسم تا چند روز آینده برسونه دستم Sad
(24 شهریور 1391 12:14 ق.ظ)m@hboobe نوشته شده توسط: [ -> ]نمیدونم چرا کلا روش راند رابین قاطی کردم!!!!
کسی هست بتونه واسم توضیح بده فرایند ها چطور توی صف قرار میگیرند؟!!

خودم قبلا با صف این کارو میکردم اما الان جزوه ام پیش دوستمه و قراره واسم تا چند روز آینده برسونه دستم Sad

سلام دوست عزیز. ببینید، الگوریتم RR همون الگوریتم FCFS بوده که به هرکدام از فرایندها یک کوانتوم زمانی داده می شه. اگه زمان پردازش فرایند از زمان کوانتوم کمتر باشه که تو همون سیکل اول فرایند پردازش میشه و فرایند از این چرخه خلاص میشه. اگه پردازش اون فرایند در اون زمان کوانتوم تمام نشه به آخر صف برمیگرده. اگه دوفرایند در یک زمان وارد بشن، اولویت به فرایندیه که تازه وارد شده.
--------------------------------
مثال: فرایند p1,p2,p3 رو با زمان های پردازش 3,5,1 درنظر بگیر. فرض کن کوانتوم برابر 2 باشه، همچنین فرض کن ترتیب ورود فرایند ها همون p1 اول بعد p2 و سپس p3 باشه. حالا p1 دو واحد از زمان پردازشش تموم میشه و به آخر صف میره(یک واحد زمانی میمونه برای دفعه بعد)، بعد p2 دو واحد زمانیش تموم میشه(سه واحد میمونه برای دفعه های بعد)، و سپس p3 وارد میشه که با همون یک واحد زمانی کارش تموم میشه و از حالات خارج میشه. اما هنوز p1 و p2 زمانای پردازششون میونده که باید کامل بشن.
اگه متوجه نشدین، بگید که مثال بیشتر بزنم.
موفق باشی.
RR غیر انحصاری هست یعنی می تونیم قسمتی از یه پروسه رو اجرا کنیم بعدش یه پروسه دیگه بیاد CPU رو قبضه کنه(در اختیار بگیره)
مثلا دو پروسه داریم مثل p با زمان 5 و p2 با زمان 3 که مثل FCFS به ترتیب وارد میشن.
در اینجا اگه فرض کنیم کوانتم(یا برش زمانی یا time slice ) برابر 2 باشه یعنی اگه cpu رو بدیم به یک پروسه،حداکثر 2 ثانیه فرصت داره تا مقداریش اجرا بشه و اگه وقت تموم شد بقیش باید بعدا اجرا بشه.
به ترتیب خودت وارد کن اول p1 دو تاش اجرا میشه و وقت تموم میشه و 3 تاش میمونه واسه بعد.(حالا نوبت p2 می بینیم شده یا نه فرض می کنیم نوبتش شده و همشون توی 0 وارد صف شده بودن. )حالا پس p2 باید اجرا بشه و 2 تاش اجرا میشه و cpu ازش گرفته میشه و یکی ازش میمونه که بعدا اجرا بشه .حالا دوباره p1 میاد و 2 تاش اجرا میشهو cpu رو ازش می گیریم و 1 ایش میمونه.حالا p2 اجرا میشه و چون یکی بود بعد از همون یک واحد زمانی cpu ازش گرفته میشه و نوبت p1میشه و 1 ایش اجرا میشه و تمام.
لینک مرجع