ハクソク

世界を動かす技術を、日本語で。

Hackerたちの意見

これにはずっと興味があったんだけど、実際に何に使えるのかは知らなかった。誰か実用的な使い道知ってる?
もしかしたら、ソースコードがなくて、特定の条件(X、Y、Z)でしか動かない古いソフトウェアがあれば、それをウェブ上で提供し続けて、周りを構築するっていうのもアリかも?実用的かどうかは分からないけど、面白そうだね。
大学の教授がLinuxのコマンドラインを教えるために使ってたよ。教室にはWindowsのPCがあるんだけどね。
たまに奇妙なコードのコンパイルをテストするためにbellard.org/jslinuxを使ってるよ。ローカルにインストールしてるのとは違うバージョンのコンパイラが付いてるから、VMを立ち上げるよりブラウザを開く方が楽なんだ。[1] 例えば: https://www.ioccc.org/2020/yang/index.html#:~:text=tcc%200.9... https://www.ioccc.org/2018/yang/index.html#:~:text=tcc%200.9...
こういうエミュレーターのほとんどは、IPレベルでインターネットにアクセスできるんだ。だから、インターネット上で何かをテストするにはすごく安上がりな方法だよ。apk add nmap nmap your.domain.com ただし、速度はかなり制限されてるけどね。sshを使って自分のサーバーにログインすることもできるし、C/C++を教えるための完全なビルド環境を一つのウェブサイトで提供するためのとても安価な方法としても使えるよ。シェルを学ぶためにもね。何もインストールする必要がないから楽だよ。
僕は似たようなエミュレーター(v86)を使って、自分の趣味のOSを共有してるんだ。リアルハードウェアで僕の趣味のOSを起動する人は、友達でもほとんどいないけど、何人かにはqemuで動かしてもらったことがある。でも、ちょっと難しいんだよね。ブラウザ環境だと、結構うまく動くし、ネットワークも簡単にできるのがいいね。僕の趣味のOS自体はあんまり役に立たないけど、気分が乗ってるときには楽しいよ。
エージェント的なワークロードはコードを作成して実行するんだ。普通の環境、例えばコンテナや非常に保護されたVMでそのコードを実行したくないよね。他にも選択肢はあるけど、gvisorやcrossvm、firecrackerなどがあるけど、これに関しては攻撃者が少ないから珍しいんだ。
ブラウザでアプリケーションなどを起動できるウェブベースのアーカイブみたいなもの。
私たちは遊び心のある種族だよね。人は遊ぶのが好きだし、もし働かなくても食べ物に困らなかったら、ほとんどの人はそれだけを楽しむと思う。でも、私たちはとても搾取的な種族でもある。中には特にそういう人もいるしね。企業はFabrice Bellardの作品、qemuやffmpegなどを利用して何十億ドルも稼いでる。そういう会社は想像力がないし、経営陣にはビジョンもない。新しくて素晴らしいものを作ることなんてできないよ。Fabriceみたいな人がいるから、私たちはみんな豊かになってる。実用的な使い方を聞いてるなら、HNでは理解できるけど、搾取的な考え方になってるかもね。ハッカーやオタクの考え方は、これをそのまま楽しむんだよ。
残念ながら、64ビットx86エミュレーションレイヤーのソースコードや、ホストイメージをコンパイルするための設定が添付されてなかったよ。もっとオープンソースなバージョンが欲しいなら、container2wasmをチェックしてみて。x86_64、riscv64、AArch64アーキテクチャをサポートしてるよ。: https://github.com/container2wasm/container2wasm
https://github.com/copy/v86 は、もっと1:1で完全にオープンソースな代替案かもしれないね。
これを起動して、ランダムなIPからインターネットのポート25に任意の接続を開始できるってこと?うーん。
「技術ノート」ページから: > エミュレーター内でインターネットにアクセス可能です。これは、ベンジャミン・バーンズが提供するwebsocket VPNを使用しています(彼のブログを見てね)。帯域幅は40 kB/sに制限されていて、1つのパブリックIPアドレスにつき最大2つの接続が許可されています。サービスを乱用しないでください。 https://bellard.org/jslinux/tech.html
すごい人だね!
TinyEmuとJSLinuxはlinux-wasmと比べてどうなの?「Show HN: Amla Sandbox – AIエージェント用のWASM bashシェルサンドボックス」から(2026) https://news.ycombinator.com/item?id=46825119 : >>> c2wを使ってvscode-container-wasm-gcc-exampleを実行する方法、joelseverin/linux-wasmで。 >> linux-wasmはc2wよりも速いらしいよ。「Ghosttyがxterm.js API互換でWASMにコンパイルされた」から https://news.ycombinator.com/item?id=46118267 : > joelseverin/linux-wasmから: https://github.com/joelseverin/linux-wasm : >> ヒント: WasmにはMMUがないから、LinuxはNOMMU構成でビルドする必要があるよ。「https://news.ycombinator.com/item?id=46229385」から : >> pypi:SystemdUnitParserがあるよ。
オフトピックでごめんだけど、Windows 2000のインターフェースを見るのは最高だね。現代のUIはほとんどが地獄のような絶対的な悪夢だよ。
そうだね。マイクロソフトはUI面で本当にダメになったよね。
それ、JSLinuxに関係あるの?
win2000は本当にいい思い出をたくさん呼び起こすね。
なんてこった、そのインターフェースはまるで自分の家みたいだ。
僕がこの(または他のWASM Linuxエンジン)を使いたい理由は、ブラウザ内で仮想OSに対してコーディングエージェントを直接実行することなんだ。Claude CodeやCodex CLIなどは、Bashや他のLinuxツールを使いこなせるから素晴らしいよね。ブラウザは多分、今ある中で一番いいサンドボックスだと思う。WebAssembly Linuxに対してエージェントループを実行できるのは、すごくクールなトリックになるよ。数ヶ月前にv86をいじってみたけど、エージェントを接続するところまでは行かなかったんだ。これが僕の進行中のプロジェクト: https://tools.simonwillison.net/v86 - Linuxマシンにコマンドを送るためのテキスト入力があって、エージェントを接続するのに必要なものだよ。そのデモでは「cat test.lua」を実行してから「lua test.lua」を試してみて。
サイモン、このHNの投稿はGen AIについてじゃなくてもよかったんじゃない?最近はこれが本当に避けられないよね。
まさにこれに取り組んでるよ: https://browserpod.io フルスタックデモはこちら: https://vitedemo.browserpod.io/ 以前の作業についてはここで確認してね: https://webvm.io
> 私がこの(または他のWASM Linuxエンジン)を使いたいのは、ブラウザで直接仮想OSに対してコーディングエージェントを動かすことなんだ。それは存在するよ: https://github.com/container2wasm/container2wasm 残念ながら、パフォーマンスに問題があって、あまり深く調べなかったんだよね。
ジェフ・リンゼイのApptronをチェックしてみて(https://github.com/tractordev/apptron)、これにすごく近いし、単体でも素晴らしい技術だよ。
これは求めてる技術的解決策じゃないかもしれないけど、欲しい結果は得られると思うよ: https://github.com/devcontainers ざっくり言うと、devcontainersを使うと開発環境を完全にコンテナ化できるんだ。Linux上でネイティブに動かせるし、レンタルコンピュータ(GitHub Codespacesみたいなプロバイダーがある)でも動かせるし、VM上でも動かせるよ(Macでは結局そうなるけど、パフォーマンスはまだ素晴らしいらしい)。CLIの開発ツールは(Neovimみたいなものも含めて)すぐに使えるし、多くのGUI IDEもdevcontainersに対応してる(この場合、GUIは通常コンテナ化されてないか、少なくとも同じコンテナにはいない)。LinuxではFlatpakを使ってそれもできるし、例えばGitHub Codespacesではブラウザ内でVsCodeを完全に動かしてくれるから、両方の端でサンドボックス化する別の方法だよ。
HNのフロントページで、AI製品を宣伝するために話を逸らそうとする詐欺師にすぐ出会うことなく、お願いだから1つの投稿をクリックさせてくれないかな?お願い、頼んでるんだ。
彼はすごいものを作るね。
興味がある人がいたら、先月TempleOSをx86_64 JSLinuxで動かすためにちょっと改造したよ: https://ring0.holyc.xyz/
うわ、これありがとう!v86にまさに足りなかったものだね!デモよりも速く動くよ: https://zb3.me/qemu-wasm-test/jspi-noffi/ JITがないのにね。本当に魔法みたい :)
彼がカスタムターミナルエミュレーターとJavaScriptエンジンをさらっと見せるのが大好き。