A system for object deletion in persistent memory using bitmap windows representing memory chunks, comprising: a computing environment or device, such as a resource-constrained environment, smart card, or other environment, including a processor or computational engine and a persistent memory for storage of software objects; a data structure configured to include a plurality of memory bitmap windows, each of which represents a chunk of addressable space in the persistent memory, wherein the data structure includes a potential garbage list that includes objects which are not referenced in chunks (146,148,150) that have already been processed; and wherein the system uses the memory bitmap windows in deleting non-reachable objects from the persistent memory, the system configured to perform a method comprising: dividing into chunks (146,148,150) the persistent memory space used for storage of the objects; initializing the plurality of memory bitmap windows (156,158,160) for the chunks (146,148,150) where a bit represents an address in the persistent memory; for each memory bitmap window (156,158,160), marking root objects in the corresponding chunk, and marking child objects in the corresponding chunk, when the marking phase is complete for a memory bitmap window, putting any unreferenced objects within the corresponding chunk on the potential garbage list; checking the potential garbage list for a child object in a chunk represented by a previous memory bitmap window by recursing on said child object and removing said child object from the potential garbage list if it is addressable from the current chunk; and processing each of the chunks (146,148,150) such that the potential garbage list ultimately contains those objects which are not referenced in any chunk and can be considered garbage. a computing environment or device, such as a resource-constrained environment, smart card, or other environment, including a processor or computational engine and a persistent memory for storage of software objects; a data structure configured to include a plurality of memory bitmap windows, each of which represents a chunk of addressable space in the persistent memory, wherein the data structure includes a potential garbage list that includes objects which are not referenced in chunks (146,148,150) that have already been processed; and wherein the system uses the memory bitmap windows in deleting non-reachable objects from the persistent memory, the system configured to perform a method comprising: dividing into chunks (146,148,150) the persistent memory space used for storage of the objects; initializing the plurality of memory bitmap windows (156,158,160) for the chunks (146,148,150) where a bit represents an address in the persistent memory; for each memory bitmap window (156,158,160), marking root objects in the corresponding chunk, and marking child objects in the corresponding chunk, when the marking phase is complete for a memory bitmap window, putting any unreferenced objects within the corresponding chunk on the potential garbage list; checking the potential garbage list for a child object in a chunk represented by a previous memory bitmap window by recursing on said child object and removing said child object from the potential garbage list if it is addressable from the current chunk; and processing each of the chunks (146,148,150) such that the potential garbage list ultimately contains those objects which are not referenced in any chunk and can be considered garbage. dividing into chunks (146,148,150) the persistent memory space used for storage of the objects; initializing the plurality of memory bitmap windows (156,158,160) for the chunks (146,148,150) where a bit represents an address in the persistent memory; for each memory bitmap window (156,158,160), marking root objects in the corresponding chunk, and marking child objects in the corresponding chunk, when the marking phase is complete for a memory bitmap window, putting any unreferenced objects within the corresponding chunk on the potential garbage list; checking the potential garbage list for a child object in a chunk represented by a previous memory bitmap window by recursing on said child object and removing said child object from the potential garbage list if it is addressable from the current chunk; and processing each of the chunks (146,148,150) such that the potential garbage list ultimately contains those objects which are not referenced in any chunk and can be considered garbage.