keş ne demek?

Keş Nedir?

Keş, bilgisayar bilimlerinde ve özellikle bellek yönetimi alanında sıklıkla karşılaşılan bir terimdir. Temel olarak, sık kullanılan veya yakın zamanda kullanılan verilerin hızlı erişim için saklandığı, daha küçük ve daha hızlı bir bellek alanıdır. Amacı, veri erişim hızını artırmak ve sistem performansını iyileştirmektir.

Keşlemenin Temel Prensibi:

Keşleme, yerellik prensibi üzerine kuruludur. Bu prensibe göre, bir programın belirli bir zaman diliminde eriştiği verilerin, yakın zamanda tekrar erişilme olasılığı yüksektir (zamansal yerellik) veya erişilen verilerin yakınındaki verilere de erişilme olasılığı yüksektir (uzamsal yerellik).

Keşin Çalışma Şekli:

  1. Veri İstendiğinde: Merkezi işlem birimi (CPU) bir veriye ihtiyaç duyduğunda, öncelikle keş belleğe bakar.
  2. Keş İsabeti (Cache Hit): Veri keş bellekte bulunuyorsa, bu duruma "keş isabeti" denir ve veri doğrudan keş bellekten alınır. Bu, çok hızlı bir işlemdir.
  3. Keş Hatası (Cache Miss): Veri keş bellekte bulunmuyorsa, bu duruma "keş hatası" denir. Bu durumda, veri ana bellekten (RAM) alınır ve hem CPU'ya gönderilir hem de keş belleğe kaydedilir. Böylece, gelecekte aynı veriye ihtiyaç duyulursa, keş bellekten daha hızlı bir şekilde erişilebilir.
  4. Keş Algoritmaları: Keş belleğin sınırlı bir boyutu olduğu için, yeni veriler geldiğinde eski verilerin bazıları çıkarılmalıdır. Bu işlem için çeşitli keş algoritmaları kullanılır. En yaygın olanları şunlardır:

Keş Türleri:

  • CPU Keşi: CPU'nun içinde veya çok yakınında bulunan, en hızlı keş türüdür. Genellikle L1, L2 ve L3 seviyelerinde bulunur.
  • Disk Keşi: Sabit diskteki verilere daha hızlı erişmek için kullanılır.
  • Web Keşi: Web tarayıcıları ve sunucuları tarafından, web sayfalarının ve diğer web içeriklerinin kopyalarını saklamak için kullanılır. Bu sayede, aynı sayfaya tekrar erişildiğinde daha hızlı yüklenir.

Keşin Avantajları:

  • Veri erişim hızını artırır.
  • Sistem performansını iyileştirir.
  • Ağ trafiğini azaltır (web keşleri).
  • Enerji tüketimini azaltır (daha az ana bellek erişimi).

Keşin Dezavantajları:

  • Karmaşıklığı artırır.
  • Veri tutarlılığı sorunlarına yol açabilir (birden fazla keş kopyası olduğunda).
  • Keş hataları performansı olumsuz etkileyebilir.
  • Ek maliyet gerektirebilir (donanım keşleri).