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