|
|
|
Вопрос по задачам jvm
|
|||
|---|---|---|---|
|
#18+
Добрый день! Читаю конспект лекций по java и не до конца понимаю смысла выделенных жирным предложений JVM выполняет три основные задачи: 1. Загрузка кода загружая все классы, необходимые для работы программы отделяя локальные классы от классов, загруженных удаленно предотвращая подмену локальных классов удаленными 2. Проверка кода на соответствие спецификации JVM то что код не угрожает целостности системы код не угрожает переполнением памяти в коде не выполняются запрещенные преобразования типов 3. Выполнение кода вызов методов классов обращение к внешним ресурсам взаимодействие с окружением Поясните, пожалуйста, если не сложно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 13:57 |
|
||
|
Вопрос по задачам jvm
|
|||
|---|---|---|---|
|
#18+
mr_virtus, Лектор-теоретег? Или перевод слабый? 1) В Java нет разделение на локальные\удаленные классы. Система classloader-ов позволяет одианково эффективно грузить классы откуда угодно. Возможно имеется ввиду особый bootstrap classloader, который грузит классы JSE и не даёт возможоности заменить их в других загрузчиках? 2) Имеется ввиду такая фигня, как выход за пределы типа и д.п. Например пишешь ты на C++. Шаг влево\вправо и у тебя Access Violation и краш процесса. А Java оберегает тебя от этого, не давая тебе доступ куда попало. В результате процесс крашится исключительно редко. 3) Сложно сказать. Любое взаимодействие с ОС и железом укладывается в эту фразу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 14:20 |
|
||
|
Вопрос по задачам jvm
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, спасибо за пояснения! авторЛектор-теоретег? Или перевод слабый? тут возможно и то и другое. может лектор так перевел или источник у него такой был, либо он сам с этим практики много не имел. подробностей я не знаю. авторВозможно имеется ввиду особый bootstrap classloader, который грузит классы JSE и не даёт возможоности заменить их в других загрузчиках? если у меня получится уточнить, что тут имели в виду, я напишу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 14:25 |
|
||
|
Вопрос по задачам jvm
|
|||
|---|---|---|---|
|
#18+
mr_virtus отделяя локальные классы от классов, загруженных удаленно предотвращая подмену локальных классов удаленными Это в тему изучения работы ClassLoader. Или правильнее сказать нескольких загрузчиков у которых есть имена Bootstrap, System, Extension. У них есть разделение сферы задач. то что код не угрожает целостности системы код не угрожает переполнением памяти У Хорстмана во 2 томе есть пример как после ручной корректировки байткода класслоадер отказался грузить .class ссылаясь на неинициализированную сущность. На самом деле на 100% такую проверку выполнить невозможно хотя-быо из понимания того факта что семантика алгоритма может быть раскрыта только в "процессе". А на этапе валидации можно сделать самые тривиальные проверки. Например смысл opcode mnemonics и ее аргументов. По поводу "целосности" системы - это очень громкая фраза но требующая уточнений. Какой целостности? Что система не распадётся на 2 половинки? Вобщем уточнить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2014, 14:26 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38817387&tid=2126195]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
159ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 197ms |
| total: | 443ms |

| 0 / 0 |
