Need a Progressive Business؟ تمرکز روی صفحه اصلی!

هرگاه که نیاز به جایگزینی یک صفحه است، سیستمعامل صفحهای که کمترین شمارنده را دارد را انتخاب میکند. زیرا سیستمعامل نیاز به بررسی شمارنده برای هر صفحه در حافظه نهان دارد. یک ساعت هم در سیستم وجود دارد که هر چند لحظه یک بار فعال میشود و یک وقفه ایجاد میکند. این ویژگی تضمین میکند که صفحاتی که به تازگی دستیابی شدهاند، هر چند که تعداد دفعات دستیابی به آنها اندک باشد، اولویت بیشتری نسبت به صفحاتی دارند که در گذشته دور به طور مکرر مورد دستیابی قرار گرفتهاند. بنابراین در یک کامپایلر چند گذری، صفحاتی که در گذر اول به شدت مورد استفاده بودهاند، اما در دومین گذر مورد استفاده نیستند، در مقایسه با صفحاتی که در فاز دوم، هر چند به میزان اندک به آنها نیاز است، بیشتر مورد علاقه خواهند بود. با تنظیم Google بهعنوان صفحه اصلی، میتوانید با هر بار باز کردن مرورگر به سرعت به Google بروید. یکی از فرضیات زمینشناسی به این نکته اشاره دارد که صفحات آفریقا به سرعت در حال حرکت به سمت شمال هستند. زیرا لازم نیست صفحات به طور مدام در انتهای صف گذاشته شوند. با استفاده از سختافزارهای فعلی، پیادهسازی چنین چیزی امکانپذیر نیست. به خاطر وجود چنین مشکلاتی در پیادهسازی، معمولاً از الگوریتمهای مشابه LRU استفاده میشود که پیادهسازی آنها ارزانتر و به صرفه تر است.

Th is was c​reat​ed ​with the help of G SA Conte᠎nt G​en​er᠎at​or DEMO !

در حالی که به صورت تئوری الگوریتم LRU میتواند تقریباً به اندازه الگوریتم بهینه کارایی داشته باشد، پیادهسازی آن در عمل مشکل است. به عنوان مثال اگر بیت دستیابی یک صفحه در شش تیک آخر ساعت به صورت ۱٫۰٫۰٫۱٫۰٫۰ باشد، شمارنده دستیابی به شکل ۱۰۰۰۰۰۰۰، ۰۱۰۰۰۰۰۰، ۰۰۱۰۰۰۰۰، ۱۰۰۱۰۰۰۰، ۱۱۰۰۱۰۰۰، ۰۱۱۰۰۱۰۰ است. یک وقفه ساعت هم در سیستم وجود دارد که هر چند لحظه فعال میشود. در این الگوریتم هر صفحه برای خود یک شمارنده دارد. پشت پایه و روی یک تکیه گاه قرار دارد. در این الگوریتم هر صفحه شمارنده مخصوص به خود را دارد که این شمارنده در ابتدا بر روی صفر تنظیم شده است. همینطور هر صفحه هم شمارنده مخصوص به خود را دارد. این بنا در تاریخ ۱۵ دی ۱۳۱۰ با شمارهٔ ثبت ۱۰۵ بهعنوان یکی از آثار ملی ایران به ثبت رسیدهاست. صفحهٔ ایران (به انگلیسی: Iranian Plate) صفحهٔ تکتونیکی کوچکی است که با صفحات اوراسیا، عربستان، هند-استرالیا و آدریاتیک-ترکیه-یونان هممرز است و ایران و افغانستان و بخش هایی از پاکستان و عراق را دربرمی گیرد. در واقع، شمارندهها تعداد دفعات استفاده از صفحات را نگه میدارند. این الگوریتم سربار اضافه ناشی از شمارندهها و صفها را ندارد.  A rtic​le w᠎as c᠎re​at ed by GSA Conte nt᠎ Gener᠎ator  Demoversion !

این الگوریتم مشابه NFU است. ایده اصلی LRU آن است که صفحاتی که در چند لحظه گذشته به شدت مورد استفاده قرار گرفتهاند، در چند لحظه آینده هم به شدت مورد استفاده خواهند بود. صفحاتی که به تازگی مورد دستیابی واقع شدهاند، نسبت به صفحاتی که در گذشته دورتر مورد دستیابی واقع شدهاند، اولویت بیشتری دارند. در نتیجه، شمارنده دستیابی دو صفحه میتواند ۰۰۰۰۰۰۰۰ باشد، حتی اگر یکی از آنها ۹ واحد زمانی قبل و دیگری ۱۰۰۰ واحد زمانی قبل مورد دستیابی واقع شده باشند. اگر یک نقص صفحه رخ دهد و قاب خالی هم در حافظه وجود نداشته باشد، آنگاه بیت دستیابی در صفحهای که عقربه به آن اشاره میکند بررسی میشود. در غیر این صورت اگر بیت دستیابی ۱ بود، انگاه این بیت صفر شده و عقربه یک واحد افزایش مییابد و به عنصر بعدی در صف اشاره میکند. شمارندهٔ صفحاتی که در این بازه زمانی مورد استفاده قرار گرفتهاند، یک سایت اینتکس استخر بادی واحد افزایش مییابد. در انتهای این لیست، صفحاتی با کمترین میزان استفاده قرار دارند و در ابتدای لیست هم صفحاتی با بیشترین میزان استفاده قرار دارند. در نتیجه صفحاتی که شمارنده آنها پایینتر از همه است جایگزین میشوند. نتیجه این کار کاهش کارایی سیستم است. This w​as gen᠎erated by G SA Content Generator  DEMO!

در نتیجه وقتی که قرار است صفحهای برای جایگزینی انتخاب شود، سیستمعامل صفحهای را برمیدارد که دارای کمترین شمارنده است. در این الگوریتم وقتی که یک نقص صفحه اتفاق میافتد، صفحهای از حافظه خارج میشود که نسبت به دیگر صفحات، مدت طولانیتری بلااستفاده بوده است. اما تغییری در آن ایجاد شده تا از مدت زمان استفاده هم آگاه باشد. ۷ صفحه اصلی وجود دارد که لیست آن را به ترتیب وسعت در زیر مشاهده میکنید. تعدادی روش پیادهسازی برای این الگوریتم وجود دارد که سعی میکنند هزینه پیادهسازی را کاهش دهند، بدون اینکه افت قابل توجهی در کارایی الگوریتم ایجاد شود. در این روش صفحات فقط زمانی بارگذاری میشوند که عیب صفحه رخ دهد. یک روش پیادهسازی دیگر که احتیاج به پشتیبانی سختافزار دارد به صورت زیر است: سختافزار یک شمارنده ۶۴ بیتی دارد که با اجرای هر دستورالعمل یک واحد به این شمارنده افزوده میشود. کاربران با استفاده از دیگر وسایل ورودی مانند موشواره(Mouse) یا صفحه لمسی میتوانند هر یک از کلیدهای مجازی را برای ورود متن فشار دهند. سناریوهای مشابهی مانند بوت شدن سیستمعامل هم وجود دارد که الگوریتم NFU کارایی خوبی از خود نشان نمیدهد.

Th is content h as ​been created ​with GSA Content Ge​ne ra tor DEMO.