BM - a basic virtual machine written in rust

Related tags

Virtualization bm
Overview

BM

This is a basic virtual machine written in rust. This project was done by taking guidance from this playlist.

Quick Start

$ make examples
$ ./target/debug/bme ./examples/fib.bm

Components

basm

Assembly language for the virtual machine. For examples see ./examples/ folder.

bme

BM emulator. Takes in a .bm files generated by basm and runs it.

dibasm

Disassembler for the .bm files genereated by basm.

Primary Motivation

  • Learning Rust and understanding how to build actual stuff with it.
  • Learning how to implement abstract idea in solid code.
  • Getting comfortable with the concept of virtual machines.
  • Comparing how development in C contrasts with it in rust.
You might also like...
SVM - Spacemesh Virtual Machine

SVM - Spacemesh Virtual Machine Project Goals Self-contained. Should be hosted by the Spacemesh Golang full-node and future Spacemesh Rust full-node B

Virtual Machine Language - Yet another stack-based programming language
Virtual Machine Language - Yet another stack-based programming language

Virtual Machine Language - Yet another stack-based programming language

StarWM is an extensible window manager written in Rust.
StarWM is an extensible window manager written in Rust.

StarWM is an extensible, floating and tiling, X window manager for Linux-based operating systems written in Rust.

Aftermath - a high-performance JVM for the TapVM framework written in the Rust

Aftermath Welcome to the source, my friend! Note - This README is targetted towards users, not contributors. Please read the docs present at docs/for

RailCar: Rust implementation of the Open Containers Initiative oci-runtime
RailCar: Rust implementation of the Open Containers Initiative oci-runtime

railcar - rust implementation of the oci-runtime spec What is railcar? railcar is a rust implementation of the opencontainers initiative's runtime spe

Advanced Rust quantum computer simulator

quantum Advanced Rust quantum computer simulator. Motivation Quantum is a quantum computer simulator written with the following design goals in mind:

Rust bindings for the unicorn CPU emulator

unicorn-rs THIS PACKAGE IS DEPRECATED AND NO LONGER MAINTAINED. Rust bindings are now included with unicorn and will be maintained there from now on.

Rust API to the OS X Hypervisor framework for hardware-accelerated virtualization

hypervisor-rs hypervisor is a Rust library that taps into functionality that enables hardware-accelerated execution of virtual machines on OS X. It bi

A toy Cairo VM implementation in Rust

oriac A toy Cairo VM implementation in Rust This is a toy implementation of the Cairo VM I'm building for learning purposes. There's no guarantee on w

Owner
KaviiSuri
KaviiSuri
An LC-3 virtual machine written in Rust for learning purposes.

LC-3 written in Rust An LC-3 virtual machine written in Rust for learning purposes.

Rodrigo Araújo 30 Dec 11, 2022
LC3 Virtual Machine written in Rust 🦀

LC3 - Emulator LC3-rust is a virtual machine for the Little Computer 3 architecture, written using the Rust programming language. The VM has been writ

Gabriele Pappalardo 2 Oct 25, 2022
little computer 3 (lc3) virtual machine written in Rust

Little Computer 3 (LC3) Virtual Machine (by @lowlevelers) What is Little Computer 3? Little Computer 3, or LC-3, is a type of computer educational pro

LowLevelers 3 Oct 25, 2023
Dragonball-sandbox is a collection of Rust crates to help build custom Virtual Machine Monitors and hypervisors

Dragonball-sandbox is a collection of Rust crates to help build custom Virtual Machine Monitors and hypervisors. The crates here are considered to be the downstream of rust-vmm.

OpenAnolis Community 62 Dec 30, 2022
A Rust implementation of the Lox programming language. Based on clox, the bytecode virtual machine.

A Rust implementation of the Lox programming language. Based on clox, the bytecode virtual machine.

Diego Freijo 23 Dec 26, 2022
vore is a virtual machine management tool focused on VFIO set ups.

vore is a virtual machine management tool focused on VFIO set ups. with a minimal TOML file you should be able to get you should be able to create a VFIO-focused VM.

eater 8 Mar 20, 2022
Ethereum Virtual Machine implementation

Fast EVM implementation with full async support. Port of evmone to Rust.

Artem Vorotnikov 147 Dec 9, 2022
crosvm is a virtual machine monitor (VMM) based on Linux’s KVM hypervisor

crosvm - The Chrome OS Virtual Machine Monitor crosvm is a virtual machine monitor (VMM) based on Linux’s KVM hypervisor, with a focus on simplicity,

Google 454 Dec 31, 2022
🍄 A disassembler for the UEFI Bytecode Virtual Machine.

?? A disassembler for the UEFI Bytecode Virtual Machine.

Samuel Wilder 51 Dec 6, 2022
STARK-based virtual machine

Polygon Miden A STARK-based virtual machine. WARNING: This project is in an alpha stage. It has not been audited and may contain bugs and security fla

Polygon (previously Matic) 415 Dec 28, 2022