BT Sözlüğü › Programlama › Yığın boyama (stack painting)

Yığın boyama (stack painting)

Programlama Svenska → Güncellendi: 2026-11-02

Açılışta yığını bilinen bir desenle doldurmak, sonra desenin ne kadarının ezildiğine bakmak.

MMU'su olmayan bir mikrodenetleyicide yığın fazla büyüdüğünde şikâyet edecek bir koruma sayfası yoktur; yığın yanındaki her neyse onu sessizce ezer. Bir yığının ne kadar büyük olması gerektiği çoğu zaman önceden hesaplanamaz, çünkü kesmeler, özyineleme ve kütüphane çağrıları kimsenin yazıya dökmediği derinlik ekler. O yüzden ölçülür.

Başlangıç kodu her yığını bir desenle boyar (FreeRTOS 0xA5 baytını kullanır, diğerleri 0xDEADBEEF'i tercih eder); sistem bir süre çalıştıktan sonra tabandan yukarı doğru değişen ilk sözcüğü ararsınız. Bu uzaklık yüksek su seviyesidir, yani yığının şimdiye dek ulaştığı en derin nokta. FreeRTOS bunu uxTaskGetStackHighWaterMark() ile sunar. Bu yalnızca test sırasında olanı söyler, en kötü durumu değil; bu yüzden sonradan, genellikle bir iç çekişle, bir pay eklenir.

← Sözlüğe dön