jakogut/tinyvm
FreeTinyVM is a small, fast, lightweight virtual machine written in pure ANSI C.
FreeFree tier
About jakogut/tinyvm
TinyVM is a virtual machine implementation in pure ANSI C, prioritizing a small footprint, low memory consumption, and a compact binary. It has no external dependencies other than the C standard library and can be built on UNIX-like systems using make and GCC. The project offers debug and profile build options. Suitable for educational purposes, embedded systems, and lightweight virtualization.
Key Features
Small footprint and low memory usage
Small binary size and small amount of code
No external dependencies beyond the C standard library
Written in pure ANSI C for portability
Builds on UNIX-like systems with make and GCC
Supports debug builds (DEBUG=yes) and profile builds (PROFILE=yes)
Pros & Cons
Pros
- Extremely lightweight and fast
- Minimal dependencies and easy to integrate
- Open source under MIT license
- Simple build process with make
Best For
Embedded systems and resource-constrained environmentsEducational tool for learning about virtual machines and low-level programmingLightweight sandboxing or code executionRunning bytecode or compiled programs in a minimal runtime
FAQ
What is TinyVM?
TinyVM is a small, fast, lightweight virtual machine written in pure ANSI C, designed for minimal footprint and low resource usage.
How do I build TinyVM?
Building can be done using 'make' or 'make rebuild' on UNIX-like systems with GCC. Add 'DEBUG=yes' for a debug build or 'PROFILE=yes' for profiling.
What are the dependencies?
There are no external dependencies besides the C standard library.