2016-10-20 5 views
1

У меня есть сомнения относительно параметров -Xms и других параметров аргумента памяти. Поскольку JVM - это программа, реализованная на C/C++, поэтому всякий раз, когда мы пытаемся передать аргументы памяти во время выполнения, она внутренне использует Malloc/Calloc для назначения памяти нашей программе Java?Как JVM интерпретирует аргументы памяти?

+1

_Why_ Вы хотите это знать? Или, какая разница, если бы вы знали ответ? Вы имеете в виду какую из многих реализаций JVM? –

+0

Я хотел знать реализацию для JVM Hotspot. Это позволит лучше понять, как JVM работает внутри компании. Просто чтобы увеличить свою базу знаний. –

ответ

1

Чтобы узнать, как JVM HotSpot реализует спецификацию, вы можете просмотреть фактический код.

http://hg.openjdk.java.net/jdk9/jdk9/hotspot/file/tip/src/share/vm/runtime/arguments.cpp

Посмотрите на size_t max_heap или match_option(option, "-Xmx" и следовать код оттуда.

Поскольку HotSpot написан на C++, он, вероятно, не будет использовать malloc/calloc, но new/delete, но, скорее всего, какой-то mmap.

+0

Спасибо, Роланд! –

Смежные вопросы