Bilgisayar sistemi dolaşım önbelleği önemlidir

"Merhaba Dünya" programını çalıştırdığımızda ne olur, birçok ayrıntı burada atlanmalı ve daha sonra eklenecektir, ancak şimdilik bu genel açıklamadan çok memnun kalacağız.

Başlangıçta, kabuk programı talimatlarını yerine getirir ve bir komut girmemizi bekler. Klavyede "./hello" dizesini girdiğimizde, kabuk programı karakterleri tek tek register'a okur ve daha sonra Şekil 1-5'de gösterildiği gibi hafızaya kaydeder.

Klavyede Enter tuşuna bastığımızda, kabuk programı komutu yazmayı bitirdiğimizi biliyor. Daha sonra kabuk, çalıştırılabilir merhaba dosyasını yüklemek için bir dizi talimat yürütür.Bu talimatlar, merhaba hedef dosyasındaki kodu ve verileri diskten ana belleğe kopyalar. Veriler, sonunda çıktısı alınacak olan "merhaba, dünya \ n" dizesini içerir.

Doğrudan bellek erişimi (DMA) teknolojisi kullanılarak veriler, işlemciden geçmeden doğrudan diskten ana belleğe ulaşabilir. Bu adım Şekil 1-6'da gösterilmektedir.

Merhaba hedef dosyasındaki kod ve veriler ana belleğe yüklendikten sonra, işlemci merhaba programının ana programında makine dili talimatlarını yürütmeye başlar. Bu talimatlar "merhaba, dünya \ n" dizesindeki baytları ana bellekten kayıt dosyasına ve ardından kayıt dosyasından görüntüleme cihazına kopyalar ve son olarak ekranda görüntülenir. Bu adım Şekil 1-7'de gösterilmektedir.

Bu basit örnek, sistemin bilgiyi bir yerden diğerine taşımak için çok fazla zaman harcadığı önemli bir sorunu ortaya çıkarır. Merhaba programının makine talimatları başlangıçta diskte depolanır, program yüklendiğinde ana belleğe kopyalanır, işlemci programı çalıştırdığında yönergeler ana bellekten işlemciye kopyalanır. Benzer şekilde, "merhaba, dünya / n" veri dizisi başlangıçta disk üzerindedir, daha sonra ana belleğe kopyalanır ve son olarak ana bellekten görüntüleme cihazına kopyalanır. Programcının bakış açısından, bu kopyalar ek yüktür ve programın "gerçek" çalışmasını yavaşlatır. Bu nedenle, sistem tasarımcılarının temel amaçlarından biri bu kopyalama işlemlerini olabildiğince hızlı hale getirmektir.

Mekanik ilkelere göre, daha büyük depolama cihazları, daha küçük depolama cihazlarından daha yavaş çalışır ve hızlı cihazların maliyeti, benzer düşük hızlı cihazlardan çok daha yüksektir. Örneğin, tipik bir sistemdeki disk sürücüsü ana bellekten 1.000 kat daha büyük olabilir, ancak işlemci için disk sürücüsünden bir sözcüğü okumanın zaman maliyeti, ana bellekten okuma maliyetinden 10 milyon kat daha fazladır. .

Benzer şekilde, tipik bir yazmaç dosyası yalnızca birkaç yüz bayt bilgi depolarken, ana bellek milyarlarca bayt depolayabilir. Ancak işlemci, yazmaç dosyasındaki verileri ana bellekten okuduğundan neredeyse 100 kat daha hızlı okur. Daha da zahmetli olan şey, yarı iletken teknolojisinin yıllar içinde gelişmesiyle bu işlemci ile ana bellek arasındaki boşluğun artmaya devam etmesidir. İşlemciyi hızlandırmak, ana belleği hızlandırmaktan çok daha kolay ve ucuzdur.

İşlemci ve ana bellek arasındaki bu farka yanıt olarak, sistem tasarımcıları, depolama için geçici bir montaj alanı olarak önbellek (önbellek veya yüksek hızlı önbellek olarak adlandırılan önbellek) adı verilen daha küçük ve daha hızlı bir depolama aygıtını benimsemiştir İşlemcinin yakın gelecekte ihtiyaç duyabileceği bilgiler. Şekil 1-8, tipik bir sistemdeki önbelleği göstermektedir.

İşlemci yongasında bulunan L1 önbelleğinin kapasitesi on binlerce bayta ulaşabilir ve erişim hızı neredeyse kayıt dosyası kadar hızlıdır. Yüzbinlerce ila milyonlarca bayta kadar kapasiteye sahip daha büyük bir L2 önbellek, işlemciye özel bir veri yolu ile bağlanır. Bir işlemin L2 önbelleğine erişme süresi, L1 önbelleğine erişme süresinden 5 kat daha uzundur, ancak bu yine de ana belleğe erişme süresinden 5 ila 10 kat daha hızlıdır. L1 ve L2 önbellekleri, statik rasgele erişim belleği (SRAM) adı verilen bir donanım teknolojisi kullanılarak uygulanır. Daha yeni, daha güçlü sistemlerde üç önbellek seviyesi bile vardır: L1, L2 ve L3. Sistem büyük bir bellek elde edebiliyor ve erişim hızı da çok hızlı çünkü önbelleğin yerellik ilkesinin kullanılması, yani programın yerel bir alandaki verilere ve kodlara erişme eğilimi olmasıdır. Sık erişilen verilerin önbellekte saklanmasına izin vererek, çoğu bellek işlemi hızlı önbellekte tamamlanabilir.

Bu kitaptan çıkarılan önemli sonuçlardan biri, önbelleğin varlığından haberdar olan uygulama programcılarının, program performansını büyük ölçüde iyileştirmek için önbelleği kullanabilmeleridir. Bu makale, "Bilgisayar sistemlerinin derinlemesine anlaşılması (orijinal kitabın 3. baskısı)" bölümünden alınmıştır.

Önerilen kitaplar

"Bilgisayar sistemlerinin derinlemesine anlaşılması"

(Orijinal kitabın üçüncü baskısı)

ISBN : 978-7-111-54493-7

Yazar : Randall E. Bryant

David R. O'Halaron

Fiyatlandırma : 139,00

Yayınlanma tarihi : 2016/11

"Teknoloji Evi" nin kapsamlı gelişimi Test sürüşü deneyimi yeni nesil Subaru Forester
önceki
BMW X1'in mükemmel yaşam zevki, modacıları ve gücü ve güzelliği
Sonraki
Uygun bir aşk partneri bulmak ister misiniz, "uygun" kriterler nelerdir?
BDTC2016 Büyük Veri Güvenliği ve Gizlilik Koruma Forumu'nun 6 konuşmacısı açıkladı, en çok kimin konuşmasını bekliyorsunuz?
Nubia X'in ilk resim ödülü: ön ve arka çift ekranlar, tam önden özgürlük
Kitlesel sise eğilimli 9 yol bölümü ve yokuş aşağı 3 tehlikeli yol bölümü - Pekin'de kış kazasına meyilli yol bölümü 12 açıklandı
Dünya karmaşık, aidiyet duygunuz gittikçe daha spesifik hale geldi mi? | Hayatta 100 büyük sorun
Zaobao: Milli futbol takımı harika!
% 93,6 ekran doluluğu! Çift ekranlı Nubia X piyasaya sürüldü: her iki tarafta parmak izleri, ön ve arka kamera bir arada
Aynı sınıfta eşsiz konfor 2019 Nissan Sylphy bisiklet testi
Temiz ve güzel! Pekin'de 1.048 köyde çevresel iyileştirme!
iyi haberler! Bu ilaçların fiyatı% 90'a kadar düşecek!
Tarihteki en yüksek ekran-gövde oranına sahip LCD amiral gemisi! Nubia X ilk değerlendirme: çift ekran + çift taraflı parmak izi
Sektördeki en iyi uygulamalara odaklanan BDTC 2016'nın tüm gündemi açıklandı
To Top