1. A method of garbage collection of memory, said method comprising: identifying objects referenced by pointers in “extended root set” during the execution of application program; and distinguishing those identified objects, traversing them and their descendants during a tracing garbage collection.