JVM управления памятью и сборщик мусора?

Может ли кто-нибудь посоветовать книгу (или любой другой источник), которая бы подробно раскрыла внутреннюю информацию об управлении памятью JVM и сборке мусора (оптимизация, работа, циклические ссылки, особенности, обсуждения для различных аспектов JVM...)?

[То, что я нашел до сих пор, это отдельные статьи, посвященные различным аспектам, но без веских томов:). Некоторые хорошие материалы для реализации Hotspot находятся здесь. ]

Большое спасибо за любой совет, который вы даете.

5 ответов

Решение

Если вы ищете независимый от поставщика ресурс, раскрывающий и подробно описывающий все различные алгоритмы GC, когда-либо исследованные / разработанные, я рекомендую:

  • Справочник по сборке мусора - объясняет теорию и реализацию основных исследований ГХ, которые проводились там с тех пор, как был разработан первый алгоритм ГХ. Ссылки также связанные исследовательские статьи, где вы можете найти все неприятные детали. Мне действительно нравится эта книга, я думаю, что это Библия всех исследований, связанных с ГК.

HotSpot:

Настройка сборки мусора виртуальной машины

Сборщик мусора - первый мусор (G1)

HotSpot Сборка мусора

IBM Metronome:

Обзор (с информационными ссылками на левой боковой панели)

Это сильно зависит от поставщика и не обязательно является общим.

HotSpot с открытым исходным кодом и демонстрирует непосредственно, как это делается. Jikes RVM - это JVM, написанная на Java, в которую может быть легче погрузиться. JamVM - это крошечная JVM, написанная на C, в которую, из-за ее размера, также может быть легче погрузиться.

Я бы посоветовал ознакомиться со спецификацией виртуальной машины Java. Ниже приведен URL-адрес того же документа:

http://java.sun.com/docs/books/jvms/second_edition/html/VMSpecTOC.doc.html

Это дает вам хорошие общие сведения о виртуальной машине Java.

Кроме того, взгляните на это: http://dave-robinson.net/tuning/jvm_details.html

Другие вопросы по тегам