Yığın ve yığının fiziksel temsili nedir?


9

.Bss ve kodun bir program sayacının sayabileceği talimatlar için bir bellek bankası olan işlemcide nasıl fiziksel temsiller olduğunu ve bss (blok başlatma sembolü) sadece küresel veriler olduğunu kolayca anlayabilirim. Ama sonra yerel değişkenler için yığın ve dinamik bellek için yığın var. Bunlar fiziksel olarak devreye nasıl giriyor?

Yanıtlar:


6

Not: En çok tanıdığım ve çoğunlukla belgelendiği için çoğunlukla x86'ya başvuruyorum:

X86'da (ve diğer birçok mimaride) yığın, diğer her şey gibi bellekte yerleşiktir . İşlemci yığını, genellikle bir kayıt defterinde (yığın işaretçisi) depolanan bir işaretçi aracılığıyla işler. Push ve pop talimatları, yığının üst kısmının yerini değiştirerek yığın işaretçisinin değerini değiştirir.

Öbek bir yazılım soyutlamasıdır . Adından da anlaşılacağı gibi, sadece bir ayırıcı dilimleyip işaretçileri dağıtan bir RAM topluluğudur. Fiziksel olarak, yığın RAM'in diğer kısımlarından farklı görünmüyor.

Bununla birlikte, sayfalama ve bölümleme teğetsel olarak yığınla ilişkilidir. Çoğunlukla, işlemlerin açıkça sahip olmadıkları RAM'i değiştirmelerine izin verilemeyen çoklu görevlerle ilgilidirler.


3
Çağrı, genel olarak bellek yönetimi ile ilgilidir - fiziksel belleğin mantıksal bir adresle eşlendiği birim - sadece erişim kısıtlamalarından ziyade, daha sonra bellek yönetim biriminin ek bir özelliği olarak uygulanır.
Chris Stratton

4

Mantıksal olarak, yığın ve yığın genellikle sadece bellek; yine de uygulama düzeyinde, umarım öncelikle önbellekten sunulur. Çoğu sistemde önbelleğe alma algoritmalarıyla dinamik olarak oraya gelirler, ancak önbellekte veya normalden daha hızlı olan diğer belleklerde açık konumu destekleyen ve muhtemelen belirli verilerin oraya yerleştirme için tercihli önceliğe sahip olması gereken ipuçlarını destekleyen sistemler de vardır. alan izinleri.

Düşük seviyeli yazılım ve derleyici kod üreteçlerinin tasarımı, umarım iyi önbellek kullanımına neden olabilecek veri erişiminin organizasyonunu dikkate alır ve sabit önbellek hatalarına karşı.

Bazı işlemciler bir tür tek derinlik açık yığın önbellek işlevi gören bir dönüş adresi kaydına sahiptir (örnekler akla gelmese de, muhtemelen birkaç derin donanım yığınına sahip olanlar da vardır).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.