Opportunistic Garbage Collection Obviousness
Opportunistic Garbage Collection Obviousness
Posted Apr 21, 2011 23:30 UTC (Thu) by orcmid (guest, #74478)In reply to: Google Linux servers hit with $5m patent infringement verdict (The Register) by flewellyn
Parent article: Google Linux servers hit with $5m patent infringement verdict (The Register)
It is a rather specific circumstance.
The first patent was applied for in 1989 and the last one (specific to the linked-list case) in 1997.
The patent applications list such texts as Knuth "Art of Computer Programming," vol.3 (1973). I only have the second edition (1998) and there is only limited mention of keeping expired ("deleted") items on their list and I could find nothing about incorporating their clean-up in other operations carried out via the hashed-index, apart from possible reuse for later insertions.
One thing that is not clear from my cursory inspection of the patent and Knuth has to do with whether or not the list threads through the records or the linked list is actually of pointers to the relevant records. This can matter in what is going on and when what portions are reclaimed.
Here's a garbage-collection type of situation where this kind of delayed deletion might matter. Consider a pure Lisp type memory of CONS cells. One can do any variety of garbage collection techniques with regard to how those cells depend on each other (including cyclically in the case of LISP), but you can only garbage-collect cells that are unreachable. If some cells are reachable from a hashed-table (say of symbolic names for some purpose), a cell is only removable when it is not reachable that way either. It usually takes some other means to actually release the connection from the hashed-table, and that may depend on it being known this is the only way something is left being reachable.
OK, I sort of hate that contrived example, but hope it is good enough to point out that the problem is different than opportunistic garbage collection as an abstracted-from-context known technique.
