%navincludes; %includes; ]> &header;
使うアプリケーションがどんなものでも、 自分のシステムの資源は最大限に活用したいものです。 FreeBSD の持つ先進的な機能は、それを可能にします。
FreeBSD は、カリフォルニア大学バークレー校の コンピュータシステムリサーチグループから公開された BSD ソフトウェアの最終版に由来しています。 つまり 4.4BSD オペレーティングシステムの設計と実装 という 4.4BSD のシステム設計者が書いた本には、 FreeBSD の中枢機能のほとんどが、詳しく書かれているのです。
FreeBSD プロジェクトは、 世界各国から集まった多様なボランティア開発者の技術と経験を集結して、 4.4BSD オペレーティングシステムの機能を、さまざまな形で拡張しました。 プロジェクトでは新しいリリースが、その前のものより安定で高速に動作し、 ユーザーの要求に応じた新しい機能を持ったものになるよう不断の努力を続けています。
FreeBSD の開発者はオペレーティングシステムの設計における 難しい問題のいくつかに取り組み、 次のような先進的な機能を利用できるようにしました。
- 仮想メモリとファイルシステムバッファキャッシュの統合 により、プログラムに使われるメモリとディスクキャッシュの量は、 常に最適に調整されるようになっています。 これにより、プログラムからは、優れたメモリ管理機能と 高性能のディスクアクセスの両方を利用することが可能です。 またシステムの管理者は、キャッシュメモリを調整する作業から 解放されます。
- 互換モジュール により、Linux、SCO UNIX、System V Release 4 など、 他のオペレーティングシステム用の プログラムを FreeBSD 上で動かすことが可能です。
- Soft Updates により、安全性と信頼性を犠牲に することなくファイルシステムの性能が向上しました。 これはメタデータのファイルシステム操作を解析して、 いくつかの操作を非同期に行ないます。同期的に処理する代わりに、 完了していないメタデータ操作に関する内部状態を保持することで メタデータをキャッシュし、効率が向上するように、 同一のファイルに対する連続した操作をひとつにまとめて、 処理の順番の入れ換えを行なっています。
- IPsec と IPv6 に対応 しています。 これらは、高いネットワークセキュリティの実現と 次世代のインターネットプロトコル IPv6 への対応を可能にします。 FreeBSD の IPsec 実装は、 多くのハードウェア暗号アクセラレータに対応しています。
- マルチスレッド SMP アーキテクチャにより カーネルを複数のプロセッサ上で並列に実行することができ、 カーネルプリエンプションと合わせると優先度の高いカー ネルタスクが他のカーネル内の動作から制御を先取りでき、 レイテンシを下げられます。優先度の高いカーネルタスクには、 マルチスレッドネットワークスタックと マルチスレッド仮想メモリサブシステムがあります。
- M:N スレッド化アプリケーションスレッド により、 多くのユーザースレッドを少数の Kernel Schedulable Entities (KSE) に対応づけるスケーラブルな方法で、 スレッドを複数の CPU 上で実行できます。 Scheduler Activation モデルを採用することで、 スレッドモデルは広範囲のアプリケーションの要求仕様に 合わせられます。
- ファイルシステムスナップショットにより、管理者は ファイルシステム中の空き領域を用いてバックアップ用にアトミックな ファイルシステムのスナップショットを取ったり、電源を入れてから ファイルシステムのクリーンナップ処理が終わるのを待たずに マルチユーザモードへ移行できる便利な background fsck の 恩恵が受けられます。
- 差込可能なネットワークスタック Netgraph により、 開発者はきれいに階層化されたネットワーク抽象を介して、 ネットワークスタックを動的かつ容易に拡張できます。 Netgraph ノードにより、カプセル化、トンネル、暗号化、性能最適化といった 広範囲のネットワークサービスを実装することができます。
- 拡張可能なカーネルセキュリティである TrustedBSD MAC フレームワークにより、開発者はオペレーティングシステムの セキュリティモデルを、堅牢化のためのポリシー作成から 強制ラベル付け秘密保持統合ポリシーの適用まで、特定の環境に合わせて カスタマイズできます。
- 差込可能なストレージ層 GEOM により、新たなストレージ サービスをすみやかに開発して、FreeBSD のストレージサブシステムに きれいに組み込むことができます。GEOM は、ストレージサービスを 検出したり階層化して用いるための一貫して筋の通ったモデルを 提供しており、RAID とボリューム管理のようなサービスを 重ね合わせて使うことが容易になります。
- カーネルキューによって プログラムのファイル I/O やソケット I/O など、 さまざまな非同期イベントに対する応答性が向上し、 アプリケーションやシステムの性能を改善することができます。
- accept フィルタは、ウェブサーバなど、 接続要求の多いアプリケーションに必要な機能の一部を オペレーティングシステムのカーネルに組み入れたものです。 これを利用して、 そのようなアプリケーションの性能を向上させることができます。
&footer;FreeBSD 開発者は、性能や安定性と同じくらいセキュリティに注意を 払っています。FreeBSD にはステートフルな IP ファイアウォールの カーネルレベルの対応が、IP プロキシゲートウェイと同様に 組み込まれています。
また、FreeBSD は暗号ソフトウェア、セキュアシェル、Kerberos 認証、jail により作られる「仮想サーバ」、サービスを chroot して ファイルシステムへのアクセスを制限するアプリケーション、 Secure RPC 機構、TCP wrappers に対応したソフトウェア用の アクセス制御リストを搭載しています。