Содержание
- 2. За счет чего Java программы переносимы? Дополнительный уровень, определяющий интерфейс к аппаратным ресурсам
- 3. Программа Что такое виртуальная машина? Устройство и состав
- 4. Java Virtual Machine JVM - основная часть исполняющей системы Java, называемой Java Runtime Environment
- 5. Основы Устройство JVM специфицировано в 1996 году JVM интерпретирует и исполняет байт-код Java Байт-код может исполняться
- 6. Состав JVM java – интерпретатор байт-кода Куча (heap) – нераспределенная область динамической памяти предназначенная для размещения
- 7. Поддерживаемые типы данных
- 8. Управление памятью - сборка мусора Часто противопоставляется ручному управлению памятью Упрощает процесс программирования Предотвращает утечки памяти
- 9. Сборщик мусора JVM Определяет объекты, которые в будущем не будут использоваться Освобождает память, занятую такими объектами
- 10. Виды сборки мусора Отслеживающий метод – обход графа и определение достижимости объекта Использование поколений: При срабатывании
- 11. Ограничения На один класс в константном пуле отводится максимум 65535 элементов Длина кода метода ограничена 65535
- 12. Структура класс-файла ClassFile { u4 magic; u2 minor_version; u2 major_version; u2 constant_pool_count; cp_info constant_pool[constant_pool_count - 1];
- 13. Исполнение программы Java При запуске приложения (класса) виртуальная машина выполняет следующие действия: Загрузка класса по его
- 14. Выгрузка класса Класс может быть выгружен, если его загрузчик стал недоступен Системные классы не могут быть
- 15. Прерывание работы JVM JVM прекращает свою работу, если выполнено одно из условий: Все потоки, не являющиеся
- 16. Правда ли что… Формат класс-файла четко формализован? Размер кучи можно изменять во время работы JVM? При
- 17. Ссылки The JavaTM Virtual Machine Specification, Second Edition http://java.sun.com/docs/books/jvms/ Устройство JVM TI (Tool Interface): http://java.sun.com/developer/technicalArticles/J2SE/jvm_ti/index.html
- 18. Q&A
- 20. Скачать презентацию