Java virtual machine made in Java by HoverCatz#0060

Overview

Obzcure Virtual Machine

Java virtual machine made in Java

THIS IS NOT PRODUCTION SAFE - WORK IN PROGRESS!

  • Use at your own risk.
  • Requires Java 17 (with preview features)

java --enable-preview -jar ObzcureVM.jar
"path/to/java17" --enable-preview -jar ObzcureVM.jar -i in.jar -o out.jar -fp -rf -rm -sd
"C:\Program Files\Java\graalvm-ce-java17-21.3.0\bin\java.exe" --enable-preview -jar ObzcureVM.jar -i in.jar -o out.jar -fp -rf -rm -sd

The virtualized output jar also now requires Java 17 (with preview features)

Usage:
 -fp,--forcePublic      Make every field and method public (accessible
                        from everywhere)
 -i,--input <input>     Input jar file
 -o,--output <output>   Output jar file
 -rf,--removeFinal      Force virtualization of final fields (removes
                        final access)
 -rm,--rndMeow          Random cats.meow filename
 -sd,--skipDebug        Remove debugging information from all classes

Before

Before vm

After

After vm

Example timings:

Virtualized output file:

  • 5458 ms
  • 5011 ms
  • 4947 ms
  • 4873 ms
  • 4937 ms

Original input file:

  • 53 ms
  • 18 ms
  • 21 ms
  • 12 ms
  • 9 ms

As you can see from these 5 test runs, the virtualized version of a jar is up to 606 times slower than the original jar.
This is a worst case scenario, where a huge jar was fully virtualized including lots of nested loops.
If you only virtualize a few specific methods, it shouldn't be much slower than the original.

You might also like...

Pandora - allowing to control different agents (Windows & Linux machine) from server(s) and master

Pandora - allowing to control different agents (Windows & Linux machine) from server(s) and master

Pandora Pandora is now an open-source project allowing to control different agents (Windows & Linux machine) from server(s) and master. Features Auto-

Dec 22, 2022

A script that downloads wallpapers from the subreddit r/wallpapers and then sets them on your Windows machine.

Wallpaper Downloader πŸš€ This script takes the most voted wallpaper in the subreddit r/wallpapers in 24 hours, downloads the .json of that page, parses

May 15, 2022

React Native On-Device Machine Learning w/ Google ML Kit

React Native ML Kit React Native On-Device Machine Learning w/ Google ML Kit Supported Modules Module Android iOS Image Labeling βœ… βœ… Identify Language

Dec 29, 2022

A JAVA program made to fetch lyrics from internet

A JAVA program made to fetch lyrics from internet

Lyrics Fetcher Online A JAVA program made to fetch lyrics from internet. Screenshots Clone to your PC For Windows (I guess) git clone https://github.c

Feb 3, 2022

A simple blog post api made with spring,mysql.Following tutorial by @FadatareRamesh(Java Guides)

blogAPI A simple blog post api made with spring,mysql.Following tutorial by @FadatareRamesh(Java Guides) Frontend server(made using Angular) can be fo

Feb 2, 2022

An open source Discord Bot made in Java!

An open source Discord Bot made in Java!

ShiShi An open source Java Discord bot Report Bug . Request Feature About The Project This is a open source Java discord bot making use of the JDA lib

Aug 5, 2022

This is some Discord bot I made to help me learn Java. Not very useful yet.

JennyChan This is some Discord bot I made to help me learn Java. Not very useful yet. What it can do so far: Reply to mention List commands Show bot u

Sep 1, 2022

a mindustry v7 mod written in java. made by 12three7#5723.

Binary0011 a binary themed mod for mindustry v7. the "Java port" and complete rework of my old (hjson) mod "Binary0011". the way you can compile/imple

Sep 1, 2022

JHusky - Modern native Git hooks made easy for java environments

JHusky Modern native Git hooks made easy for java environments JHusky improves your commits and more 🐢 Jwoof! Install Include it to your project as a

Oct 31, 2022
Releases(Alpha)
Owner
HoverCatz#0060
null
Runtime code generation for the Java virtual machine.

Byte Buddy runtime code generation for the Java virtual machine Byte Buddy is a code generation and manipulation library for creating and modifying Ja

Rafael Winterhalter 5.3k Dec 27, 2022
A virtual camera based on Xposed

A virtual camera based on Xposed

null 643 Dec 31, 2022
LimboAuth - Minecraft Auth System for Velocity proxy built in virtual server (Limbo).

LimboAuth Auth System built in virtual server (Limbo). MC-Market SpigotMC.org ОписаниС ΠΈ обсуТдСниС Π½Π° русском языкС (spigotmc.ru) ОписаниС ΠΈ обсуТдСн

Elytrium 89 Jan 4, 2023
Echo client-server components to evaluate Project Loom virtual threads.

Overview Project Loom is the OpenJDK initiative to introduce user-mode threads in Java. The purpose of this repository is to compare Project Loom virt

Elliot Barlas 15 Nov 1, 2022
A fast and secure browser for standalone virtual-reality and augmented-reality headsets.

Wolvic VR Browser The goal of the Wolvic project is to create a full-featured browser exclusively for standalone AR and VR headsets. You can find us i

Igalia 465 Jan 7, 2023
Virtual model of an atom

Project Zero Virtual model of an atom. Download Demo Β· Report Bug Table of Contents About The Project Built With Getting Started Prerequisites Install

Phi Long Bui 3 Dec 23, 2022
code test from a virtual bank

account-manager provided 2 apis: /api/account/{accountNumber} for retrieving balance /api/account/transfer for transferring balance transfer balance o

Ray Chong 2 Oct 23, 2021
Vert.x virtual threads incubator

Vert.x Virtual Threads Incubator Incubator for virtual threads based prototypes. Prerequisites Vert.x 4.3.2 Java 19 using preview feature OpenJDK 19 E

Eclipse Vert.x 89 Dec 27, 2022
This program is a simple machine learning implementation in Java for detecting skin pixels.

Skin Detector ?? ?? Detects human skin from images This program is a simple machine learning implementation in Java for detecting skin pixels. How to

Tasmia Zerin 1 Jan 21, 2022
During a machine coding round of the company, I designed the Conference Room System in a given one hour.

DesignConferenceRoom DESIGN A CONFERENCE ROOM One of the core problems which people face at every company is the unavailability of conference rooms. S

Shubham Thakur 2 Dec 23, 2022