A Java virtual machine 2, comprises an execution engine for executing Java byte code and a memory management system 14. The memory management system 14 performs garbage collection to remove objects that are not reachable from the current state of the Java program. In the prior art memory management system objects representing a class definition are only removed from memory if the classloader object which has loaded the class object is not reachable. According to the present invention the memory management system 14 is arranged for removing classes which do not have any instantiated objects which can be reached in the present state of the program even if the classloader is still reachable. This results in a substantial saving of memory. Preferably the objects representing a class definition have a method which can signal to it that the definition can be deleted from memory if it has no instantiated objects anymore.

Een virtuele machine 2 van Java, bestaat uit een uitvoeringsmotor voor het uitvoeren van de bytecode en een systeem 14 van Java van het geheugenbeheer. Systeem 14 van het geheugenbeheer voert huisvuilinzameling uit om voorwerpen te verwijderen die niet bereikbaar van de huidige staat van het programma van Java zijn. In het beheer van het vroegere kunstgeheugen heeft bezwaar het systeem vertegenwoordigend een klassendefinitie slechts worden verwijderd uit geheugen als het classloadervoorwerp dat het klassenvoorwerp heeft geladen niet bereikbaar is. Volgens de onderhavige uitvinding wordt systeem 14 van het geheugenbeheer geschikt voor het verwijderen van klassen die geen geconcretiseerde voorwerpen hebben die in de huidige staat van het programma kunnen worden bereikt zelfs als classloader nog bereikbaar is. Dit resulteert in een wezenlijke besparing van geheugen. Bij voorkeur hebben de voorwerpen die een klassendefinitie vertegenwoordigen een methode die kan signaleren aan het dat de definitie van geheugen kan worden geschrapt als het geen geconcretiseerde voorwerpen meer heeft.

 
Web www.patentalert.com

< Arrangement for executing program code with reduced memory requirements

< Arrangement for executing program code with reduced memory requirements

> Aggregating constraints and/or preferences using an inference engine and enhanced scripting language

> System and method for using container documents as multi-user domain clients

~ 00097