Ben objektif bir soru çözmeye çalışıyorum, Sınavda geldi. Aslında doğru cevabı bilmiyorum ve nasıl alacağımı bilmiyorum, yardımınıza ihtiyacım var. Teşekkür ederim .Vuruş ve önbellekteki rasyon özledim ve ortalama zaman hesaplaması
Soru: Belirli bir sistemde ana bellek erişim süresi 100 ns'dir. Önbellek, ana bellekten 10 kez daha hızlıdır ve yazma protokolünü kullanır. Okuma isteği için isabet oranı 0,92 ise ve CPU tarafından üretilen bellek isteklerinin% 85'i okunacak ise, kalan yazma değeri; Daha sonra hem okuyup yazma istekleri ortalama süre düşüncedir
a))
b 14.62ns
c 348.47ns)
d 29.62ns)
Benim çalışmalarını 296.2ns ::::
Eh, bellek erişim zamanı = 100ns
önbellek erişim süresi
In order to find avg time we have a formula
Tavg = hc+(1-h)M
where h = hit rate
(1-h) = miss rate
c = time to access information from cache
M = miss penalty (time to access main memory)
Yaz operasyon ile (10 zaman daha hızlı) = 10 ns olacaktır: önbellek konumu ve ana bellek konumu aynı anda güncellenir.
CPU tarafından üretilen% 85 isteğin okuma talebi olduğu ve% 15'inin yazma talebi olduğu belirtilir.
Tavg = 0.85(avg time for read request)+ 0.15(avg time for write request)
= 0.85(0.92*10+0.08*100)+0.15(avg time for write request)
// * 0.92
okuma isteği için bir isabet oranı, ama yazma isteği için oran yok İsabet ??ben kabul edersek yazma isteği söz konusu isabet isabet oranı daha sonra okuma isteği için isabet oranı ile aynıdır,
= 0.85(0.92*10+0.08*100)+0.15(0.92*(10+100)+0.08*100)
=31 ns
O isabet oranı daha sonra yazma isteği için% 0'dır varsayarsak,
= 0.85(0.92*10+0.08*100)+0.15(0*110+1*100)
=29.62 ns
politika yoluyla yazma durumunda
Neden diske bahsetti mi? Soru, hafızanın disk tarafından desteklendiğini söylemez, bu yüzden olmadığını varsaymalısınız. Örneğin. MAP_PRIVATE (bir yürütülebilir dosyanın veri bölümü gibi) veya MAP_ANONYMOUS (malloc veya bss bölümü) eşlemesi. Normal İşletim Sistemleri, bellek baskısı olmadıkça aşırı yüklenmeyi önlemek için yeterli takas olsa bile takas yapmak için kirli anonim sayfalar yazmaz. –
@PeterCordes Eh, tam olarak bunu kabul ettim. Bununla birlikte, yazma önbelleği arkaplan deposuna yazıyor ve "bellek" ile "dahili" ana bellek * anlamına geldiğini düşündüm, bu da uçucudur. Bu yüzden ortak destek deposu olarak, diski düşündüm. Ama yine de çözümde bulamadım. – user8