تالار گفتمان مانشت
حداکثر زمان - نسخه‌ی قابل چاپ

حداکثر زمان - homa - 08 بهمن ۱۳۸۹ ۱۰:۳۰ ب.ظ

سلام
یک تست سال ۸۴ هست که خیلی متنش طولانی بود به خاطر همین ننوشتمش،در مورد زمان اجرای n پردازه در m پردازنده است.تو کتاب مقسمی فصل پیچیدگی زمانی سوال ۲۱/
جوابی که مقسمی داده رو اصلا نمی فهمم.
کسی میتونه کمک کنه؟

حداکثر زمان - ف.ش - ۰۹ بهمن ۱۳۸۹ ۱۲:۰۳ ق.ظ

البته منم الان سوال رو یادم نیست و تا جایی که یادمه m پردازه بود و n پردازنده
من فکر میکنم مدت اجرای برنامه‌ها صعودی بود و در نتیجه زمان اجرای برنامه m خیلی زیادتر از بقیه بود اون رو از بقیه جدا کرده و گفته سایر برنامه‌ها بین n پردازنده تقسیم میشه.

حداکثر زمان - homa - 09 بهمن ۱۳۸۹ ۱۲:۱۹ ق.ظ

گفته n تا کاربا زمان های پردازش p1<p2<p3..<pn قرار است در m پردازنده کاملا یکسان اجرا شود

حداکثر زمان - ف.ش - ۰۹ بهمن ۱۳۸۹ ۱۲:۲۷ ق.ظ

خوب بازم فرقی نداره شما pn رو بردارید و جمع زمان بقیه کارها رو بر m تقسیم کنید یعنی سایر کارها رو به اون m پردازنده بسپارید و pn رو هم یکی از پردازنده‌ها انجام میده.

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

حداکثر زمان - homa - 09 بهمن ۱۳۸۹ ۱۲:۳۰ ق.ظ

حرف شما درست جواب مقسمی هم همینه اما علت این کار چیه که پردازه pn رو جدا کنیم؟

حداکثر زمان - ف.ش - ۰۹ بهمن ۱۳۸۹ ۱۲:۴۱ ق.ظ

راستش نمیدونم یه چیزهایی توی ذهنم هست ولی بگذارید ببینیم نظر بقیه چیه!

حداکثر زمان - bijibuji - 09 بهمن ۱۳۸۹ ۱۲:۳۰ ب.ظ

اولا: پاسخ آقای مقسمی رو فراموش کنید.( تحت هر شرایطی و در هر کتابی Big Grin )
ثانیا: این سوال مشکل اساسی در عنوان اش داره. در عنوان سوال ذکر شده:

" کارها را به ترتیب انتخاب می کنیم و هر کار را به پردازنده ای می دهیم که همه کارهای تخصیص داده شده با آن نسبت به بقیه پردازنده‌ها زودتر تمام شوند"

حالا شرایط زیر رو درنظر بگیرید:
زمان پردازش کارها رو (برای سادگی بیشتر) برابر با اندیس شماره کار در نظر بگیرید. یعنی مثلا
۴ > 3 > 2 > 1
و مساله رو در دوحالت زیر درنظر بگیرید:
۳ پردازنده داشته باشیم
--------------------------

در این حالت کار ۱ به پردازنده اول کار ۲ به پردازنده دوم و کار ۳ به پردازنده سوم تخصیص داده می شه.
کار شماره ۴ که از همه بیشتره به پردازنده اول و بیشترین زمان می شه ۵=۱+۴

۴ پردازنده داشته باشیم
--------------------------
در این حالت کار ۱ به پردازنده اول کار ۲ به پردازنده دوم و کار ۳ به پردازنده سوم و کار شماره ۴ به پردازنده چهارم تخصیص داده می شه. بیشترین زمان می شه ۴

درصورتیکه عددگذاری کنید در پاسخ ذکر شده متوجه می شید که اشتباهه.

=================
ایشون در راه حل اش به این علت Pn رو جدا کرده که مساله رو مثلا راحت‌تر حل کنه. صورت سوال گویای این مطلبه. وقتی کارها رو از کم به زیاد مرتب می کنید، آخرین کاری که تخصیص داده می شه کار آخر هست طبیعتا. حالا ایشون خواسته می نیمم زمان طی شده قبل از تخصیص آخرین کار رو به دست بیاره و اون رو با مدت زمان آخرین کار جمع کنه. مشکل اینجاست که کمترین زمان طی شده قبل از تخصیص آخرین کار، لزوما میانگین کارهای تخصیص داده شده قبل از آخرین کار نیست. این شدیدا وابسته به نسبت بین تعداد کارها و تعداد پردازنده هاست و برای مقادیر مختلف این نسبت شدیدا متفاوت می شه.

RE: حداکثر زمان - ف.ش - ۰۹ بهمن ۱۳۸۹ ۰۱:۱۱ ب.ظ

(۰۹ بهمن ۱۳۸۹ ۱۲:۳۰ ب.ظ)bijibuji نوشته شده توسط:  حالا شرایط زیر رو درنظر بگیرید:
زمان پردازش کارها رو (برای سادگی بیشتر) برابر با اندیس شماره کار در نظر بگیرید. یعنی مثلا
۴ > 3 > 2 > 1
و مساله رو در دوحالت زیر درنظر بگیرید:
۳ پردازنده داشته باشیم
--------------------------

در این حالت کار ۱ به پردازنده اول کار ۲ به پردازنده دوم و کار ۳ به پردازنده سوم تخصیص داده می شه.
کار شماره ۴ که از همه بیشتره به پردازنده اول و بیشترین زمان می شه ۵=۱+۴
خوب عددهای شما کوچیکه بعدش هم مسلما جواب تست یه چیز تقریبی بوده!

حداکثر زمان - bijibuji - 09 بهمن ۱۳۸۹ ۰۱:۱۷ ب.ظ

شما با چه عددهایی دوست دارین امتحان کنیم آفاق جان؟
از کجا می دونید که پاسخ تقریبیه؟ فراموش نکنید که درس سیستم عامل نیست. این تست در درس ساختمان داده اومده. در درس ساختمان داده من موردی ندیدم که پاسخ تقریبی مد نظر باشه مگر اینکه صریحا ذکر بشه.
اگر محدودیت خاصی مد نظر طراح سوال بوده باید ذکر می کرده در غیر اینصورت تست نادرسته

حداکثر زمان - homa - 09 بهمن ۱۳۸۹ ۰۱:۲۴ ب.ظ

سلام
ممنون از توضیحتون
پس با توجه به این هم سوال مشکل داره و هم گزینه‌ها و جواب مشخصی نداره وباید رابطه بین n ,m مشخص باشه