Yukiosは、ブラウザで実行される完全なマルチスレッドオペレーティングシステムを作成する試みです。これは、JavaScriptカーネルの読み込みと実行のWebAssemblyバイナリ、Cのカーネル関数(インポート)を公開する標準ライブラリ、およびいくつかの興味深いプログラムで構成されているため、使用可能です。
なぜだめですか?ゲイリー・ベルンハルトはかつて2014年にそれが未来だと言ったので、そうだと言った。
日本語の雪です。かわいいと思います。
Chromeはバージョン67から作業する必要があります。SharedArrayBuffer SharedArrayBufferような多くの実験機能を使用しているので、ここにドラゴンがあります...
カーネルは、端子(ほとんどがVT100互換性があり、後でGUIになる可能性がある)とGUI、DOM、ファイルシステム、およびスレッドとインターフェイスする機能の束を初期化し、新しいスレッドを起動します。スレッドは、メインスレッド上の関数とインターフェイスをインターフェースしてインターフェースできる機能を定義します。だからそれはかなりです:
ブラウザ/dom <=> kernel <=> webworkers <=> WebAssemblyプログラム
矢印は、彼らが互いに話し合うインターフェイスです。
WebAssemblyを有効にした作業LLVM/Clangコンパイラのみが必要です。 V7では実験的でしたが、リリース後にStableに移動し、バージョン8にあるはずです。例については、MakeFileを確認してください。
それはかなり軽量でなければならないので、今のところemscriptenなどはありません。バイナリは、必要な機能をインポートし(c、標準ライブラリを介して)、その主な関数をエクスポートする必要があります。