新規カーネルにおけるワイヤレスサポートの向上

 Linus Torvalds氏が評するところの「-rc7から大きな変更は施されていない」とされるカーネルリリース2.6.22ではあるが、実際には重要ないくつかのアップグレードが施されており、先週末のアナウンスに従えば、新規のワイヤレススタックとFireWireスタックの搭載、および新規のスラブアロケータによるメモリ管理の効率化などが行われている。

 「長年にわたりLinuxのワイヤレスサポートは貧弱なままでした」というのがLinux Kernel Newbiesでの評価であり、今回のリリースについては「2.6.22では全面的に刷新された改善版ワイヤレススタックが取り込まれています」とされている。

 新規のスタックは、Wi-Fiに特化したソフトウェアおよびサービス展開を行っているDevicescapeという企業から提供されたものであり、今回はフルソフトウェアMACの実装を始め、Wired Equivalent Privacy/Wi-Fi Protected Access、Quality of Service(QoS)、hostapd、802.11gのサポートが行われている。

 ただし今回の変更に関しては、ドライバ関連の問題が浮上してくることになるだろう。たとえば先のLK Newbiesでも「新規スタックをサポートしていないドライバ群がツリーに置かれているので、新たに移植をする必要が生じるでしょう(新規のスタックでは現状に比べればよほどドライバ開発が簡単化されているそうなので、この作業も簡単に済むことを願うところです)」という点が指摘されている。

 しばらくの間は従来のFireWireスタックが使い続けられることにはなるだろうが、今回のカーネルリリースに取り込まれた新規スタックではかなりのスリム化と効率化が進められているとのことだ。こうしたものに関しては、納得できるだけの下位互換性も確保されていて然るべきだろう。

 新規のスラブアロケータ(SLUB)はSGIのChristoph Lameter氏により作成されたもので、今回は効率面における特定の問題に対処したとのことである。新規アロケータはデフォルトでは有効化されないが、これを使用することでデバッグ機能が向上し、パフォーマンス的な改善も期待することができる。詳細はドキュメントを参照して頂きたい。

 またDraconis Software Weblogでは、今回のカーネルリリースで追加された重要な新機能として、プロセスフットプリント管理機能により「1つのプロセスが消費しているメモリ量の近似値を調べる」処理が可能となることおよび、utimensat()により「非常に精密なナノ秒単位でのファイルタイムスタンプ処理」が可能となる点が指摘されていた。

 今回のリリースでサポートされたその他の機能強化には、Blackfinアーキテクチャ、UBI(フラッシュパーティショニング)、新規ドライバ群の追加などがある。

 4月末にリリースされたカーネル2.6.21では、Virtual Machine Interface(VMI)の組み込み、Kernel-based Virtual Machine(KVM)の改善、一部デバイスドライバの新規提供が行われていた。

Shirl Kennedyは1992年よりテクニカルライターとして活動しており、現在はDocuTickerおよびResourceShelfウェブログのシニアエディタを務め、Information Todayの「Internet Waves」コラムにも寄稿している。

Linux.com 原文