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

الگوریتم سالمندان - omidkk - 30 خرداد ۱۳۹۳ ۰۱:۴۰ ب.ظ

روش کار این الگوریتم به چه صورته ؟

RE: الگوریتم سالمندان - aamitis - 30 خرداد ۱۳۹۳ ۰۴:۲۶ ب.ظ

سلام
این الگوریتم شبیه LRU هست
از فیلدی به نام Ageاستفاده میکنه که مثلا میتونه ۸ بیتی باشه و مقدار این فیلد هنگام بار گذاری صفحه صفر است در هر وقفه ساعت سیستم عامل برای تمام صفحات موجود در حافظه این فیلد را یک بیت به راست شیفت میده و پس از آن بیتRرا در انتهای سمت چپ آن ها قرار میده و فیلدRهمه را صفر میکنه
و در صورت وقوع نقص صفحه، صفحه ای که شمارنده آن کم ترین است برای جایگزینی انتخاب میشه

۲ تفاوت داره با LRU:
۱-اگر فیلد ۲ صفحه ۰۱۰۰۰۰۰۰و ۰۱۰۰۱۰۰۰ باشد معلوم نیست که در دوره دوم اخیر به کدامیک دیرتر مراجعه شده و مجبوریم به دوره های قبل تر نگاه کنیم و اولی را از حافظه خارج کنیم چون در دوره ۵ به اولی مراجعه نشده اما به دومی مراجعه شده
۲-در روش سالمندی تعداد بیت های شمارنده محدود است اگر ۲ صفحه شمانده صفر داشته باشند باید تصادفی یکی را انتخاب کرد چون هیچ اطلاعاتی در مورد دوره ۹ و قبل از آن نداریم که بگوییم یکی در دوره ۹ به آن مراجعه شده یکی در ۵۰ دوره قبل!!!