浏览器中的 x86 虚拟化(迅速将 x86 重新编译为 wasm)

Tony 197.3m2021-06-141137 次点击1 人感谢
https://github.com/copy/v86

https://copy.sh/v86/

v86 模拟 x86 兼容的 CPU 和硬件。机器码被翻译成运行时的 WebAssembly 模块以实现不错的性能。这是一个仿真硬件列表:

- 兼容 x86 的 CPU。指令集大约是 Pentium III 级别,
包括完整的 SSE2 支持。缺少某些功能,特别是:
- 任务门,保护模式下的远程调用
- 一些 16 位保护模式功能
- 单步执行(陷阱标志、调试寄存器)
- 一些例外,尤其是浮点数和 SSE
- 多核
- PAE
- 64 位扩展
- 浮点单元 (FPU)。使用 Berkeley 进行计算
SoftFloat 库,因此应该是精确的(但很慢)。三角函数
和日志函数是使用 64 位浮点数模拟的,可能不太精确。
并非所有 FPU 异常都受支持。
- 软盘控制器 (8272A)。
- 一个 8042 键盘控制器,PS2。有鼠标支持。
- 一个 8254 可编程间隔定时器 (PIT)。
- 8259 可编程中断控制器 (PIC)。
- 部分 APIC 支持。
- CMOS 实时时钟 (RTC)。
- 具有 SVGA 支持和 Bochs VBE 扩展的通用 VGA 卡。
- PCI 总线。这个部分不完整,并不是每个设备都使用。
- IDE 磁盘控制器。
- NE2000 (8390) PCI 网卡。
- virtio 文件系统。
- SoundBlaster 16 声卡。

Demos
-

[Arch Linux](https://copy.sh/v86/?profile=archlinux)
[Damn Small Linux](https://copy.sh/v86/?profile=dsl)
[Buildroot Linux](https://copy.sh/v86/?profile=buildroot)
[ReactOS](https://copy.sh/v86/?profile=reactos)
[Windows 2000](https://copy.sh/v86/?profile=windows2000)
[Windows 98](https://copy.sh/v86/?profile=windows98)
[Windows 95](https://copy.sh/v86/?profile=windows95)
[Windows 1.01](https://copy.sh/v86/?profile=windows1)
[MS-DOS](https://copy.sh/v86/?profile=msdos)
[FreeDOS](https://copy.sh/v86/?profile=freedos)
[FreeBSD](https://copy.sh/v86/?profile=freebsd)
[OpenBSD](https://copy.sh/v86/?profile=openbsd)
[9front](https://copy.sh/v86/?profile=9front)
[Haiku](https://copy.sh/v86/?profile=haiku)
[Oberon](https://copy.sh/v86/?profile=oberon)
[KolibriOS](https://copy.sh/v86/?profile=kolibrios)
[QNX](https://copy.sh/v86/?profile=qnx)
****
实际体验速度很快(相比JSLinux),Linux 启动仅需十几秒。支持联网,支持上传自定义镜像,功能强大。
收藏 ♥ 感谢
暂无回复

登录注册 后可回复。