设为首页 - 加入收藏   javascript,Linux,PDF,开发者,浏览器 – 后发制人网
您的当前位置:首页 > 现在你甚至可以在PDF文件中运行Linux 当然本质上也是通过模拟器转换层实现的 – 蓝点网 正文

现在你甚至可以在PDF文件中运行Linux 当然本质上也是通过模拟器转换层实现的 – 蓝点网

来源:现在你甚至可以在PDF文件中运行Linux 当然本质上也是通过模拟器转换层实现的 – 蓝点网 编辑:现在你甚至可以在PDF文件中运行Linux 当然本质上也是通过模拟器转换层实现的 – 蓝点网 时间:2025-03-24 17:55:04

现在你甚至可以在PDF文件中运行Linux 当然本质上也是通过模拟器转换层实现的

#系统资讯 现在你甚至可以在 PDF 文件中运行 Linux:有开发者借助 Emscripten 将 TinyEMU RISC-V 模拟器编译为 asm.js 然后在 PDF 中运行。其背后的工作逻辑与此前 PDF 中运行俄罗斯方块类似,不过运行 Linux 更加复杂。查看全文:https://ourl.co/107709

早前有开发者将俄罗斯方块游戏封装到独立的 PDF 文件中,说是封装其实非常不准确,因为这个游戏实际上是通过 PDF 按照俄罗斯方块规则开发的,而非将现有的游戏封装到 PDF 文件中。

现在还有个新玩法是将 Linux 系统封装到 PDF 文件中运行,开发者 vk6_成功将 RISC-V 模拟器编译为 JavaScript,而 PDF 文件格式是支持 JavaScript 并且有自己的标准库,所以借助这个引擎来运行 Linux 系统。

现在你甚至可以在PDF文件中运行Linux 当然本质上也是通过模拟器转换层实现的

开发者 vk6_在 Reddit 论坛的帖子中表示:

你可能认为 PDF 文件仅由静态文件组成,但令人惊讶的是 PDF 文件格式支持 JavaScript 并且拥有自己独立的标准库,现代浏览器例如 Chromium 和 Firefox 将其作为 PDF 引擎的一部分进行实现。

但浏览器中可用的 API 非常有限,但能够在 PDF 内部进行任何类型的计算,只需要一些非常有限的 IO 即可。

可以使用旧版 Emscripten (该版本针对 asm.js 而非 WebAssembly) 编译 C 代码以便在 PDF 中运行,借助该功能我们可以将修改后的 TinyEMU RISC-V 模拟器编译为 asm.js,然后在 PDF 中运行。

输入方面开发者添加了虚拟键盘可以用鼠标点击,也添加了一个文本框,当你在文本框中输入内容时会被转换为屏幕上的操作,例如在输入框中按下 passwd 和回车时就可以修改密码。

而输出的内容则是每行像素的文本字段组成,其中包含构成大图的 ASCII 字符,不得不说开发者们真是将 PDF 格式玩出花儿了。

有兴趣的用户可以查看这个项目:https://github.com/ading2210/linuxpdf

示例项目:https://linux.doompdf.dev/linux.pdf

版权声明:
感谢您的阅读,除非文中已经注明来源网站,否则均为 蓝点网 原创内容,转载时请务必以超链接(而非纯文本链接)标注来源于蓝点网及本文完整链接,感谢!内容来源:蓝点网 -

相关文章

Copyright © 2025 现在你甚至可以在PDF文件中运行Linux 当然本质上也是通过模拟器转换层实现的 – 蓝点网 – 后发制人网现在你甚至可以在PDF文件中运行Linux 当然本质上也是通过模拟器转换层实现的 – 蓝点网 – 后发制人网

sitemap