Automatische Speicherverwaltung (amm)

Definition - Was bedeutet automatische Speicherverwaltung (AMM)?

Die automatische Speicherverwaltung (AMM) ist eine Technik, bei der ein Betriebssystem oder eine Anwendung die Zuweisung und Freigabe von Speicher automatisch verwaltet. Dies bedeutet, dass ein Programmierer beim Entwickeln einer Anwendung keinen Code schreiben muss, um Speicherverwaltungsaufgaben auszuführen. Durch die automatische Speicherverwaltung können häufig auftretende Probleme behoben werden, z. B. das Vergessen, einem Objekt zugewiesenen Speicher freizugeben und einen Speicherverlust zu verursachen, oder der Versuch, auf den Speicher eines bereits freigegebenen Objekts zuzugreifen.

Die Speicherbereinigung ist eine Form der automatischen Speicherverwaltung.

Technische.me erklärt die automatische Speicherverwaltung (AMM)

Oracle verfügt über proprietäre AMM-Parameter wie PGA_AGGREGATE_TARGET und SGA_TARGET. Oracle verwendet zwei Initialisierungsparameter, um AMM wie folgt zu konfigurieren:

  • MEMORY_TARGET: Standardmäßig auf Null gesetzt. Erleichtert dynamisch die Anpassung der Gesamtspeicherverfügbarkeit von Oracle bis zu den Einschränkungen von MEMORY_MAX_TARGET.
  • MEMORY_MAX_TARGET: Definiert die maximale Größe von MEMORY_TARGET, die ohne Neustart einer Instanz erhöht werden kann.

Der Garbage Collector der .NET Common Language Runtime verwaltet die Zuweisung und Freigabe von Speicher für eine Anwendung. Bei der Initialisierung eines neuen .NET Framework-Prozesses tritt Folgendes auf:

  • AMM reserviert zur Laufzeit den angrenzenden Bereich des Adressraums, der als verwalteter Heap bezeichnet wird.
  • Dieser Adressraum verfügt über einen Adresszeiger, mit dem nachfolgende Objekte zugeordnet werden.
  • Der Zeiger wird anfänglich gesetzt, um die Basisadresse des Heaps zu verwalten, wobei auch jeder Referenztyp zugewiesen wird.

Die Zuweisung von verwaltetem Heap-Speicher ist effizienter als die Zuweisung von nicht verwaltetem Speicher.