Laufzeitstrukturen
Laufzeitstrukturen, oft auch Laufzeit- oder Run-time-Strukturen genannt, sind die Strukturen und Mechanismen, die während der Ausführung eines Programms im Speicher vorhanden sind oder dynamisch erzeugt werden. Sie unterscheiden sich von Compile-Time-Strukturen, die vor der Ausführung festgelegt werden.
Zu den zentralen Laufzeitstrukturen gehören Speicherschichten wie Stack und Heap, sowie der Laufzeitumgebungsrahmen einer virtuellen Maschine
Darüber hinaus existieren Laufzeitmetadaten und Typinformationen, die zur Typprüfung, zur dynamischen Bindung und zur Reflection verwendet
Moderne Laufzeitumgebungen umfassen oft weitere Bausteine wie Just-In-Time-Compiler, Code Cache, Interpreter-Schichten, Threads und Thread-Local Storage sowie
Beispiele: Die Java Virtual Machine (JVM) und der .NET Common Language Runtime (CLR) stellen umfassende Laufzeitstrukturen
Die Laufzeitstruktur beeinflusst Leistung, Speicherbedarf und Fehlertoleranz eines Programms. Debugging und Optimierung betreffen oft Stack-Layout, Heap-Allokation,