Skip to main content

Befehl: Speicher für aktive Applikation prüfen

Funktion: Der Befehl startet eine Prüfung des Speicherbereichs der aktiven Applikation.

Aufruf: Menü Debug

Voraussetzung: Das CODESYS Memory Tools Package ist installiert. Die Applikation ist im Onlinebetrieb.

Der Speicherbereich der aktiven Applikation wird auf Folgendes überprüft:

  • BOOL-Variablen haben definierte Werte.

  • STRING- und WSTRING-Variablen sind terminiert.

  • Enumerationsvariablen haben gültige Werte.

  • Variablen eines Unterbereichstyps haben gültige Werte.

  • Variablen eines konstanten Blocktyps (STRUCT, ARRAY etc.) sind gegenüber ihren Initialisierungswerten unverändert.

  • Funktionspointeradressen sind intern konsistent.

  • Funktionspointer im Projekt zeigen in einen von CODESYS Memory Tools verwalteten Speicher. Funktionspointer auf Bibliotheksbausteine oder auf externe Bausteine sind ausgenommen, diese können in externem Speicher liegen.

  • Pointer auf einen Typ zeigen auf Speicherstellen dieses Typs.

  • Pointer zeigen auf Speicherstellen, deren Adresse auf die Typgranularität ausgerichtet ist, oder 0 oder -1 ist.

  • Schnittstellenvariablen und Funktionstabellenpointer sind intern konsistent.

  • Der Code von kompilierten Bausteinen ist unverändert.

    Hinweis: Kompilierte Bausteine mit Breakpoints werden von der Prüfung ausgenommen, weil für diese der Code zur Laufzeit manipuliert wird.

Die Ergebnisse der Prüfung werden im Meldungsfenster ausgegeben. Verstöße gegen die Prüfungskriterien erscheinen als Warnungen.

Bei einem Doppelklick auf eine Warnung erscheint die Ansicht Speicher, in der die betreffende Stelle orange markiert ist.

Die Ansicht Speicher kann auch mit dem Befehl Ansicht → Speicher geöffnet werden.

Mit Hilfe des Attributs 'memory_check' kann die Prüfung eingeschränkt werden.