Ответ 1
Нет, пространство permGen в дополнение к основной куче (последняя ограничена через -Xmx на виртуальных машинах Sun)
Когда я говорю -Xmx=1024m
, это включает в себя permgen i.e -XX:MaxPermSize=
берется из этих 1024 м или отдельно?
Глядя на this Я думал, что это займет от 1024 м, но до сих пор я считал, что они разделены.
Нет, пространство permGen в дополнение к основной куче (последняя ограничена через -Xmx на виртуальных машинах Sun)
Постоянное поколение - это отдельное пространство, выделенное через MaxPermSize
. Это дополнение к набору кучи с -Xmx
.
См. диаграмму на http://www.oracle.com/technetwork/java/gc1-4-2-135950.html#3.%20Sizing%20the%20Generations|outline "3. Определение размеров поколений"
Это показывает, что "Общий размер", т.е. Xmx
, не считает постоянное поколение.
И, кстати, JDK 1.4 довольно старый. Проверьте параметры и ссылки JDK 1.6 для обновленного вида: http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html