Yanıtlar:
Bu hem işlemciye (sadece işlemci serisine değil, modelden modele değişebilir) hem de işletim sistemine bağlı, ancak genel prensipler var. Bir işlemcinin çok çekirdekli olup olmadığı, bu yönü doğrudan etkilemez; Aynı işlem aynı anda birden fazla çekirdek üzerinde de yürütülüyor olabilir (çoklu okunuyorsa) ve bellek işlemler arasında paylaşılabilir; bu nedenle, içerik anahtarında ne olduğuna bakılmaksızın önbellek senkronizasyonu kaçınılmazdır.
Bir işlemci önbellekte bir bellek konumuna baktığında, bir MMU varsa , o yerin fiziksel veya sanal adresini kullanabilir (bazen ikisinin bir kombinasyonu bile olabilir, ancak bu burada gerçekten alakalı değildir).
Fiziksel adreslerle, hangi sürecin adrese eriştiği önemli değil, içerik paylaşılabilir. Dolayısıyla, bir içerik geçişi sırasında önbellek içeriğini geçersiz kılmanıza gerek yoktur. İki işlem aynı fiziksel sayfayı farklı özelliklerle eşleştirirse, bu MMU tarafından gerçekleştirilir (bir MPU (bellek koruma birimi) olarak işlev görür ). Fiziksel olarak adreslenmiş bir önbelleğin dezavantajı, MMU’nun işlemci ile önbellek arasına oturması gerektiği ve önbellek aramasının yavaş olması gerektiğidir. L1 önbellekleri neredeyse hiç fiziksel olarak adreslenmez; üst düzey önbellek olabilir.
Aynı sanal adres, farklı işlemlerde farklı bellek konumlarını gösterebilir. Bu nedenle, neredeyse adreslenmiş bir önbellekle, bir işlemin doğru belleği bulabilmesi için işlemci ve işletim sistemi işbirliği yapmalıdır. Birkaç yaygın teknik var. İşletim sistemi tarafından sağlanan içerik değiştirme kodu tüm önbelleği geçersiz kılabilir; bu doğru ama çok pahalı. Bazı CPU mimarileri, MMU tarafından da kullanılan bir işlem kimliğinin donanım sürümü olan ASID (adres alanı tanımlayıcısı) için önbelleklerinde yer tutar. Bu, önbellek girişlerini farklı işlemlerden etkili bir şekilde ayırır ve aynı sayfayı eşleyen iki işlemin aynı fiziksel sayfanın tutarsız görünümlerine sahip olacağı anlamına gelir (genellikle paylaşılan bir sayfayı gösteren özel bir ASID değeri vardır, ancak haritalanan tüm işlemlerde aynı adrese eşlenmemişlerse bunların temizlenmesi gerekir). İşletim sistemi farklı işlemlerin örtüşmeyen adres alanları kullanmasına özen gösterirse (bu, sanal belleği kullanma amacını ortadan kaldırır, ancak bazen yapılabilir), önbellek satırları geçerli kalır.
MMU'ya sahip çoğu işlemcide ayrıca bir TLB bulunur . TLB, sanal adreslerden fiziksel adreslere bir eşleştirme önbelleğidir. Fiziksel adresi mümkün olduğunca çabuk belirlemek için fiziksel olarak adreslenen önbelleklere bakılmadan önce TLB'ye danışılır; İşlemci, TLB araması tamamlanmadan önce önbellek aramasını başlatabilir, çünkü çoğu zaman aday önbellek çizgileri, adresin orta bitlerinden, önbellek satırındaki ofseti belirleyen bitler ile sayfayı belirleyen bitler arasında tespit edilebilir. Neredeyse adreslenmiş önbellek, önbellek çarpması durumunda TLB'yi atlar, ancak işlemci bir eksiklik durumunda önbellek sorgularken TLB aramasını başlatabilir.
Bir bağlam geçişinde TLB'nin kendisi yönetilmelidir. TLB girişleri bir ASID içeriyorsa, yerinde kalabilir; işletim sistemi, yalnızca ASID değerleri değiştiyse TLB girişlerini temizlemesi gerekir (örn. bir işlemden çıkıldığı için). TLB girişleri global ise, farklı bir içeriğe geçerken geçersiz olmaları gerekir.
Önbellek tipik olarak bir içerik anahtarına habersizdir. Yalnızca erişilen bellek adresleri sırası, hangi önbellek satırlarının değiştirileceğini belirler.
Değişim politikası genellikle üreticiye ve belirli mikro mimariye bağlı bir sezgiseldir. Sorun, sezgiselçinin geleceği tahmin edememesi, hangi adrese ve dolayısıyla önbellek hattına erişileceği.
Sezgisel, LRU kadar basit olabilir (en son kullanılan yöntem). Ancak modern işlemciler ile sezgisel tarama daha karmaşıktır.
Bir göz atın Intel® 64 ve IA-32 Mimarileri Yazılım Geliştirici Kılavuzu Cilt 3 Bölüm 11 hafıza önbellek ve önbellek kontrol mekanizmalarını açıklar. AMD, bunu AMD64 Mimari Programcı El Kitabı Cilt 2: Sistem Programlama'nın 7. Bölümünde yapmıştır . ARM tabanlı işlemciler için, PDF'lerin yalnızca kayıtlı müşterilere açık olduğu görülmektedir.