显示HN:Crazierl – 一个Erlang操作系统
Show HN: Crazierl – An Erlang Operating System

原始链接: https://crazierl.org/demo/

## Crazierl:一个冒险的 Erlang 操作系统演示 Crazierl 是一个实验性的 Erlang 操作系统,可以通过模拟器 (v86) 在浏览器中直接运行。其主要特点是可以与朋友连接到一个分布式集群,只需共享一个带有共同标签的 URL。 **但请注意重要的安全警告:** Crazierl 缺乏连接节点之间的安全性,使用未加密的通信,并依赖于第三方中继服务。**连接到未知人员存在严重风险——恶意用户可能会获得对您系统的控制权,甚至可能控制您的浏览器。** 此演示仅供受信任的连接使用,不符合加州数字年龄保证法等数据隐私法规。用户在继续之前确认了解这些风险。连接后,您可以尝试 `chat:start()` 函数。

## Crazierl:一个基于 Erlang 的操作系统 Crazierl 是一个实验性操作系统,围绕 Erlang 虚拟机 (BEAM) 构建。它作为一个业余项目开发,允许 Erlang 分布式集群直接运行在很大程度上从头编写的操作系统内核上。 虽然利用了一些 FreeBSD 库作为基础元素,但核心组件,如进程/线程创建、内存管理和时间管理,都是原始实现。它目前支持 32 位 x86 架构,并带有有限的硬件驱动程序(virtio-net 和 Realtek 8168)。 提供了一个基于浏览器的演示,利用 JavaScript x86 虚拟机,以及在实际 x86 硬件上运行的选项(尽管可能存在兼容性问题)。用户甚至可以在演示中启动一个聊天应用程序。该项目是开源的(Apache 许可证),并在 GitHub 上可用,但开发者承认存在并发错误和调试输出。
相关文章

原文
Crazierl: an Erlang Operating System

You can join your friends in a dist cluster, by sharing a url with the same hashtag, and enabling dist with the checkbox below the terminal.

Hashtag (for linking)

Please wait while the emulator starts. Javascript is required.

Warnings

  • There is no security barrier between nodes in a dist cluster; you should only use dist between nodes you control and trust
  • This demo uses gen_tcp_dist which communicates in plain text; you should only use this on a network you control and trust
  • This demo uses wss://relay.widgetry.org to provide networking service; chances are you don't control that.
  • "no one in their right mind would run the unencrypted and unauthenticated Erlang distribution unsecured over the internet." -- jhogberg, Erlang Core Team in thread
  • Maybe you got a link from not a friend, and you're connecting to a totally random person
  • If someone malicious can dist connect to your crazierl node, they can control it, and if there's a v86 vm escape, they could also control your browser window
  • Do not use credentials or enter sensitive information or PII
  • Chatting with people on the internet can be dangerous.
  • This operating system has not been modified to comply with California's Digital Age Assurance Act (2025 AB 1043), and may not be suitable for use in your jurisdiction.

Try chat:start(). after you're dist connected!

More info about crazierl. This demo shows crazierl running on an emulated x86 PC in your browser (courtesy of v86).

Thanks

  • v86: https://copy.sh/v86/ https://github.com/copy/v86
  • xterm.js: https://xtermjs.org/ https://github.com/xtermjs/xterm.js
联系我们 contact @ memedata.com