Bölüm 9 · Simülasyon

Sayfalama ve Adres Çevirisi

← Bölüm 9
Boyut
Sayfa 8
Çerçeve 6
TLB 4
1.5/s
1Sanal adres 2Böl p | d 3TLB 4Sayfa tablosu 5Fiziksel
Sanal–
Fiziksel–
Sayfa tablosusayfa · mevcut · çerçeve
Fiziksel bellek

Sayfalama ve Adres Çevirisi

CPU sanal adresler üretir. Her sanal adres bir sayfa numarası p (yüksek bitler) ve bir bağıl konum d (düşük bitler) olarak bölünür. Önce TLB’ye bakılır; TLB ıskasında sayfa tablosu okunur. Bellekte mevcut olan sayfa kendi çerçevesini f verir ve fiziksel adres f × sayfa boyutu + d olur. Mevcut biti 0 olan bir sayfaya erişim sayfa hatasına yol açar.

Kullanım

  • Üst satırda sayfa boyutu, sanal sayfa sayısı, fiziksel çerçeve sayısı ve TLB girdi sayısı ayarlanır.
  • Sanal adresler yazılır (onluk, boşlukla ayrılmış) ya da hazır bir liste seçilir; karıştır düğmesi sayfa tablosunu rastgele doldurur.
  • Her çevirinin beş aşaması oynatılır ya da adım adım izlenir.
  • Sayfa tablosu her adımda düzenlenebilir: mevcut bitine tıklanır ya da çerçeve numarası yazılır.
  • Grafik düğmesi aynı adres listesinde 1–8 boyutlu TLB’lerin isabetlerini karşılaştırır; bir çubuğa tıklamak o boyutu seçer.

Terimler

p
Sayfa numarası = sanal adres div sayfa boyutu (yüksek bitler).
d
Bağıl konum = sanal adres mod sayfa boyutu (düşük bitler); değişmeden kopyalanır.
TLB
Son kullanılan sayfa → çerçeve eşlemelerinin önbelleği; en uzun süredir kullanılmayan (LRU) girdi değiştirilir.
Mevcut
1 = sayfa bir çerçevede; 0 = sayfa hatası.
FA
Fiziksel adres = çerçeve × sayfa boyutu + d.
Düzenleme
Her çerçeve tek sayfada kalır (dolu bir çerçeve seçilirse sayfalar takas edilir). Düzenlenen sayfanın TLB girdisi geçersiz kılınır.

Gösterim

p bitleri d bitleri f bitleri / yeni TLB girdisi ✓ TLB isabeti ✗ ıska / sayfa hatası

Tuşlar

←→ adımBoşluk oynatHomeEnd ilk / sonEsc kapat