В Java 8 метапространство выделяется из встроенной памяти, но я ничего не нашел в сети, что такое встроенная память? За это link это память доступна для операционной системы, но при Difference between Metaspace and Native Memory in Java, родной памяти также показана как часть памяти данного в процессе JVMЯвляется ли metaspace выделенным из собственной памяти?
Пример: - Если да рассмотрим случай, когда я иметь 15 Гб оперативной памяти на Windows OS. У меня есть только один процесс (процесс Java), запущенный на машине с -Xmx 4GB
.
Означает ли это, что ОС может использовать до (15-4)=11 GB
, из которой будет выделено метапространство?
, когда я говорю «OS может использовать до (15-4) = 11 ГБ, из которого будет выделено метапространство памяти» i означает, что ОС может использовать до 11 ГБ по мере необходимости, как и для системного процесса (как вы сказали). Таким образом, мы можем сказать, что 11 ГБ или меньше можно классифицировать как родную память, из которой также будет выделен метапас. –
Нет. Это только «собственная память», если ОС выделила ее для процесса Java. Если нет, его лучше назвать «свободной памятью» ... или «памятью, выделенной для какой-то другой цели». Кроме того, правильная терминология - это «родная куча», а не «родная память». –
Вы, вероятно, должны прочитать следующее: https://en.wikipedia.org/wiki/Virtual_memory –