Patent ID: 7748007
Filing Date: 2010-06-29
Classification: G06F,Y10S

Abstract:
1. A computer system for running one or more programs and comprising a memory in which objects are stored, said system comprising: a processor for executing computer code, wherein the computer code, when executed, implements: a card table containing card references to multiple cards in memory, wherein each card in memory is a predefined portion of said memory, wherein said memory is divided into at least first and second heap and wherein each card reference within said card table refers to a specific card in said memory, wherein each card comprises a first and second component; and a write barrier for detecting that a first object has been updated by a program to include a reference to a second object, and for marking a specific card reference in the card table that references a memory location of a particular card in which said second object is stored, wherein the card table enables a Java Virtual Machine to begin a second application after a first application has run to completion by resetting the Java Virtual Machine without restating the Java Virtual Machine and without performing garbage collection; performing a reset on the system by using a reset logic, wherein the reset deletes all objects in the second heap, wherein the first component of each card is restored to an unmarked value as part of said reset and wherein the second component of each card is maintained unchanged through said reset and is restored to said unmarked value only if a garbage collection is performed on the system.