İnternetin yaşantımızın ayrılmaz bir parçası olmasıyla beraber "önbellek" yani İngilizce adıyla "cache" sıkça duyduğumuz kavramlar arasında yer alıyor. Peki "nedir bu önbellek?" ve "ne işe yarar?" gelin beraber bakalım.

 

Önbellek Nedir?

Önbellek, verilerin daha hızlı yüklenmesine yardımcı olmayı sağlayan depolama alanıdır. Veriler, kolay erişilebilsin diye geçici bir ortamda tutulur. Bilgisayarlarda, laptoplarda, tabletlerde ve telefonlarda çeşitli önbellekler bulunur.

Veri aktarımı sırasında hafızadan getirilen verilerin, işlemci hızını yakalayamaması sebebiyle veri aktarımı yavaşlar. Önbellek sayesinde gelen veriler ön belleğe alınır ve daha hızlı bir erişim sağlanır. Özellikle tekrarlanan verilerin ön bellekte tutulması hızı artırır. Ön bellekte tutulan verilerin silinmesine "önbellek temizleme" denir.

Üç ayrı türde önbellek bulunur:

Web tarayıcılarında,

Uygulamalarda,

Cihazlarda ve yazılımlarda.

 

Önbellek Ne İşe Yarar?

Önbellek, veri erişimini hızlandırmak için kullanılır ve cihazların daha hızlı çalışmasını sağlar. Her internet erişiminde, ziyaret edilen her sayfa ile önbellek depolama işine başlar. Ardından aynı veriye tekrar ulaşılmak istendiğinde bu veriye kolayca erişimi sağlar. Öte yandan bilgisayarlardaki donanımsal ön bellek ise komutların daha hızlı çalışan bir belleğe alınarak yüksek performans elde edilmesini sağlar. Gelin bu konulara daha yakından bakalım.

 

Web Tarayıcıları

Her web tarayıcısı kendi önbelleğini taşır. Bir tarayıcı önbelleği, ziyaret ettiğiniz web sitelerine erişmek için gereken dosyaları depolar. Bu, siteye ait HTML dosyaları ya da CSS stil sayfaları, Javascript'ler, çerezler ve resimler olabilir.

Bir siteye girerken "log in" olduğunuz veriler önbellekte tutulur. Bu sebeple önbelleği temizlediğiniz zaman bilgisayarınız yeniden "log in" olmanızı ister.

 

Uygulamalar

Genelde uygulamalar kendi önbelleklerini de muhafaza eder. Uygulamalar da gerekli görünen dosya ve verileri kaydeder, ve bu bilgilere ihtiyaç duyulduğunda bilgileri hızla yeniden yükler. Önbelleğe alınan veriler her uygulamada farklılık gösterir.

 

Cihazlar ve Yazılımlar

Önbellekler yazılımda ve donanımda yer bulurlar. Bilgisayarın kalbi olarak adlandırılan işlemciler, bilgisayardaki yazılımdan gelen bilgilerin işlenmesinden sorumludur. CPU'lar hızlı işler ancak bilgisayar bellekleri bu hızın yanında yavaş kalır. Bu noktada devreye işlemci önbellekleri girer.

CPU önbelleği, işlemcinin sık kullanılan bilgileri pratik şekilde erişmesine yardımcı olmak için dizayn edilmiş küçük bir bellek bileşenidir. Bu sebeple desktop, laptop, tablet ve akıllı telefonlar önbellek taşırlar. Böylece ana belleğinin talimatları yürütmek için kullandığı veriler için bilgisayar daha yavaş olan ana bellek yerine, daha hızlı olan önbelleği kullanır ve hız kazanır. Yani klasik DRAM yerine çok daha ideal SRAM kullanmak yüksek performans sağlar. Bu olay gerçekleştirildiğinde ise, işlemci bilgileri daha yavaş olan bellekten alır ve bir yavaşlama olur.

 

CPU Önbelleği Nasıl Çalışır?

Genel olarak CPU önbelleği L1, L2 ve L3 önbelleklerinden oluşur. Veriler ilk aşamada RAM'den L3 önbelleğe, ardından L2'ye ve son olarak L1'e gelir. İşlemci bir işlemi yaparken veriye ulaşmak için önce L1 önbelleğine bakar. CPU veriye erişirse, duruma "önbellek isabeti" denir. Ardından bu veriyi sırasıyla L2'de ve L3'te arar. İşlemci veriyi önbelleklerde bulamazsa sistem belleğine erişmeye çalışır. Bu duruma da "önbellek kaçırma" denir.

L1 (Seviye 1) önbellek, bir bilgisayar bünyesindeki en hızlı bellektir. Erişim önceliği ile işlemcinin belirli bir görevi tamamlarken gereksinim duyacağı muhtemel verileri tutar.

L2 (Seviye 2) önbellek, L1'dan daha yavaştır. Öte yandan boyut olarak daha büyüktür. L1 önbelleği kilobayt ile ölçülebilirken, L2 önbellekleri megabayt cinsinden ölçülür.

L3 (Seviye 3) önbellek, en büyük önbellektir. Ayrıca en yavaş önbellek birimi olarak da bilinir. Modern işlemciler, bu önbelleği içerir.

 

Önbelleğin Avantajları

Önbellek kavramı beraberinde birçok avantaj getirir. Bunları üç ana başlıkta toplamak mümkündür.

Sistemin hızlı çalışmasını sağlar, performansı artırır.

Veriler kaydedildiği için sonra offline olarak erişime olanak verir.

Bir kere önbelleğe alınan veri tüm kaynakların daha tasarruflu çalışmasını sağlar. Dolayısıyla başta batarya olmak üzere tüm kaynaklar daha az kullanılır.