通常我们所说的GC是指垃圾回收,但是在JVM的实现中GC更为准确的意思是指内存管理器,它有两个职能,第一是内存的分配管理,第二是垃圾回收。这两者是一个事物的两个方面,每一种垃圾回收策略都和内存的分配策略息息相关,脱离内存的分配去谈垃圾回收是没有任何意义的。
本书第3章会介绍G1如何分配对象,第4章到第10章都是介绍G1是如何进行垃圾回收的。为了更好地理解后续章节,本章主要介绍G1的一些基本概念,主要有:G1实现中所用的一些基础数据堆分区、G1的停顿预测模型、垃圾回收中使用到的对象头、并发标记中涉及的卡表和位图,以及垃圾回收过程中涉及的线程、栈帧和句柄等。