A hardware or software apparatus, or a combination of both, is used for
efficiently managing the dynamic allocation, access and release of memory
used in a computational environment. This apparatus reduces, or preferably
eliminates, the requirements for application housekeeping, such as garbage
collection, by providing substantially more deterministic dynamic memory
management operations. Housekeeping, or garbage collection, such as memory
compaction and unused space retrieval, are reduced or eliminated. When
housekeeping is eliminated, all dynamic memory invocations become
substantially deterministic. The invention maps all or a part of a large,
sparsely populated logical memory address space used to store dynamically
allocated objects, to a smaller, denser physical memory address space.
This invention results in a reduction in processing overhead in the
computational environment, such as an operating system, which enhances
performance, since the application no longer requires housekeeping
functions from the environment. This process is particularly applicable to
software components developed utilizing object oriented programming, which
is more likely to use temporary memory allocation and release, thereby
requiring significant housekeeping functions in the prior art.
Un'apparecchiatura del software o dei fissaggi, o una combinazione di entrambi, è utilizzata per efficientemente il controllo la ripartizione dinamica, l'accesso e del rilascio della memoria usati in un ambiente di calcolo. Questo apparecchio riduce, o preferibilmente elimina, i requisiti del governo della casa di applicazione, quale l'accumulazione dell'immondizia, fornendo i funzionamenti dinamici sostanzialmente più deterministici dell'amministrazione di memoria. Il governo della casa, o l'accumulazione dell'immondizia, quali il consolidamento di memoria ed il ricupero inutilizzato dello spazio, è ridotta o eliminata. Quando il governo della casa è eliminato, tutti i invocations dinamici di memoria diventano sostanzialmente deterministici. L'invenzione traccia tutto lo o una parte grande, spazio per l'indirizzo logico scarsamente popolato di memoria usato per memorizzare gli oggetti dinamicamente assegnati, ad un più piccolo, spazio per l'indirizzo fisico più denso di memoria. Questa invenzione provoca una riduzione delle spese generali d'elaborazione nell'ambiente di calcolo, quale un sistema operativo, che aumenta le prestazioni, poiché la domanda no. più lungamente richiede le funzioni di governo della casa dall'ambiente. Questo processo è particolarmente applicabile ai componenti di software sviluppati utilizzando la programmazione orientata dell'oggetto, che è più probabile usare la ripartizione ed il rilascio di memoria provvisoria, quindi richiedenti le funzioni di governo della casa significative nell'arte anteriore.