10 : Allocazione dinamica della memoria Vers . 8.2 – Dicembre 2022
10 . ALLOCAZIONE DINAMICA DELLA MEMORIA
Per allocare lo spazio in memoria per le risorse locali e / o globali di un programma , si possono scegliere sostanzialmente due strategie differenti :
a ) ALLOZIONE STATICA della MEMORIA : la memoria necessaria per il dato viene allocata prima dell ’ esecuzione del programma a tempo di compilazione ( compile-time );
b ) ALLOCAZIONE DINAMICA della MEMORIA : consente , durante l ’ esecuzione di un programma ( quindi a tempo di esecuzione ossia a run-time ), di eseguire le istruzioni per allocare lo spazio in memoria necessario al dato e di deallocare tale spazio al termine della sua esecuzione , in modo da renderlo disponibile ad altri usi / programmi .
STRATEGIE DI ALLOCAZIONE A CONFRONTO
Tempo di esecuzione
Tempo di esistenza delle variabili
Allocazione statica
Costante per tutta l ’ esecuzione del programma
L ’ allocazione viene fatta una volta sola prima dell ’ esecuzione del programma , non appesantendo il suo tempo di esecuzione
Sin dall ’ inizio dell ’ esecuzione del programma a tutte le variabili viene associata una zona di memoria permanente che verrà rilasciata solo quando il programma terminerà .
Allocazione dinamica Variabile nel corso dell ’ esecuzione in quanto le variabili sono allocate solo quando servono L ’ allocazione e la deallocazione avvengono durante l ’ esecuzione del programma , appesantendo il suo tempo di esecuzione Le variabili vengono allocate durante l ’ esecuzione del programma solo quando servono e la memoria ad esse assegnata viene rilasciata con particolari istruzioni quando non servono più
Autore : Rio Chierego ( email : riochierego @ libero . it - sito web : www . riochierego . it ) Pag . 1