Учебники

Виртуальная машина Java — 32b против 64b

На 32-битной машине может быть установлена ​​только 32-битная версия JVM. На 64-битной машине у пользователя есть выбор между 32-битной и 64-битной версиями. Но в этом есть определенные нюансы, которые могут повлиять на работу наших Java-приложений.

Если приложение Java использует менее 4 ГБ памяти, мы должны использовать 32-разрядную JVM даже на 64-разрядных компьютерах. Это связано с тем, что ссылки на память в этом случае были бы только 32b, и манипулирование ими было бы дешевле, чем манипулирование адресами 64b. В этом случае 64-битная JVM будет работать хуже, даже если мы используем OOPS (обычные объектные указатели). Используя OOPS, JVM может использовать 32-битные адреса в 64-битной JVM. Однако манипулирование ими будет медленнее, чем реальные ссылки 32b, поскольку базовые нативные ссылки будут по-прежнему 64b.

Если наше приложение будет использовать больше памяти 4G, нам придется использовать версию 64b, поскольку ссылки 32b могут адресовать не более 4G памяти. Мы можем установить обе версии на одном компьютере и переключаться между ними с помощью переменной PATH.