Ответ 1
Мой последний выбор - JamVM + GNU Classpath. Прекрасно работает!:)
Существует много встроенных виртуальных машин Java. Что вы предлагаете для разработки ARM?
В настоящее время я использую платформу TINI из Далласа и отлично работает (оперативная память 512 КБ и 1 МБ), но теперь мне нужно больше (память и процессор).
Мой последний выбор - JamVM + GNU Classpath. Прекрасно работает!:)
4 различных виртуальных машины были перенесены в ОС Symbian, которая работает на процессоре ARM.
Sun KVM, Sun hotspot (или cldc-hi) VM, Sun CDC VM и IBM J9 VM.
Я подозреваю, что есть еще несколько.
Хорошим местом для начала исследования будет список лицензиатов JavaME:
Я сделал некоторую работу Dallas tini в прошлом, поэтому, думаю, я знаю, что вы ищете...? (возможно, в любом случае:)
Если вы посмотрите на такие проекты, как Buildroot, вы обнаружите, что jamvm, я планирую попробовать его на Atmel NGW100 (он основан на AVR32, но он похож на ARM9). Но есть много других проектов ARM9, которые делают почти то же самое.
Эта идея такая же, как у Android. Сначала вы даете Linux позаботиться о нижних слоях, а затем добавьте java vm сверху и там запустите свои приложения.
С другой стороны, Dallas tini была более или менее "готовой" платформой, у вас не было много волшебства, чтобы заставить ее работать. Но этот путь, к сожалению, потребует некоторой работы, чтобы подняться до полной скорости. Но с хорошей стороны у вас есть обещание 200-мегагерцового 32-битного процессора с 32 Мб ОЗУ и хранения на SD-карте, которая может легко хранить пару байтов Giga:)
Удачи.
Там также Java SE Embedded, который поддерживает ARMv5, v6, v7, помните, что это полномасштабная Hotspot с компилятором C1.
Вы также можете посмотреть поддержку debian openjdk, например
Но я думаю, что для этого требуется больше оперативной памяти, чем 512kB
Мой выбор относится к IS2T JVM, который специально оптимизирован для ARM Cortex M и Cortex A, с оптимизированными библиотеками (например, HMI с виджетами и т.д.)