FIFO sayfa yer değiştirme algoritması (FIFO-First in First out page replace algorithm)

fifo-sayfa-yer-degistirme-algoritmasi-fifo-first-in-first-out-page-replace-algorithm (büyük resim için tıklayın)

FIFO Nedir? 

Bellek yöneticisinin yeni bir sayfaya yer açmak için, hangi sayfayı dışarı alacağına karar veren algoritmalardan biridir.

Örnek üzerinden algoritmayı anlamaya çalışalım

sayfa ihlali (page fault) olduğunda, yani bellekte bulunmayan bir sayfaya erişilmek istendiğinde, ilgili sayfa belleğe yüklenirken, bellekteki en eski sayfa yerine yüklenir.

Örnek olarak; “ 3 4 5 1 2 3 4 5 3 4 5 5 " şeklinde referans string dizisi olsun. 3 frame li belleğe FIFO ile sayfa yer değişimini (page replacement)  gerçekleştirelim ve sayfa hatası (page fault) değerlerini bulalım.

  • 3, daha önce bellekte bulunmadığı için belleğe yüklenecek ve hata oluşacak
  • 4, daha önce bellekte bulunmadığı için belleğe yüklenecek ve hata oluşacak
  • 5, daha önce bellekte bulunmadığı için belleğe yüklenecek ve hata oluşacak
  • 1, daha önce bellekte bulunmadığı için belleğe yüklenecek (ilk sayfa olan 3'ün yerine yüklenecek, 3 kaldırılmış olacak) ve hata oluşacak
  • 2, daha önce bellekte bulunmadığı için belleğe yüklenecek (ikinci olarak dahil edilen sayfa olan 4'ün yerine yüklenecek, 4 kaldırılmış olacak) ve hata oluşacak
  • 3,daha önce yüklendi fakat kaldırıldı, dolayısıyla bellekte bulunmadığı için belleğe yüklenecek(5'in yerine yüklenecek,5 kaldırılmış olacak) ve hata oluşacak

Süreç bu şekilde devam ettirilir. Sonuçta toplam sayfa hatası sayısı 8 'dir.

Kaynak video için tıklayın.

omurs

Ö S, 30 Ağustos 2018 Perşembe 15:30 tarihinde kayıt oldu

Beğeni


Yıllara Göre Gönderiler








LombokLoglamaB2C (Business-to-Consumer)B2B (Business-to-Business)İçerik Yönetim Sistemi - CMS (Content Management System)Pagination (Sayfalama)Sanal Özel Ağ - VPN (Virtual Private Network)Cronjob (Zamanlanmış Görevler)Printer-YazıcıJava'daki İlkel Veri Tipleri ve Alabilecekleri DeğerlerBit & Byte ve Hafıza Boyutlarındaki Ölçüm BirimleriSanallaştırma (Virtualization)DNS KayıtlarıE-Fatura ve E-ArşivYazılım Lisans TürleriAudit (Denetim) Açık Kaynak (Open Source)Monitoring (İzleme)Sitemap & Robots.txtKilometretaşı (Milestone)BSMV (Banka ve Sigorta Muameleleri Vergisi)KKDF (Kaynak Kullanımı Destekleme Fonu)Siber Pazartesi (Cyber Monday)Black Friday (Kara Cuma)Hotlink.htaccessCryptoLockerMalwareTrojanWormDependency (Yazılım Geliştirme Sürecinde Paket Bağımlılığı)Configuration (Yazılım Geliştirme Sürecinde Yapılandırma)Yahoo ve Yahoo'nun Başarısızlık NedenleriArchiving (Yazılım Geliştirme Sürecinde Arşivleme)Görsel Dosya Türleri (Image Types)ReleaseVersioning & Tagging (Versiyonlama ve Etiketleme)BuildJob (Yazılım Geliştirme Sürecinde Görevler)SonarQubeCDATA (Character Data)Alan Adı Uzantıları (Domain Name Extensions)Regresyon Kara Kutu (Black-Box) TestBeyaz Kutu (White-box) TestGri Kutu (Grey-box) TestYazılım Geliştirme Sürecindeki Temel Test TürleriKod gözden geçirme (Code Review)Birim Testi (Unit Testing)Yazılım Sürecinde EntegrasyonJAR & WAREager & Lazy Fetch TypeMaskelemeKPI (Key Performance Indicator)KII (Key Impact Indicator)Projenin JAR Dosyasını Oluştur - JAR PathSunucu için Linux dağıtım SeçimiKonyteynerler (container technologies)Runtime & Compile Time (Çalışma ve Derleme Zamanı)@Anotasyonlar (@Annotations)