PermSize

  • PermSize表示Perm内存初始值的大小,也是最小值

MaxPermSize

  • MaxPermSize表示Perm内存的最大值

  1. Perm空间的可用大小会在PermSize和MaxPermSize之间动态变化

  2. 如果PermSize比MaxPermSize大,那么会将MaxPermSize设置为PermSize

  3. PermSize按照64K对齐,而MaxPermSize按照2M对齐

  4. 但是,真正可用的Perm边界的值并不一定是按照上面的值对齐好后的值,比如PS GC下,PermSize最终会按照512K对齐,但是jinfo看到的PermSize的值还是原来计算的64K对齐的值,而比如CMSGC下就按照64K对齐就行了

  5. PermSize必须不小于1M

  6. Class对象默认情况下是存在Heap里,如果我们设置了-XX:+UnlockDiagnosticVMOptions -XX:+JavaObjectslnPerm这两个参数,那将分配在Perm里