Anahtar fark: Önbellek, verileri şeffaf bir şekilde depolar; böylece bu veriler için gelecekteki talepler daha hızlı bir şekilde yerine getirilebilir. Öte yandan, bir arabellek, verileri geçici olarak depolarken, veriler bir yerden diğerine geçme işlemidir.
İki ana önbellek türü vardır; bellek önbellekleme ve disk önbellekleme. Bellek önbelleklemesi, önbellek ana belleğin bir parçası olduğunda, disk önbelleği ise önbellek bir sabit disk gibi başka bir ayrı depolama alanının parçası olduğunda gerçekleşir. Önbellekleme, verileri bir önbellekte saklama işlemidir; böylece verilere gelecekte daha hızlı bir şekilde erişilebilir. Bir önbellekte depolanan veriler, daha önce hesaplanan değerler veya başka bir yerde depolanan orijinal değerlerin kopyaları olabilir. Bazı veriler istendiğinde, önbellek önce bu verileri içerip içermediğini görmek için kontrol edilir. Veri önbellekten kaynak orijinden daha hızlı bir şekilde alınabilir.
Önbelleğe almayı anlamak için kolay bir örnek web önbelleğe almaktır. Bir web önbelleği, HTML sayfaları ve görüntüler gibi web belgelerinin geçici olarak depolanması (önbelleğe alınması) için bir mekanizmadır. Bu, çoğunlukla bant genişliği kullanımını, sunucu yükünü ve algılanan gecikmeyi azaltmak için yapılır. Bir web sayfası yüklendiğinde, sayfalardaki veriler önbelleğe alınır; bu nedenle, sayfa bir sonraki yüklenişinde, veriler zaten mevcut olduğundan daha hızlı olur ve yalnızca bir sonraki sefer önbelleğe alınan sayfalarda yapılan değişikliklerin yüklenmesi gerekir. Google’ın arama sonuçlarındaki önbellek bağlantısı, yakın zamanda sona eren web sitelerinden bilgi almanın bir yolunu ve doğrudan bağlantıyı tıklatarak daha hızlı bir şekilde veri almanın bir yolunu sunar.
Öte yandan, arabellek temel olarak RAM'da bulunur ve CPU'nun geçici olarak veri depolayabileceği bir alan olarak işlev görür. Bu alan özellikle bilgisayar ve diğer cihazlar farklı işlem hızlarına sahipken kullanılır. Tipik olarak veriler, bir giriş aygıtından (fare gibi) alındığı gibi ya da bir çıkış aygıtına (hoparlörler gibi) gönderilmesinden hemen önce bir arabellekte depolanır. Bununla birlikte, arabellek, bir bilgisayar içindeki işlemler arasında veri taşırken de kullanılabilir.
Böylece, bilgisayar, verileri, cihazın verilere erişebildiği yerden kendi hızı olarak bir arabellek içine yazar. Bu, bilgisayarın arabelleğe verileri yazmasından sonra bilgisayarın diğer konulara odaklanmasını sağlar; Cihaz bitene kadar sürekli veri üzerinde durmaya karşı.
Tamponlar, donanımda sabit bir hafıza konumuna veya yazılımdaki sanal bir veri tamponu kullanılarak, bir veri tamponuna işaret eden bir fiziksel depolama ortamında depolanabilir. Tamponların çoğunluğu yazılımda kullanılmaktadır. Bu arabellekler genellikle geçici verileri depolamak için daha hızlı RAM kullanır, çünkü RAM sabit disk sürücülerden çok daha hızlı bir erişim süresine sahiptir. Bir arabellek sıklıkla bellekte bir sıra veya FIFO algoritması uygulayarak zamanlamayı ayarlar. Bu nedenle, genellikle kuyruğa bir hızda veri yazıyor ve başka bir hızda okuyor.
Tamponlar ayrıca disk sürücüleri, bir ağdan veya bir ağdan veri gönderip alma veya bir hoparlörden ses çalma gibi donanımlarda G / Ç ile birlikte kullanılır. Tamponlar, farklı hızlarda çalışan iki dijital devrenin birbirine bağlanması, daha sonra kullanılmak üzere veri tutulması, bir veri akışında zamanlama düzeltmelerinin yapılmasına izin verilmesi, ardından ikili veri bitlerinin çalıştırılabilen gruplar halinde toplanması gibi birçok amaç için kullanılır. Bir birim olarak ve diğer işlemlerin gerçekleşmesini sağlamak için sinyalin geçiş süresini geciktirmek.
Ancak, yeni bölüm zaten ara belleğe taşınmamışsa, konumunuzu veri akışında anında taşımak için kullanılamaz. Gri çubuk tarafından kaplanmayan bir bölüme iletilemeyen YouTube videosuna benzer. Bunu yaparsanız, arabellek taşınır ve yeni konumdan yeniden başlatılır.
Yine de, bir önbellek ve arabellek işlevleri birbirini dışlamaz ve çoğu zaman ideal bir performans için birleştirilir.