長い技術記事の中で、 Ikey Doherty (Solusなどのプロジェクトをリードし、Clear Linuxに貢献したことで知られる) AerynOSの哲学とアーキテクチャの概要この新しいプロジェクトは、インフラストラクチャ・アズ・コードの時代にオペレーティング システムがどのように動作するべきかを再考することを目指しています。
Linuxエコシステムにおける単なるディストリビューションとは程遠く、 AerynOS は、現代のオペレーティング システムを大幅に再構想したものです。
流通からインフラまで
エアリンOS 疑問から生まれる 挑発的: 「オペレーティング システムが最新のインフラストラクチャのように動作したらどうなるでしょうか?」。答えは、従来のディストリビューションのレガシーな慣習を引きずることなく、既存のシステムを変更するのではなく、ゼロから構築されたプラットフォームです。AerynOS は、クリーンな基盤から開始し、過去の経験を活用し、一貫性、可逆性、構造の単純さを確保するために根本的なアーキテクチャ上の決定を下します。
アイキー・ドハティは記事の中でこう述べている。 最も印象的な決定の一つはLLVMツールチェーンの採用である。 従来の GNU の代わりに、デフォルトで libc++ と compiler-rt を使用します。この選択は、スタイル上の好みだけでなく、戦略によるものでもあります。 優れた診断と優れた携帯性を実現。このアップグレードにもかかわらず、AerynOS は標準ライブラリとして glibc の使用に引き続き取り組んでおり、マルチスレッド負荷や要求の厳しいアプリケーションでの優れたパフォーマンスのために musl よりも glibc を選択しています。
これに加えて、 AerynOSのコアコンセプトの一つは「ステートレス」である。: どのパッケージも /usr の外部にファイルをインストールできません。 この厳密な区分により、ユーザー スペース (/etc、/var) がシステム スペースから分離され、マージの競合が排除され、クリーンなアップグレードが容易になります。 Clear Linux にまで遡るこのアイデアは、合理的なデフォルトを強制し、より柔軟なシステムがしばしば導入する不必要な複雑さを回避することを目的としています。
アトミックかつ可逆的なアップデート
エアリンOS Mossと呼ばれる全く新しいパッケージ管理システムを使用しています。 アトミックトランザクションを実行します。各更新では、重複排除されたストアからのハードリンクを使用して新しい /usr ツリーが作成され、renameat2() を使用して現在のツリーとアトミックに交換されます。このメカニズムにより、更新が完全に完了するか、まったく適用されないかのいずれかになり、中間状態が回避されます。
ブーツ管理も伝統を破ります。 blsformeやdisks-rsなどのツールのおかげで、AerynOS スーパーブロックを直接読み取ってカーネルコマンドラインを動的に生成する ファイルシステムの root= が不要になります。さらに、各コアは特定のトランザクションに関連付けられているため、ブート メニューからのシステム ロールバックが容易になり、ESP が失われた場合にブート環境を最初から再構築できるようになります。
.stoneフォーマット:ソフトウェアをパッケージ化する新しい方法
もう XNUMX つの重要なコンポーネントは、 .stone形式、最新のバイナリパッケージ バージョンの独立性と高い効率性を考慮して設計されています。各 .stone ファイルには次のものが含まれます。
- パッケージファイルの重複コンテンツ
- ハッシュインデックス(XXH128、Blake3への移行予定)
- ターゲットファイルシステムのマップ
- 名前、バージョン、機能などの型指定されたメタデータ。
ファイルを直接インストールする代わりに、 .stoneはコンテンツアドレスストアに保存されます (CAS) であり、トランザクションの一部としてコンパイルされます。このアプローチにより、パフォーマンスが向上するだけでなく、変更を簡単に元に戻すこともできます。
パッケージ管理システムは、従来の命令型モデルに従いません。開発者は、直接インストール コマンドは「解決するよりも多くのバグを導入する」と考えています。代わりに、各トランザクションは新しいシステム グラフを作成し、変更コマンドを実行するのではなく、システムの望ましい状態が記述される、Nix や Gentoo に似た将来の宣言型モデルへの道を開きます。
AerynOS は不変ですか?
これは不変のシステムであるとよく説明されますが、作成者自身はこれが厳密には真実ではないことを明確にしています。 システムは読み取り専用アクセスをブロックしませんトランザクションが/usrツリーを置き換える間、 完全な不変性はまだ実装されていません。 長期的な目標は、overlayfs や erofs などのテクノロジーを活用して、再起動なしでこれを実現することです。
AerynOS はアルファ段階であるにもかかわらず、すでに ISO が提供されており、GNOME をサポートし、Steam、NVIDIA、Flatpak と互換性があり、その安定性とパフォーマンスを賞賛する実際のユーザーがいます。システムはまだ進化していますが、すでに現実のシナリオでテストできるほど十分に機能しています。