Skip to content

A virtual machine toolchain, including bytecode assembler and disassembler.

License

Notifications You must be signed in to change notification settings

nic-obert/rusty-vm

Repository files navigation

Rusty Virtual Machine

A simple virtual machine and related tools, all written in Rust.
I created this project to learn more about virtual machines, compilers, assembly languages, and all things low level.

This is just an amateur project and should not be used in a production environment. There are a few known vulnerabilities, plus it's not very efficient compared to production-grade virtual machines.

Project structure

  • The vm directory contains the code for the virtual machine.
  • The assembler directory contains the code for the assembler.
    • assembler/lib contains shared assembly libraries to include in the assembly source code.
  • The disassembler directory contains the code for the disassembler. (currently outdated)
  • The rust_vm_lib directory contains the code for the shared library used across all Rust tools.
  • The oxide directory contains an AOT compiler that compiles a custom language to the VM's bytecode.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

A virtual machine toolchain, including bytecode assembler and disassembler.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published