All Projects â†’ imkiva â†’ Kivm

imkiva / Kivm

Licence: mit
🌟This is a pure C++ implementation of Java Virtual Machine (only Java 8 is supported). Inspired by Hotspot In Action.

Programming Languages

java
68154 projects - #9 most used programming language
c
50402 projects - #5 most used programming language
cpp
1120 projects
java8
65 projects

Projects that are alternatives of or similar to Kivm

Openj9
Eclipse OpenJ9: A Java Virtual Machine for OpenJDK that's optimized for small footprint, fast start-up, and high throughput. Builds on Eclipse OMR (https://github.com/eclipse/omr) and combines with the Extensions for OpenJDK for OpenJ9 repo.
Stars: ✭ 2,802 (+1945.26%)
Mutual labels:  interpreter, jvm, virtual-machine
LLVM-JVM
[W.I.P] A Just-In-Time Java Virtual Machine written in Haskell
Stars: ✭ 22 (-83.94%)
Mutual labels:  interpreter, jvm, virtual-machine
openj9
Eclipse OpenJ9: A Java Virtual Machine for OpenJDK that's optimized for small footprint, fast start-up, and high throughput. Builds on Eclipse OMR (https://github.com/eclipse/omr) and combines with the Extensions for OpenJDK for OpenJ9 repo.
Stars: ✭ 2,973 (+2070.07%)
Mutual labels:  interpreter, jvm, virtual-machine
Ph7
An Embedded Implementation of PHP (C Library)
Stars: ✭ 422 (+208.03%)
Mutual labels:  interpreter, virtual-machine
V8
The official mirror of the V8 Git repository
Stars: ✭ 18,808 (+13628.47%)
Mutual labels:  interpreter, virtual-machine
Wasm3
🚀 The fastest WebAssembly interpreter, and the most universal runtime
Stars: ✭ 4,375 (+3093.43%)
Mutual labels:  interpreter, virtual-machine
3bc-lang
Low level language, tiny virtual machine that works on computers and microcontrollers. (Friendly Punched cards)
Stars: ✭ 155 (+13.14%)
Mutual labels:  interpreter, virtual-machine
Mini Jvm
使用 JDK8 实现 JVM(Java Virtual Machine)
Stars: ✭ 568 (+314.6%)
Mutual labels:  interpreter, jvm
Neko
The Neko Virtual Machine
Stars: ✭ 447 (+226.28%)
Mutual labels:  interpreter, virtual-machine
Esta
Interpreted language and bytecode VM of my own design written in Rust [Unmaintained]
Stars: ✭ 28 (-79.56%)
Mutual labels:  interpreter, virtual-machine
Tagha
Minimal, low-level, fast, and self-contained register-based bytecode virtual machine/runtime environment.
Stars: ✭ 79 (-42.34%)
Mutual labels:  interpreter, virtual-machine
Umka Lang
Umka: a statically typed embeddable scripting language
Stars: ✭ 308 (+124.82%)
Mutual labels:  interpreter, virtual-machine
Jikesrvm
Jikes RVM (Research Virtual Machine)
Stars: ✭ 281 (+105.11%)
Mutual labels:  jvm, virtual-machine
Gravity
Gravity Programming Language
Stars: ✭ 3,968 (+2796.35%)
Mutual labels:  interpreter, virtual-machine
RISVM
A low overhead, embeddable bytecode virtual machine in C++
Stars: ✭ 21 (-84.67%)
Mutual labels:  interpreter, virtual-machine
Hashlink
A virtual machine for Haxe
Stars: ✭ 523 (+281.75%)
Mutual labels:  interpreter, virtual-machine
Cymbal
Yet another Rust implementation of the Monkey language from "Writing an Interpreter in Go" and "Writing a Compiler in Go"
Stars: ✭ 49 (-64.23%)
Mutual labels:  interpreter, virtual-machine
Libforth
libforth: A small Forth interpreter that can be used as a library written in c99
Stars: ✭ 107 (-21.9%)
Mutual labels:  interpreter, virtual-machine
Simple
The Simple Intelligent and Modular Programming Language and Environment
Stars: ✭ 120 (-12.41%)
Mutual labels:  interpreter, virtual-machine
Corium
Corium is a modern scripting language which combines simple, safe and efficient programming.
Stars: ✭ 18 (-86.86%)
Mutual labels:  interpreter, virtual-machine

KiVM

Build Status GitHub top language license

Kiva's Java Virtual Machine.

Features

  • JNI Support
  • JAR Class Loading Support (libzip needed)
  • Full OracleJDK/OpenJDK compatibility
  • Copying Garbage Collector

Build

  1. Requirements

    • Linux, macOS, or Windows(untested) .
    • JDK (OpenJDK or OracleJDK) (>= 8)
    • CMake (>= 3.2)
    • libzip (>= 1.5.1) (to support JAR Class Loading)
  2. Build instructions

    • Clone this repo.
    • cd into your directory that contains KiVM source code.
    • Type cmake . && make in your terminal app.
    • Enjoy it!

Usage

Usage:
        java [-?] [-v] [-cp <path>] [-classpath <path>] <class-name> [<args>]...

Options:
        -?, -help           show help
        -v, -version        show version
        -cp <path>          class search path
        -classpath <path>   same as -cp
        <class-name>        name of the class to run

Credit

Acknowledge

We would like to thank JetBrains for sharing free open-source licences of amazing tools such as CLion.

See Also

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].