Önbelleğin çalışma kuralları hakkında bana anlat.
sobes.tech yapay zeka
AI'dan gelen yanıt
Önbellek, verilere erişimi hızlandırmak için kopyalarını tutar. Temel kurallar:
-
Referansın Yerelliği (Locality of Reference):
- Zamansal Yerellik: Bir veri öğesi yakın zamanda kullanıldıysa, muhtemelen yakında tekrar kullanılacaktır.
- Mekansal Yerellik: Bir veri öğesi kullanıldıysa, muhtemelen komşu öğeleri de yakında kullanılacaktır.
-
Önbellek Değiştirme Politikaları (Cache Replacement Policies): Önbellek dolduğunda ve yeni veriler için yer gerektiğinde hangi bloğun silineceğini belirler. Yaygın politikalar:
- FIFO (İlk Giren, İlk Çıkar): En "eski" blok silinir.
- LRU (En Az Son Kullanılan): En az yakın zamanda kullanılan blok silinir.
- LFU (En Az Sık Kullanılan): En az sık kullanılan blok silinir.
-
Önbellek Yazma Politikaları (Cache Writing Policies): Değişikliklerin ne zaman ana belleğe senkronize edileceğini belirler.
- Write-Through: Veriler aynı anda hem önbelleğe hem de ana belleğe yazılır. Tutarlılığı sağlar, ancak daha yavaştır.
- Write-Back: Veriler önce sadece önbelleğe yazılır. Blok silindiğinde veya açıkça "kirli" (değiştirilmiş) olarak işaretlendiğinde ana bellek güncellenir. Daha hızlıdır, ancak değişiklikleri izlemek için mekanizma gerektirir.
-
Önbellek Hatası Durumları (Cache Miss Handling): Talep edilen verilerin önbellekte olmadığında sistemin nasıl tepki vereceğini belirler.
- Sistem, verileri bir sonraki bellek seviyesinden (örneğin, ana bellek) alır.
- Veriler önbelleğe yerleştirilir (varsa mevcut bloğu değiştirerek), ve sonra talep eden işleme sunulur.
-
Önbellek Tutarlılık Kuralları (Cache Coherence Rules): Çok işlemcili sistemlerde, birkaç işlemci aynı verilerin kopyalarına sahip olabilir. Tüm önbellekler arasındaki tutarlılığı sağlarlar. Örnek protokoller: MSI, MESI.
-
İptal Etme/Güncelleme Kuralları (Cache Invalidation/Update): Bir yerdeki veriler değiştirildiğinde (örneğin, bir işlemcinin önbelleğinde), diğer önbelleklerdeki kopyanın geçersiz kılınması veya güncellenmesi gerekir, böylece eski verilerin kullanımı önlenir.