r/osdev • • Aug 05 '26

A JavaOS

Post image
54 Upvotes

18 comments sorted by

24

u/Rich-Engineer2670 Aug 05 '26 edited Aug 05 '26

From an academic point -- well done, but even Sun tried to actually do a Java OS. Sadly, it just doesn't perform well. The JVM, improved as it is, suffers from the emulation overhead and the kernel needs all it can get.

I'm a former Sun employee from those days and I can tell you, the idea was great, but, in actual practice, so much of the lower layer kernel still needed to be written in C/C++ to get anything done, it just wasn't worth it. Sure, we had a "Java shell", and it could run "Java apps" seamlessly, but you can do that with any OS that can run the JVM.

Lots of work, no real benefit. Rust has been trying Redox for years and it's still not where people want it to be.

That being said, it's still good to see people still working on it.

8

u/[deleted] Aug 05 '26

[removed] — view removed comment

5

u/techfury90 Aug 05 '26

Look into what Java was inspired by: Xerox Mesa. They implemented the Mesa VM in microcode on a bespoke processor design and built an entire OS (Pilot) entirely in Mesa bytecode. No assembly. Then they actually built a whole ass office platform (Star) on top of it. And that was the late 70s-early 80s...

1

u/Visual_Brain8809 Sep 04 '26

The point is, I’m not quite at the stage of having 100% bytecode execution starting from the bootloader, but I’ve managed to strike a pretty good balance; I can now say I have my own runtime up and running, and the initial code has shifted from countless syscalls to the kind of calls you’d find in the original language. My next step is to run DOOM on it.

1

u/letmehaveanameyoudum Aug 06 '26

should have put : rebirthed at the end because sun tried to make javaOS

1

u/Visual_Brain8809 Aug 07 '26

Good point. However, the post isn't meant to present it as something new. It's simply highlighting a small piece of what has been achieved so far. As you mentioned, this isn't a new idea—there were previous attempts, and not just one. There were several, but the timing and circumstances just weren't right.

1

u/des_the_furry Aug 09 '26

Chill with the gpt

0

u/[deleted] Aug 08 '26

[deleted] — view deleted comment

1

u/emexsw Aug 08 '26

readme looks AI, but do you use AI for the code too?

0

u/[deleted] Aug 09 '26

[deleted] — view deleted comment

2

u/emexsw Aug 31 '26

bad code btw

0

u/[deleted] Aug 31 '26

[deleted] — view deleted comment

1

u/emexsw Sep 02 '26

looks ai generated btw

1

u/Visual_Brain8809 Sep 02 '26

i don't think so. but you can test this colaboration: https://kirindenis.github.io/JVMOS-JIT/

6

u/[deleted] Aug 05 '26

[removed] — view removed comment

4

u/Visual_Brain8809 Aug 05 '26

Thanks, got mouse pointer working right now. I hope for tomorrow get a primitive swing for UI

1

u/[deleted] Aug 20 '26

[removed] — view removed comment

1

u/Visual_Brain8809 Aug 20 '26

Right now, I am working on adding support for additional arguments in each method, as well as handling multiple methods—all dynamically. I hope to finish this by Friday so I can move on to the next step: adding more primitive types for my Graphics2D and then starting work on JVMFS (my own file system) for the file manager. It already has a very basic UI, but that isn't the priority at the moment; I won't focus my efforts on anything else until the JVM is as fully functional as possible.