Здравствуйте, Evgeny.Panasyuk, Вы писали:
EP>Здравствуйте, ·, Вы писали:
EP>>>Играет. На x32 больше 2-4 GiB откусить не получится (без хаков типа PAE).
EP>·>Понятно, но это не связано с байткодом.
EP>Это связано с тем во что транслируется байткод, собственно сабжевый флажок это и контролирует.
Так байткод может и не транслироваться, а тупо интерпретироваться. Асбтракция, и всё такое.
EP>>>А то что у Java проблема с созданием массива в 8млрд байт на x64 — это ортогонально
EP>·>При наличии поддержки в vm — создашь, теоретически ограничений нет.
EP>·>Хотя на практике, насколько я знаю, такой имплементации vm никто не делал, т.к. бессмысленно, проще взять 64-битное железо. А так я слыхал о реализациях jvm для 16 или даже 8-битных процов.
EP>Ну да, я же говорю — без хаков. А с хаками да, можно — но там уже будет указатель не указатель, а некий синтезированный индекс, и соответствующие penalty и т.п.
Хаки эти никак на байткод не влияют, это только сложности в конкретной имплементации конкретной vm под конкретную платфрому.
С т.з. байткода есть только OOP (ordinary object pointer) и ничего не меняется. Скажем например можно включить Compressed Oops, когда указатель ВНЕЗАПНО становится не указатель... но всё работает как и раньше.