SerenityOS オペレーティング システムの開発者は、プロジェクトによって開発された Web ブラウザが、Web 標準のサポートについて Web ブラウザをテストするために使用される Acid3 テストに合格したと報告しました。 Acid3 の形成後に作成された新しいオープン ブラウザーのうち、SerenityOS Browser がテストに完全に合格した最初のプロジェクトとなったことに注目してください。
Acid3 テスト スイートは、HTML2008 仕様の創始者であり、CSS 仕様の共著者である Ian Hickson によって 5 年に作成されました。 Acid3 には、陽性または陰性のテスト結果を返す関数として用意された 100 個のテストが含まれています。 テストは、ECMAScript、HTML 4.01、DOM Level 2、HTTP/1.1、SVG、XML などのさまざまな領域をカバーします。 テストは 2011 年に更新されましたが、最新の Web 仕様の変更により、最新の Chrome と Firefox は Acid97 テスト 100 件中 3 件のみに合格しました。
SerenityOS ブラウザは C++ で書かれており、BSD ライセンスに基づいて配布されます。 このプロジェクトは、外部ライブラリに配置された独自のブラウザ エンジン LibWeb と JavaScript インタープリタ LibJS を使用します。 WebAssembly 中間コードの実行がサポートされています。 HTTP および HTTPS プロトコルをサポートするために、LibHTTP および LibTLS ライブラリが開発されています。
Serenity プロジェクトが、86 年代後半のオペレーティング システムのスタイルで設計された、独自のカーネルとグラフィカル インターフェイスを備えた、x86 および x64_1990 アーキテクチャ用の Unix ライク オペレーティング システムを開発していることを思い出してください。 開発は興味のためにゼロから実行され、既存のオペレーティング システムのコードに基づいていません。 著者らは、SerenityOS を日常の作業に適したレベルに引き上げ、90 年代後半のシステムの美学を維持しながら、最新のシステムのパワー ユーザーに役立つアイデアを追加するという目標を設定しました。
SerenityOS カーネルは、プリエンプティブ マルチタスク、ハードウェア保護メカニズム (SMEP、SMAP、UMIP、NX、WP、TSD) の使用、マルチスレッド、IPv4 スタック、Ext2 ベースのファイル システム、POSIX シグナル、mmap()、 ELF 形式の実行可能ファイル、擬似 FS/proc、Unix ソケット、擬似ターミナル、プロファイリング ツール。
ユーザー環境は、コンポジット マネージャーとコンソール マネージャー (WindowServer、TTYServer)、コマンド ライン シェル、標準 C ライブラリ (LibC)、標準ユーザー ユーティリティのセット、および独自の GUI フレームワーク (LibGUI、LibGfx、LibGL) に基づくグラフィカル環境で構成されます。 ) とウィジェットのセット。 グラフィカル アプリケーションのセットには、電子メール クライアント、ビジュアル インターフェイス デザインのための環境 HackStudio、テキスト エディター、オーディオ シンセサイザー、ファイル マネージャー、いくつかのゲーム、プログラムを起動するためのインターフェイス、フォント エディター、ファイル ダウンロード マネージャー、ターミナルが含まれます。エミュレータ、コンフィギュレータ、PDF ビューア、グラフィック エディタ PixelPaint、音楽プレーヤー、スプレッドシート エディタ、ビデオ プレーヤー。
出所: オープンネット.ru