Sanal bellekte sayfalar, belleği dizinleyen bir tablo kullanılarak yerleştirilirler. Bu yapı “sayfa tablosu (page table)” olarak adlandırılır. Bellekte tutulan sayfa tablosu sanal bellek adresinin numarasına göre dizinlenmiştir ve ona karşılık gelen gerçek sayfa numarasını içerir. Her program, sanal adres uzayını, ana bellekteki bellek uzayına dönüştüren kendine ait bir sayfa tablosuna sahiptir. Sayfa tablosu, ana bellekte mevcut olmayan sayfaların kayıtlarını da tutabilir. Her sayfa tablosunda geçerli bit (1 veya 0 ) tutulur. Eğer bu bit mantıksal sıfıra eşit ise sayfa ana bellekte mevcut değil demektir ve “sayfa hatası (page fault)” oluşur. Eğer bit mantıksal bire işaret ediyorsa sayfa ana bellekte mevcut ve geçerli bir fiziksel adrese sahip demektir.
Sayfa tablosu için gerekli depolama (saklama) boyutu ve kullanılan anabellek miktarının azaltılmasını sağlayan teknikler
- Sayfa tablosunun boyutlarını sınırlayan bir sınır kaydı tutmak. Eğer sanal sayfa numarası sınır kaydının sınırını aşarsa kayıtlar sayfa tablosuna eklenmelidir. Bu teknik, bir işlem daha fazla alana ihtiyaç duyduğunda sayfa tablosuna büyüme yeteneği kazandırır. Sonuç olarak sanal adres uzayı yalnızca ihtiyaç duyulduğunda büyük tutulacaktır.
- Bölmelere ayırmak (segmentation): Çoğu dil iki boyutları büyüyebilen iki ayrı alan gerektirdiği için tek boyutta büyümenin yetersiz olduğu durumlarda sayfa tablosu ikiye bölünür. İki ayrı sayfanın farklı sınırlara sahip olması desteklenir. İki sayfa tablosu kullanımı adres uzayını da ikiye parçaya (segment) böler. Sınır kaydı her iki parça için de tutulur. MIPS mimarisi de bu tekniği desteklemektedir.
- Sanal adrese bir hesaba dayalı adresleme (hashing) işlevi eklenerek sayfa tablosu veri yapısının sadece gerçek sayfa sayısı kadar boyutta olması sağlanabilir.Bu yapıya ters çevrilmiş (inverted) sayfa tablosu adı verilir.
- Birden fazla seviyeli sayfa tabloları kullanılabilir.
- Sayfa tabloları kullanımı için gerekli ana bellek miktarının azaltılması sayfa tablolarının tekrar sayfalanması ile sağlanabilir.
Ayrıca bakınız
Kaynakça
- http://oergin.etu.edu.tr/bil361/sanalbellek.pdf[] Oğuz ERGİN BİL 361 – Bilgisayar Mimarisi ve Organizasyonu, Sanal Bellek
- John L. Hennessy, David A. Patterson, Computer Architecture, A Quantitative Approach ()
- Operational Characteristics for the Processors for Burroughs
- http://www.multicians.org/multics-vm.html18 Ocak 2010 tarihinde Wayback Machine sitesinde . The Multics Virtual Memory: Concepts and Design
Dış bağlantılar
- wikipedia: virtual memory 23 Aralık 2007 tarihinde Wayback Machine sitesinde arşivlendi.
- belgeler.org: sanal bellek[]
wikipedia, wiki, viki, vikipedia, oku, kitap, kütüphane, kütübhane, ara, ara bul, bul, herşey, ne arasanız burada,hikayeler, makale, kitaplar, öğren, wiki, bilgi, tarih, yukle, izle, telefon için, turk, türk, türkçe, turkce, nasıl yapılır, ne demek, nasıl, yapmak, yapılır, indir, ücretsiz, ücretsiz indir, bedava, bedava indir, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, resim, müzik, şarkı, film, film, oyun, oyunlar, mobil, cep telefonu, telefon, android, ios, apple, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, pc, web, computer, bilgisayar
Sanal bellekte sayfalar bellegi dizinleyen bir tablo kullanilarak yerlestirilirler Bu yapi sayfa tablosu page table olarak adlandirilir Bellekte tutulan sayfa tablosu sanal bellek adresinin numarasina gore dizinlenmistir ve ona karsilik gelen gercek sayfa numarasini icerir Her program sanal adres uzayini ana bellekteki bellek uzayina donusturen kendine ait bir sayfa tablosuna sahiptir Sayfa tablosu ana bellekte mevcut olmayan sayfalarin kayitlarini da tutabilir Her sayfa tablosunda gecerli bit 1 veya 0 tutulur Eger bu bit mantiksal sifira esit ise sayfa ana bellekte mevcut degil demektir ve sayfa hatasi page fault olusur Eger bit mantiksal bire isaret ediyorsa sayfa ana bellekte mevcut ve gecerli bir fiziksel adrese sahip demektir Bir sayfa tablosunun ana bellekteki yerini belirtmek icin donanimda sayfa tablosunun baslangicini isaret eden bir yazmac register bulunur Bu yazmac sayfa tablosu yazmaci olarak tanimlanir Sayfa tablosu icin gerekli depolama saklama boyutu ve kullanilan anabellek miktarinin azaltilmasini saglayan tekniklerSayfa tablosunun boyutlarini sinirlayan bir sinir kaydi tutmak Eger sanal sayfa numarasi sinir kaydinin sinirini asarsa kayitlar sayfa tablosuna eklenmelidir Bu teknik bir islem daha fazla alana ihtiyac duydugunda sayfa tablosuna buyume yetenegi kazandirir Sonuc olarak sanal adres uzayi yalnizca ihtiyac duyuldugunda buyuk tutulacaktir Bolmelere ayirmak segmentation Cogu dil iki boyutlari buyuyebilen iki ayri alan gerektirdigi icin tek boyutta buyumenin yetersiz oldugu durumlarda sayfa tablosu ikiye bolunur Iki ayri sayfanin farkli sinirlara sahip olmasi desteklenir Iki sayfa tablosu kullanimi adres uzayini da ikiye parcaya segment boler Sinir kaydi her iki parca icin de tutulur MIPS mimarisi de bu teknigi desteklemektedir Sanal adrese bir hesaba dayali adresleme hashing islevi eklenerek sayfa tablosu veri yapisinin sadece gercek sayfa sayisi kadar boyutta olmasi saglanabilir Bu yapiya ters cevrilmis inverted sayfa tablosu adi verilir Birden fazla seviyeli sayfa tablolari kullanilabilir Sayfa tablolari kullanimi icin gerekli ana bellek miktarinin azaltilmasi sayfa tablolarinin tekrar sayfalanmasi ile saglanabilir Ayrica bakinizSanal bellek SayfalamaKaynakcahttp oergin etu edu tr bil361 sanalbellek pdf olu kirik baglanti Oguz ERGIN BIL 361 Bilgisayar Mimarisi ve Organizasyonu Sanal Bellek John L Hennessy David A Patterson Computer Architecture A Quantitative Approach ISBN 1 55860 724 2 Operational Characteristics for the Processors for Burroughs http www multicians org multics vm html18 Ocak 2010 tarihinde Wayback Machine sitesinde The Multics Virtual Memory Concepts and DesignDis baglantilarwikipedia virtual memory 23 Aralik 2007 tarihinde Wayback Machine sitesinde arsivlendi belgeler org sanal bellek olu kirik baglanti