(۲۱ آبان ۱۳۹۰ ۰۱:۵۱ ب.ظ)هاتف نوشته شده توسط: سلام
از چه روی می گوییم "اگر نخ های یک فرآیند در سطح کاربر مدیریت شوند، تعویض متن کم هزینه تری داریم" ؟
کدام گزاره (ها)ی زیر دلیل این امر می باشد؟
۱- چون PCB اطلاعات نخها را نگهداری نمی کند، نیازی به درج آنها در جدول فرآیند نداریم.
۲- چون برنامه نویس از نقاط بحرانی نیاز برنامه اش به بلوکه شدن مطلع است، و خودش مدیریت تعویض نخ را انجام می دهد، در زمان مناسب اینکار را کرده و این عمل موجب افزایش سرعت می شود.
۳- چون نیازی به تغییر نگاشت حافظه و حسابداری CPU نداریم.
۴- چون لزومی ندارد همه اطلاعات فرآیند ذخیره شود، تهنها محتویات CPU برای نخ جاری در پسته مربوطه اش ذخیره و مقادیر نخ بعدی جایگزین می شود.
لطفا بعد از پاسخ به سوال، نظر خودتون رو در مورد سطح سوال مطرح شده بیان کنید.
دلیله اصلیش اینه که نخها در سطح کاربر برای مدیریت یعنی ایجاد و حذف و حسابداری نیازی به دخالت هسته و به تبع اون فراخوانی سیستم کال که بسیار عمل پر هزینه ای هست ندارن و همین امر باعث تسریع میشه.
البته ایراد بزرگی که بهشون وارده اینه که در صورت خوابیدن نخ کل فرایند میخوابه چون تو سطح کاربر نخها از دید هسته پنهان هستن و هسته تمامه اونارو به صورت یه نخ میبینه.
مشکل نخهای سطح هسته دقیقا مزیت نخهای سطح کاربره یعنی پر از سیستم کال هستن واسه همین در عمل از ترکیبی از دو تاش استفاده میشه.
من اگه باشم این تستو رد میکنم
ولی اگه اون روز بخوام ریسک کنم گزینهی ۲
هاتف میگم نکنه قراره سوالای ارشد ۹۱ رو تو طرح کنی؟؟