Java VMs that do not require an operating system?
Asked Answered
G

9

19

I know that BEA was working on LiquidVM which didn't require an underlying operating system, but would like to know if anyone in the open source community is working on something similar.

Ideally I would like to find an implementation where the VM is directly loaded by the OS boot loader.

Gala answered 18/4, 2009 at 13:24 Comment(4)
what kind of system were you intending to write apps for?Wickedness
Haha, nice question. I love hearing about projects like these.As a small aside, I remember reading about an open source project that got CPython(The standard python implementation) to run on bare-metal and were working on building an OS in python :) Sadly I've lost the link since.Rede
Remember this? en.wikipedia.org/wiki/JavaOSHammerlock
As of 2023 have a look at the native code generation of graalvmVet
H
4

What is it you need?

Perhaps Sanos can give you a small chunk of code between the hardware and the JVM which you can use?

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

Hammertoe answered 18/4, 2009 at 19:4 Comment(4)
Does Sanos support JDK 1.6 and/or 64-bit?Gala
Not as far as I know. Latest is 1.4. It is Open Source so if you need it, feel free to join.Vet
So will SANOS die because it hasn't generated enough community interest?Gala
No idea. Ask the project developer :)Vet
R
15

Unlike SANOS, the JNode operating system is a full operating system with many supported devices, file systems, a network stack, a GUI stack, a command shell and 50 or so commands, and much more. JNode currently runs on x86 (32 bit) with one processor enabled, but x86-64 and multi-processor versions are in development. (JNode is 99.99% Java. Porting to a new architecture would entail rewriting the 0.01% of code that is in assembler, creating / modifying hardware specific drivers ... and writing a native code compiler for the new architecture.)

We currently have ~7 active developers, but we are always looking for new people to join the team, especially people who understand Java AND code generation, garbage collectors, drivers and so on.

(And for what it is worth, we use a recent version of the OpenJDK class libraries: 1.6u24 at the last count.)

Resa answered 17/7, 2009 at 7:48 Comment(1)
Link appears to be broken. Found this: jnode.ro/node/936Vet
M
4

There is the Sun project Squawk which a VM that runs on hardware instead of an underlying OS. Useful for embedded devices like the Sun SPOT where Squawk is the OS.

Squawk is licenced under GPLv2.

Macrae answered 18/4, 2009 at 14:5 Comment(1)
Do note that Squawk is pretty much dead, and isn't particularly recent (I think it's still at 1.3), so I wouldn't recommend it for any new developments.Forbade
H
4

What is it you need?

Perhaps Sanos can give you a small chunk of code between the hardware and the JVM which you can use?

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

Hammertoe answered 18/4, 2009 at 19:4 Comment(4)
Does Sanos support JDK 1.6 and/or 64-bit?Gala
Not as far as I know. Latest is 1.4. It is Open Source so if you need it, feel free to join.Vet
So will SANOS die because it hasn't generated enough community interest?Gala
No idea. Ask the project developer :)Vet
S
4

There's also Project Guest VM, which is a JVM hosted on Xen hypervisor. While the home page seems to be rather light on details, there's a Google Tech Talk about this project as well.

Serle answered 18/4, 2009 at 19:8 Comment(1)
It's indeed a very interesting and promising project. You should edit your answer and add also a reference to maxine: maxine.dev.java.netAndrej
A
2

JNode OS is an operating system written mostly in Java.

Ammoniac answered 19/4, 2009 at 3:27 Comment(1)
Any thoughts on how JNODE compares to SANOS?Gala
C
2

Oracle seems to work again in that direction

Gained with Oracle's acquisition of BEA Systems ... Oracle has resuscitated avant-garde virtualization technology: a Java Virtual Machine that runs directly on the hypervisor, without an operating system.

see

Claqueur answered 25/8, 2010 at 14:6 Comment(0)
O
1

JOE, Java On Everything, can run Java without an OS. It is all Java and at https://github.com/joekoolade/JOE

JOE can run a Java program without an operating system by building the operating system into the program. This makes the program easier to configure and deploy. JOE can make any Java programmer an embedded developer.

JOE is a process virtual machine that can run a Java application without an operating system. It builds the OS into the program by virtualizing the OS and hardware. This removes the boundaries between the OS, hardware, user code, and virtual machine. The overhead and complexities in the user/supervisor crossing, program security, memory protection, virtual addressing, and the JNI library interface are replaced with simpler and more efficient mechanisms found in the Java language. JOE seamlessly blends those layers together by implementing them all in Java. This virtualized Java environment provides a secure, safe, cohesive, and consistent object oriented operation from application to hardware.

Overall answered 8/10, 2020 at 0:30 Comment(0)
A
0

I am very new to java and and i have some knowledge of electronics.

JVM is a virtual macjine which actually run over a system. It may be windows or solares x86 platform. But as far as i know JVM itself act as a system for the Bytecode that we compile. For a byte code JVM virtualise its own ALU, Heap, Stack extra. It even have its own machine and assmbly language.

So some how if we able to realize a JVM specification on a Hardware chip then it will not be JVM anymore but i will become standalone Java Machine over which we can develop a operating system 100% written in java.

So in this case JVM will not be an OS but a System which directly understand java bytecode.

Albertinaalbertine answered 18/4, 2009 at 13:24 Comment(0)
P
0

Just a small snippet I seen and heard.

MIT in the 60's/70's developed a Lisp machine, this was a machine that intrinsically understood Lisp, I think that they went onto commercialize it also.

I had heard in about 2002 that someone was doing to develop a JVM on a chip a FPGA or ASIC.

The MIT/Lisp story is true, I seen it in their museum, does anyone know if there is any truth about the JVM on a chip?

thanks, Martin.

Panjandrum answered 18/4, 2009 at 19:21 Comment(2)
Some ARM CPUs have arm.com/products/multimedia/java/jazelle.html - although I don't know if it's a full-featured JVM or not (my gut feeling says probably not)Serle
Jazelle is not a fully-featured JVM, it's just support that allows the CPU to execute some byte-code instructions and thus make it easier to write a performant JVM.Whitewash

© 2022 - 2024 — McMap. All rights reserved.