Önbellek ve Sanal Bellek Arasındaki Fark

Önbellek ve Sanal Bellek
 

Önbellek ve sanal bellek arasındaki fark, bu ikisinin kullanıldığı amaçta ve fiziksel mevcudiyette mevcuttur. Önbellek, ana belleğe erişim süresini iyileştirmek için kullanılan bir bellek türüdür. CPU ve ana bellek arasında bulunur ve L1, L2 ve L3 gibi çeşitli önbellek seviyeleri olabilir. Önbellek için kullanılan donanım türü, önbellek çok daha hızlı olduğu için ana bellek için kullanılan RAM'den (Rasgele Erişim Belleği) çok daha pahalıdır. Bu nedenle önbellek kapasitesi çok azdır. Sanal bellek, gerçek fiziksel RAM (ana bellek) kapasitesinden bile daha büyük olan her program için ayrı bir bellek alanı sağlarken, RAM'i (ana bellek) verimli kullanmak için kullanılan bir bellek yönetim tekniğidir. Burada sabit disk belleği genişletmek için kullanılır. Fiziksel RAM'daki öğeler sabit disk ile ileri geri aktarılır.

Önbellek Nedir??

Önbellek bir bellek türü CPU (Merkezi İşlem Birimi) ile RAM (Rasgele Erişim belleği) arasındadır. Ön belleğin amacı, CPU'nun RAM'den bellek erişim süresini azaltmaktır. Önbellek RAM'den çok daha hızlıdır. Bu nedenle önbellekteki erişim süresi, RAM'deki erişim süresinden çok daha azdır. Ancak önbellek için kullanılan bellek maliyeti, RAM için kullanılan bellek maliyetinden çok daha yüksektir ve bu nedenle önbellek kapasitesi çok düşüktür. Önbellek için kullanılan bellek türüne SRAM (Statik Rasgele Erişim Belleği) denir.

CPU belleğe erişmek istediğinde, öncelikle neye ihtiyaç duyduğunun önbellekte bulunup bulunmadığını kontrol eder. Evetse, en az gecikmeyle erişebilir. Önbellekte bulunmazsa, istenen içerik RAM'den önbelleğe kopyalanır ve daha sonra yalnızca CPU önbellekten erişir. Burada, içeriği önbellekten kopyalarken, yalnızca istenen bellek adresindeki içerik değil, aynı zamanda yakındaki içerik de önbelleğe kopyalanır. Dolayısıyla, bir sonraki seferde çoğu bilgisayar programı yakındaki verilere veya çoğu kez son erişilen verilere eriştikçe önbellek isabetinin gerçekleşme olasılığı yüksektir. Önbellek nedeniyle ortalama bellek gecikmesi azalır.

CPU'da üç tür önbellek vardır: Talimat önbelleği program talimatlarını saklamak, Veri önbelleği veri öğelerini saklamak ve Tercüme Look-aside Buffer bellek eşlemelerini saklamak için. Veri önbelleği için genellikle çok düzeyli önbellekler vardır. Yani, L1, L2 ve L3 gibi birkaç önbellek vardır. L1 önbellek, CPU'ya en yakın olan en hızlı ancak en küçük önbellektir. L2 önbellek L1'den daha yavaş, ancak L1'den daha büyüktür ve L1 önbelleğinden sonra bulunur. Bu hiyerarşi nedeniyle daha düşük bir maliyetle daha iyi bir ortalama bellek erişim süresi elde edilebilir.

Sanal Bellek Nedir?

Sanal bellek bir bellek yönetimi tekniği bilgisayar sistemlerinde kullanılır. Sanal bellek adı verilen bir donanım yoktur, ancak programlar için sanal bir adres alanı sağlamak için RAM ve sabit diski kullanan bir kavramdır. İlk RAM, sayfa adı verilen parçalara ayrılır ve fiziksel bellek adresleriyle tanımlanır. Sabit diskte, Linux'ta takas ve Windows'da bir sayfa dosyası olarak adlandırılan özel bir bölüm ayrılmıştır. Bir program başlatıldığında, gerçek fiziksel bellekten bile daha büyük olabilen sanal bir adres alanı verilir. Sanal bellek alanı ayrıca sayfa adı verilen parçalara bölünür ve bu sanal bellek sayfasının her biri fiziksel bir sayfaya eşlenebilir. Sayfa tablosu adı verilen tablo bu eşleştirmeyi takip eder. Fiziksel bellekte yer kalmadığında, yapılan belirli fiziksel sayfalar sabit diskteki o özel bölüme gönderilir. Sabit diske itilen herhangi bir sayfa tekrar gerektiğinde, fiziksel bellekten seçilen başka bir sayfa sabit diske yerleştirilerek fiziksel belleğe getirilir.

Önbellek ve Sanal Bellek arasındaki fark nedir?

• Önbellek, ana bellek erişim süresini iyileştirmek için kullanılan bir bellek türüdür. Ortalama bellek erişim gecikmesini azaltmak için CPU ve RAM arasında bulunan daha hızlı bir bellek türüdür. Sanal bellek, programların kendi sanal bellek alanını elde etmesini sağlayan, mevcut gerçek fiziksel RAM'den bile daha büyük olan bir kavram olduğu bir bellek yönetim yöntemidir..

• Önbellek, fiziksel olarak var olan bir tür donanım belleğidir. Öte yandan, sanal bellek türü sağlamak için RAM, sabit disk, Bellek yönetim birimi ve yazılım kullanan bir kavram olduğu için sanal bellek adı verilen bir donanım yoktur..

• Önbellek yönetimi tamamen donanım tarafından yapılır. Sanal bellek işletim sistemi (yazılım) tarafından yönetilir.

• Önbellek, RAM ve işlemci arasında yer alır. Veri aktarımları RAM, önbellek ve işlemciyi içerir. Sanal bellek ise RAM ve sabit disk arasında veri aktarımını içerir.

• Önbellek bellekleri Kilobayt ve Megabayt gibi küçük boyutlara sahiptir. Sanal bellek ise gigabayt alan büyük boyutlar içeriyor.

• Sanal bellek, fiziksel bellek ile sanal bellek arasındaki eşlemeyi depolayan sayfa tabloları gibi veri yapılarını içerir. Ancak bu tür veri yapıları önbellek için gerekli değildir.

Özet:

Önbellek ve Sanal Bellek

Önbellek, sanal bellek bir bellek yönetimi yöntemiyken ana bellek erişim süresini iyileştirmek için kullanılır. Önbellek gerçek bir donanımdır, ancak sanal bellek adı verilen bir donanım yoktur. RAM, sabit disk ve diğer çeşitli donanımlar, işletim sistemiyle birlikte, her programa büyük ve yalıtılmış sanal bellek alanları sağlamak için sanal bellek adı verilen kavramı üretir. Sanal bellekteki içerik işletim sistemi tarafından yönetilirken önbellekteki içerik donanım tarafından yönetilir.

Görüntüler Nezaket:

  1. Hellisp tarafından önbellek işlemi (CC BY-SA 3.0)
  2. Sanal bellek Ehamberg (CC BY-SA 3.0)