Virtual machine that runs x86-64 Linux binaries on different operating systems and architectures
Blink is a virtual machine that executes x86-64 Linux programs on different operating systems and hardware architectures. It provides the same functionality as qemu-x86_64 but with significant advantages: Blink is only 221kb in size (compared to qemu's 4mb), runs Linux binaries on any POSIX system (not just Linux), and achieves 2x faster performance on benchmarks involving SSE integer and floating point math.
The project includes two main programs: blink for headless execution and blinkenlights for interactive debugging. The blinkenlights TUI debugger visualizes program execution using Unicode IBM Code Page 437 characters to display binary memory panels that update as you step through assembly code. It supports reverse debugging through scroll wheel interaction and provides breakpoint and watchpoint functionality.
Blink targets developers who need to run Linux binaries across different platforms or debug x86-64 programs with visual feedback. It supports multiple architectures (x86, ARM, RISC-V, MIPS, PowerPC, s390x) and operating systems (Linux, macOS, FreeBSD, OpenBSD, Cygwin). The tool passes extensive test suites including 194 from Cosmopolitan Libc, 350 from Linux Test Project, and 108 from Musl Libc's unit tests.
# via Source
./configure && make -j4 && doas make install
