Co oznacza Memory Management?
Automatyczne zarządzanie pamięcią (AMM) to technika, w której system operacyjny lub aplikacja automatycznie zarządza alokacją i dealokacją pamięci. Oznacza to, że programista nie musi pisać kodu, aby wykonywać zadania zarządzania pamięcią podczas tworzenia aplikacji. Automatyczne zarządzanie pamięcią może wyeliminować typowe problemy, takie jak zapomnienie o zwolnieniu pamięci przydzielonej do obiektu i spowodowanie wycieku pamięci lub próba uzyskania dostępu do pamięci dla obiektu, który został już zwolniony.
Zbieranie śmieci jest formą automatycznego zarządzania pamięcią.
Techoteka wyjaśnia Memory Management
Oracle ma zastrzeżone parametry AMM, takie jak PGA_AGGREGATE_TARGET i SGA_TARGET. Oracle używa dwóch parametrów inicjalizacji do skonfigurowania AMM w następujący sposób:
MEMORY_TARGET: Domyślnie ustawione na zero. Dynamicznie ułatwia dostosowanie całkowitej dostępności pamięci Oracle do ograniczeń MEMORY_MAX_TARGET.
MEMORY_MAX_TARGET: Definiuje maksymalny rozmiar MEMORY_TARGET, który może zostać zwiększony bez ponownego uruchamiania instancji.
Zbieracz śmieci środowiska wykonawczego języka wspólnego .NET zarządza przydziałem i zwalnianiem pamięci dla aplikacji. Podczas inicjalizacji nowego procesu .NET Framework występują następujące czynności:
AMM rezerwuje sąsiadujący obszar przestrzeni adresowej w czasie wykonywania, który jest znany jako zarządzany stos.
Ta przestrzeń adresowa ma wskaźnik adresu, który jest używany do przydzielania kolejnych obiektów.
Wskaźnik jest początkowo ustawiony w celu zarządzania adresem bazowym stosu, gdzie jest również przydzielany każdy typ odniesienia.
Przydział pamięci zarządzanego stosu jest bardziej wydajny niż przydział pamięci niezarządzanego.