Как работает java на встраиваемых системах? Компилируется ли он в машинный код?
Два года назад где-то слышал то что java популярный язык для iot устройств и другой техники.
При этом он позиционирует как кроссплатформенный и для того чтобы он работал нужно сначала написать для него jvm на этой архитектуре.
Но как java работает в кофемашинах, автоматах игрушек? На них ведь не процессоры, а микроконтроллеры которые ограничены вычислительной мощью и памятью? Или java код компилирует в машинный код?
Даже если бы в нëм не было ограничений сначала нужно было бы написать jvm, а потом программу для него.
Разве нельзя писать всë на C/C++
Java создавался, как язык, который можно использовать в IoT. Но реальную популярность он получил совсем в других областях.
А в IoT как раз C и предпочитают (или, как в Arduino, С с рюшечками). Кроссплатформенность нужна, если у тебя контроллеры, спаянные в китайском подвале и в разных экземплярах одной и той же модели могут стоять разные процессоры. А для нормального железа она не имеет смысла.
P.S. В потребительском сегменте оригинальных процессорных архитектур очень мало. Так что и вариантов JVM, перекрывающих почти весь спектр железа, совсем немного.
Программы для кофемашин и автоматов игрушек не пишут на java
Разве нельзя писать всë на C/C++
Пиши, кто запрещает?