2 / 32

・DevFSのサポート

 カーネル2.4では,カーネル2.2では搭載されていなかった「DevFS」(Device FileSystem)と呼ばれるデバイスの管理方法がサポートされている。

 Linuxを始めとするほとんどのUNIXシステムでは,各デバイスは「/dev」ディレクトリ下で管理されている。たとえばLinuxの場合,1台目のIDEハードディスクは「/dev/hda」,1台目のSCSIハードディスクは「/dev/sda」に対応する。しかし,DevFSはこれを階層化することで,ハードディスクであればIDE,SCSIを問わず「/dev/discs/disc0」(1台目のディスク),「/dev/discs/disc1」(2台目のディスク),というデバイス名になって「/dev/discs」の配下に配置される。また,このようなディレクトリは管理者(root)が作るのではなく,デバイスドライバがロードされる時に動的な割り当てで作られる。

 DevFSは,デバイスが種類ごとに階層化されるという点,動的に作られるために管理者を悩ませないという点からメリットが高いといえる。

 しかし,DevFSが本格的に使われるためには,カーネル本体のサポートだけでなく,各種ツールのサポートが必須となってくる。つまり,/devの下を参照する各種ツール(たとえば,mountコマンドとかfdiskコマンド,fsckコマンドなど)が,DevFSに対応しなければならない。

 このような理由から,DevFSは従来との互換性のために/dev/hdaや/dev/sdaなどのカーネル2.2におけるデバイス名もサポートしている。

 DevFSに本格的に対応させるには,Linuxにインストールされているすべてのツールを調べ,対応させるようにしなければならない。これは,かなりのパワーユーザでなければならない難しい作業となる。このため,各ディストリビュータの対応――つまりカーネル2.4をはじめから採用しているディストリビューションの登場――を待ったほうが無難といえるかもしれない。

 このことから考えるに,DevFSはこれから主流となる最新の機能であるが,普及にはまだ時間がかかると予想される。

 なお,DevFSのサポート機能は標準で無効となっている。このLinux How-Toでは,以下,DevFSの機能詳細については特に触れない。

・ジャーナリングファイルシステムの採用

 カーネル2.4.1からは,今までのext2ファイルシステムに代わる「ReiserFS」が含まれるようになった。ファイル書き込みを行う際に,トランザクション処理が行われるもので,ext2に比べて信頼性が向上する。

・ソフトウェアRAIDの高速化

 ソフトウェアRAIDのデバイスドライバが新たに書き直された。その結果,シングルCPUの構成において動作速度が大幅に向上した。

・ネットワーク機能の強化

 ネットワーク通信を構成する部分が書き換えられた。これにより,大幅な効率アップが見込まれる。

 ネットワーク通信を構成する部分が書き換えられた。これにより,大幅な効率アップが見込まれる。

 パケットフィルタリングとNAT(Network Address Translation)の機能も強化され,より複雑なファイアウォールやルーティングが実現できるようになった。カーネル2.4では,その設定のための「ipfilter」という新しいコマンドが用意される(従来との互換性のため,カーネル2.2でサポートされていた「ipchains」や,カーネル2.0でサポートされていた「ipfwadm」コマンドも引き続きサポートされる)。

 さらには,カーネル自身がhttpサーバ機能を搭載するようになった。カーネルがサポートするhttpの機能は,プロセスを起動することなく内部で処理するために高速だという特徴がある。しかし,この機能は単にディレクトリに置かれたコンテンツをそのまま配信するだけの機能として考えておいたほうがよいだろう。CGIなどの拡張機能は持たないため,静的なコンテンツを高速に配信したい場合にのみ効果が期待できる。このため,既存のhttpdサーバ「Apache」などと置き換わることにはならないはずだ。

 また,個人向けの機能としてはPPPドライバの変化が見逃せない。具体的には,PPPドライバがマルチリンクをサポートし,多様なメディアレイア上で動作するように構成変更された。たとえば,PPPoE(PPP over Ethernet)などだ。ただし,それに伴ってカーネル2.4にアップグレードした時には,PPPのツールを再構築したり,一部の設定変更したりする必要がある。

 以上の機能の一部は,カーネル2.2の後半でサポートされたものや別途パッチを適用したり,デバイスドライバを組み込んだりすることで対応できるものも多い。

 つまり,カーネル2.4は従来のカーネル2.2+デバイスドライバ群が統合されたものという判断もできるわけだ。このような側面からは,機能面での斬新さはあまりない。

 これまでに挙げたものを総合すれば,カーネル2.4にアップデートすることで得られるメリットは次のようなものだろう。

・個人ユーザー

USBがサポートされるようになって,おもにWindowsで利用されているさまざまな周辺機器が利用できるようになる。

・企業ユーザー

最大搭載可能メモリが64Gバイトになったことを始め,複数のIO-APICのサポート,ネットワーク機能の強化などから,より大規模なシステムを構築できるようになる。


前のページ | 次のページ