Wie kann ich ermitteln, geeignete stack-und heap-Größen für ARM Cortex, mit C++

Den cortex-M3-Prozessor-startup-Datei können Sie angeben, wie viel RAM gewidmet, den stack und den heap. Für ein c++ code-Basis, gibt es eine Faustregel oder vielleicht ein paar mehr expliziten Weg, um zu bestimmen, die Werte für den stack-und heap-Größen? Zum Beispiel, würden Sie die Anzahl und Größe von einzigartigen Objekten, oder vielleicht verwenden Sie die kompilierte code-Größe?

Dies ist mehr compiler-und runtime-library als spezifische, bezogen auf eine bestimmte CPU-Architektur. Aber die meisten von allen, es ist Ihr code, der bestimmt, Speichernutzung. Verwenden Sie entweder die MMU oder eines Daten-Haltepunkts auf catch-stack-overflows.
mögliche Duplikate von Wie bestimmt die maximale stack-Auslastung?
Cortex-M3 hat keine MMU, aber es hat auch Daten auf hardware-breakpoint-Unterstützung, die helfen kann, während des Tests, aber nicht für die Bereitstellung.
Angesichts der toolchain-spezifischen Komponenten der Clifford ' s Antwort, ich glaube nicht, dass diese funktional ein Duplikat. Eine nützliche Zeiger trotzdem, obwohl.

InformationsquelleAutor rmaVT | 2011-03-11

Schreibe einen Kommentar