Виртуальные машины Java, которые не требуют операционной системы? - PullRequest
18 голосов
/ 18 апреля 2009

Я знаю, что BEA работал над LiquidVM, для которой не требовалась базовая операционная система, но хотел бы знать, работает ли кто-либо из сообщества открытого исходного кода над чем-то похожим.

В идеале я хотел бы найти реализацию, в которой виртуальная машина загружается непосредственно загрузчиком ОС.

Ответы [ 8 ]

13 голосов
/ 17 июля 2009

В отличие от SANOS, операционная система JNode представляет собой полноценную операционную систему со многими поддерживаемыми устройствами, файловыми системами, сетевым стеком, стеком графического интерфейса пользователя, командной оболочкой и примерно 50 командами и многим другим. JNode в настоящее время работает на x86 (32 бит) с одним включенным процессором, но x86-64 и многопроцессорные версии находятся в стадии разработки. (JNode - это 99,99% Java. Портирование на новую архитектуру повлечет за собой переписывание 0,01% кода, который находится на ассемблере, создание / изменение аппаратных драйверов ... и написание компилятора собственного кода для новой архитектуры.)

В настоящее время у нас есть ~ 7 активных разработчиков, но мы всегда ищем новых людей для присоединения к команде, особенно людей, которые понимают генерацию кода Java и, сборщиков мусора, драйверов и т. Д.

(И для этого мы используем последнюю версию библиотек классов OpenJDK: 1.6u24 на последнем счете.)

4 голосов
/ 18 апреля 2009

Существует также Project Guest VM , которая представляет собой JVM, размещенную на гипервизоре Xen. В то время как домашняя страница, кажется, довольно легка в деталях, об этом проекте также есть Google Tech Talk

4 голосов
/ 18 апреля 2009

Существует проект Sun Squawk , который представляет собой виртуальную машину, которая работает на аппаратном обеспечении вместо базовой ОС. Полезно для встроенных устройств, таких как Sun SPOT , где Squawk - это ОС.

Squawk распространяется по лицензии GPLv2.

3 голосов
/ 18 апреля 2009

Что тебе нужно?

Возможно, Sanos может дать вам небольшой кусок кода между оборудованием и JVM, который вы можете использовать?

http://www.jbox.dk/sanos/

1 голос
/ 25 августа 2010

Oracle, кажется, снова работает в этом направлении

Получено с приобретением Oracle BEA Systems ... Оракул реанимировал авангард технология виртуализации: Java Виртуальная машина, которая работает прямо на гипервизор, без операционной система.

см.

1 голос
/ 19 апреля 2009

JNode OS - операционная система, написанная в основном на Java.

0 голосов
/ 28 мая 2010

Я очень новичок в Java, и у меня есть некоторые знания в области электроники.

JVM - это виртуальный Macjine, который на самом деле работает в системе. Это может быть платформа windows или solares x86. Но насколько я знаю, сама JVM действует как система для байт-кода, который мы компилируем. Для байт-кода JVM виртуализирует свой собственный ALU, Heap, Stack extra. У него даже есть свой собственный язык машин и ассемблера.

Так что если мы сможем реализовать спецификацию JVM для аппаратного чипа, то это больше не будет JVM, но я стану автономной машиной Java, на которой мы сможем разработать операционную систему, полностью написанную на Java.

Таким образом, в этом случае JVM будет не ОС, а Системой, которая непосредственно понимает байт-код Java.

0 голосов
/ 18 апреля 2009

Просто небольшой фрагмент, который я видел и слышал.

MIT в 60-х / 70-х годах разработал машину Lisp, это была машина, которая по-настоящему понимала Lisp, я думаю, что они также начали коммерциализировать ее.

В 2002 году я слышал, что кто-то разрабатывает JVM на чипе FPGA или ASIC.

История MIT / Lisp правдива, я видел ее в их музее, кто-нибудь знает, есть ли какая-то правда о JVM на чипе?

спасибо, Мартин.

...