【行业资讯】Blink 1.0 正式发布,最小 x86 Linux 模拟器

Blink 1.0 已正式发布。
Blink 是无特权用户空间虚拟机,支持在任何 POSIX 平台上模拟 x86-64-linux 二进制文件,声称是最小的 x86 Linux 模拟器。
总的来说,它是一个 220kb 的无依赖静态二进制文件,实现了大约 600 条 x86 指令和 180 条 Linux 系统调用。因此 Blink 在运行简单的命令行程序方面相当出色。
图片
Blink 包含一个简洁的 JIT,在某些情况下,对于像临时程序 (ephemeral programs) 这样的用例,它比 Qemu 快 2 倍。原因在于 Blink 的基线 JIT,它使用 printf 风格的 DSL 快速生成代码。这意味着 Blink 拥有一个易于使用的代码库(只有 63,500 行 ANSI C11 代码)。
图片
虽然 Blink 是命令行工具,但它也有一个 TUI 界面(称为 ),支持实时调试和可视化程序。
下面是一个运行裸机 Game of Life 演示的示例,该演示程序采用 Rust 编写,它以 i8086 模式从 BIOS 启动,引导至长模式,然后绘制到 Blinkenlight 基于文本的 CGA 显示器。
图片
Blink 最适合用于命令行程序,当然它也支持模拟 GUI 应用程序。下图是 Blink 在 Debian Linux 上运行 Emacs GUI 的屏幕截图:
图片