Un GC generacional es siempre incremental, ya que no recoge todos los objetos inalcanzables durante un ciclo. Por el contrario, un GC incremental no necesariamente utiliza un esquema de generación para decidir qué objetos inalcanzables recolectar o no.
Un GC generacional divide los objetos inalcanzables en diferentes conjuntos, aproximadamente de acuerdo con su último uso, su edad, por así decirlo. La teoría básica es que los objetos que se crearon más recientemente se volverían inalcanzables rápidamente. Entonces el conjunto con objetos 'jóvenes' se recoge en una etapa temprana.
Un GC incremental puede se puede implementar con el esquema generacional anterior, pero se pueden emplear diferentes métodos para decidir qué grupo de objetos se debe barrer.
Uno podría mirar this wikipedia page y más hacia abajo, para más información sobre ambos métodos de GC.
Según el sitio web de Boehm, la GC es gradual y generacional:
El colector utiliza una marca y barrido algoritmo. Proporciona la recopilación generacional incremental y bajo los sistemas operativos que proporcionan el tipo correcto de soporte de memoria virtual .
En lo que se refiere a un entorno de tiempo real, hay varios trabajos de investigación académica que describe formas nuevas e ingeniosas para hacer la recolección de basura:
¿Qué es esto Eden? – kingsmasher1
La joven generación está dividida en espacio, desde el espacio y el Edén. La asignación se realiza en el espacio y en el Edén, tanto el espacio como el Edén se copian en el espacio de la colección; la diferencia es que Eden se borra por completo. Para obtener más información, eche un vistazo aquí y busque en la página de Eden: http://java.sun.com/docs/hotspot/gc1.4.2/faq.html –