资源推荐:web js linux windows vm 虚拟机

web js vm list

https://bellard.org/jslinux/index.html
可以在在浏览器中运行 X Window 或 Windows 2000、linux
以下为示例:
资源推荐:web js linux windows vm 虚拟机_第1张图片
资源推荐:web js linux windows vm 虚拟机_第2张图片

JSLinux - News

从2018-08-18开发更新到2021-01-09
… https://bellard.org/jslinux/news.html

faq 常见问题解答

https://bellard.org/jslinux/faq.html

如何上传文件到虚拟机?

点击终端下方的上箭头。文件将被复制到您的主目录。
注意:文件上传仅在Linux虚拟机中有效。

如何从虚拟机导出文件?

使用 export_file filename shell 命令。
注意:文件导出仅在Linux虚拟机中有效。

如何复制和粘贴数据到 Web 终端?

要复制数据,只需用鼠标选择它,然后使用“复制”上下文菜单(右键单击)。要粘贴数据,请右键单击终端光标以显示上下文菜单,然后选择“粘贴”。或者,您可以在导航器全局菜单中使用“粘贴”命令。
注意:不支持文件的复制/粘贴。复制/粘贴仅在控制台 Linux 虚拟机中支持。

如何在移动设备上使用 Web 终端?

触摸终端窗口以显示虚拟键盘。为了使用控制键,您可能需要安装特定的虚拟键盘(如 Android 上的 Hacker’s Keyboard)。

我能从虚拟机访问网络吗?

是的,这是可能的。它使用由 Benjamin Burns 提供的 websocket VPN(请参见他的博客)。带宽被限制为 40 kB/s,并且每个公共 IP 地址最多允许两个连接。请不要滥用该服务。

我能用 TinyEMU 运行虚拟机吗?

是的。使用虚拟机列表中提供的 VM Config URL。然后将其用作独立模拟器的配置文件,例如:

temu https://bellard.org/jslinux/buildroot-x86-xwin.cfg
temu https://bellard.org/jslinux/buildroot-riscv64-xwin.cfg
我能更改 Web 虚拟机的内存量吗?我能更改终端的大小吗?

是的,有许多可以通过向 URL 添加参数来选择的选项。例如:

https://bellard.org/jslinux/vm.html?cpu=x86&url=buildroot-x86.cfg&mem=128&cmdline=TEST%3d1
  • url 设置虚拟机文件系统的 URL
  • mem 设置内存大小(以 MB 为单位)
  • cpu 选择 CPU 类型:x86、riscv64 或 riscv32(默认 = x86)
  • cols 终端的列数(默认 = 80)
  • rows 终端的行数(默认 = 30)
  • font_size 字体大小(以像素为单位,默认 = 15)
  • graphic 0=终端 GUI,1=帧缓冲 GUI(默认 = 0)
  • w 帧缓冲的宽度(仅在 graphic=1 时有意义)
  • h 帧缓冲的高度(仅在 graphic=1 时有意义)
  • cmdline 添加到内核命令行的参数(如果内核不使用它们,则可以将它们作为环境变量获取)。使用 URL 转义 %3d 代表 “=” 字符。VM init 脚本可识别以下变量:
    • KBMAP 设置 X 窗口或 Linux 帧缓冲控制台的默认键盘映射(例如 fr、us、de 等)。
    • net_url 设置 websocket VPN 的 URL。如果该选项不存在,则设置默认 VPN URL。
如何在 X11 GUI 中设置键盘映射?

使用鼠标右键单击可用的菜单。如果您的国家未列出,可以尝试键入以下命令:setxkbmap -layout x,其中 x 是您的键盘映射的国家代码。
如果您的键盘仍然无法正常工作,则表示您的浏览器未返回用于模拟 PC 键盘所需的 PC 硬件键码。您仍然可以使用虚拟键盘(在右键菜单中可用)。

如何在 Windows 2000 演示中设置键盘映射?

右键单击位于时钟旁边的 EN 图标(屏幕右下角),选择属性,添加所需的键盘并选择它。
如果您的键盘仍然无法正常工作,则表示您的浏览器未返回用于模拟 PC

键盘所需的 PC 硬件键码。

或者,您可以使用屏幕键盘(其图标位于桌面上)。

为什么在 Firefox 中 [Alt] 键的工作方式不如预期?

在较旧的 Firefox 版本中,[Alt] 键总是被浏览器拦截以显示菜单。升级到更高版本的 Firefox 版本以解决此问题。

JSLinux - Technical Notes 技术说明

https://bellard.org/jslinux/tech.html

历史

该模拟器有着悠久的历史。当前版本基于 TinyEMU,并使用 emscripten 编译成 Javascript 或 WASM。
在2011年,我编写了JSLinux的初始版本,这是第一个在Javascript中运行Linux的PC/x86模拟器。我重用了我的另一个模拟器(QEMU)的x86助手和设备部分。

一段时间后(2015年),我对其进行了修改,以使用 asm.js Javascript 子集,以便在支持该子集的浏览器中运行得更快。

2016年,在编写了TinyEMU(最初是RISC-V模拟器)之后,我决定通过使用emscripten从其C代码创建Javascript版本。我添加了一个受Sebastian Macke的jor1k启发的VirtIO 9P文件系统,以便更容易地使用远程文件系统并导入/导出文件。

然后,我发现可以为x86 JS模拟器重用VirtIO设备,因此我将JSLinux asm.js代码转换为C,再用emscripten将其转换回Javascript!通过仔细调整,新版本现在比手工编码的asm.js版本更快。

下一步是运行与Linux不同的操作系统,例如Windows NT。该模拟器的首个版本通过在模拟的Linux系统内部运行QEMU,运行了带有Windows NT的。它仍然可用,因为x86模拟器支持QEMU使用的x86虚拟化扩展(AMD SVM)。

JSLinux的当前版本通过模拟少量缺失的PC设备(PS/2键盘和鼠标、IDE磁盘、虚拟VGA)来运行Windows NT。

x86 CPU 模拟

模拟具有以下功能的x86 CPU:

  • 五代Pentium CPU
  • 具有精确的80位浮点数的x87
  • PAE支持
  • CMOV指令
  • MMX和SSE2支持
  • AMD虚拟机扩展(SVM)具有嵌套页表支持
  • RDPMC支持读取指令计数
    已知限制:
  • 访问内存时没有段限制和权限检查
  • 没有调试支持(DRx寄存器)
模拟设备
  • 8259可编程中断控制器
  • 8254可编程中断定时器
  • 16450 UART(仅用于调试)
  • 实时时钟
  • PCI总线
  • VirtIO控制台
  • VirtIO 9P文件系统
  • VirtIO网络
  • VirtIO块设备
  • VirtIO输入
  • 简单帧缓冲区
  • IDE控制器(可选)
  • PS/2键盘和鼠标(可选)
  • 虚拟VGA显示(可选)
RISC-V CPU 模拟

模拟了具有64位FPU和压缩指令的32位或64位RISC-V CPU。
目前仅提供RISC-V 64位Buildroot和Fedora发行版。 RISC-V 32位镜像仍可用,但不再积极维护:

  • 具有控制台的buildroot-riscv32。
  • 具有X Window的buildroot-riscv32。
性能

在一台典型的桌面PC上(2017年)使用Firefox浏览器,x86模拟器运行约100 MIPS。可以使用集成的vmtime实用程序进行详细的基准测试。

Javascript 终端

这是原始 JSLinux 终端的改进版本。它具有滚动条并支持URL高亮显示。

Linux 发行版

它使用Alpine Linux和Buildroot发行版。为 vfsync、qemacs 和 tcc 添加了自定义软件包。可选的X Window支持可与Fluxbox窗口管理器一起使用。

网络

在模拟器内可以访问互联网。它使用由Benjamin Burns提供的 websocket VPN(请参见他的博客)。带宽被限制为40 kB/s,并且每个公共IP地址最多允许两个连接。请不要滥用该服务。

有什么用途?

我纯粹是为了好玩,只是因为Javascript引擎足够快,可以完成复杂的任务。真正的用途可能包括:

  • 对Javascript引擎进行基准测试(您的Javascript引擎启动Linux需要多长时间?)

以及使用新的浏览器技术(asm.js、WASM)。

  • 在不离开浏览器的情况下学习使用命令行Unix工具。
  • 在浏览器中进行安全文件访问(vfsync)。
  • 运行旧的PC软件。
源代码

RISC-V版本的源代码在 TinyEMU 项目中可用。还提供了一个易于安装的预编译演示版本。

类似项目

还有其他几个PC或Linux模拟器可用,特别是:

  • jor1k: OpenRISC OR1K CPU 模拟器。
  • v86: PC 模拟器。
  • angel: RISC-V CPU 模拟器。

https://bellard.org/

这个父网站也是个神奇的资源网站。
Fabrice Bellard 是一位法国计算机科学家和程序员,以其在计算机领域的卓越贡献而闻名。
这个网站似乎是他个人做的产品。

你可能感兴趣的:(html,前端,javascript,linux)