速報!BSDCan2009 - 6th *BSD International Conference(その1)

2009年5月8日と9日、カナダのオタワ大学にて*BSD国際会議BSDCan2009が開催されました。2004年から毎年開催され、2009年で6回目となります。前日の6日と7日には有料のセッションであるチュートリアルの開催や、*BSDデベロッパごとのサミットが開催されました。本稿ではBSDCan2009から興味深いセッションを速報として簡単に紹介します。

Implementation of TARGET_MODE applications - Sean Bruno

FreeBSDにはtarg(4)インターフェースがあり、FreeBSDそのものを外部記憶装置のように振る舞わせることができます。たとえばNetbookにFreeBSDをインストールして普段はssh端末として持ち歩いている場合、他のPCからデータをコピーする必要が出た場合にUSBケーブルで直結して、FreeBSD/NetbookをポータブルUSB HDDドライブのように振る舞わせることができます。

Sean Bruno氏からtarg(4)の使い方やその構造が紹介されました。大規模ストレージの構築から組み込み外部記憶装置まで応用が可能です。

Understanding and Tuning SCHED_ULE - George Neville-Neil

マルチコア/プロセッサで性能を発揮するために新しく導入されたスケジューラSCHED_ULEの背景や動作、チューニングの方法とパラメータ、簡単な実験を通じたパラメータ変更の結果などがGeorge Neville-Neil氏から紹介されました。優れたスケジューリングはケースバイケースで異なるため、チューニングパラメータがまとめられた本セッションは参考になります。チューニングの結果が必ずしも優れた結果になるとは限りませんが、作業するための参考資料として価値のあるセッションです。

Journaling FFS with WAPBL - Joerg Sonnenberger

NetBSD 5.0のFFSにはWAPBLと呼ばれるジャーナリング機能が搭載されています。FreeBSDではFFSにSoftupdate機能を搭載することで非同期の高速さの恩恵を受けつつ安全な操作を実現しました。しかしこの方法はクラッシュが発生した場合にバックグラウンドfsckを実行する必要があり、システムは即時再起動するものの、バックグラウンドfsckを実行している間はIO負荷がきわめて高くなるという問題があります。

NetBSD WAPBLはFFSにジャーナリング機能を提供するものでSoftupdatesと同等かそれ以上の性能を提供しつつクラッシュ時の迅速な起動を実現します。Joerg Sonnenberger氏がWAPBLについて報告するとともに、openSuSEと性能を比較したベンチマークを発表しました。

Detecting TCP regressions with tcpdiff - Mike Silbersack

Pythonで開発したサーバクライアントとtcpdumpを組み合わせることで、自動的にTCP通信データを可読性のあるテキストデータとして取得し、リビジョン間での動作の差異を調べる方法をMike Silbersack氏が紹介しました。過去にリグレッションが発生したケースに適用し、実際にリグレッションの発生をdiffで確認できていることを示しています。今後は自動試験化をすすめ、コミットに対して自動的にチェックを実施するシステムを構築したいと発表がありました。

GEOM based disk schedulers for FreeBSD - Luigi Rizzo

HDDのように円盤が回転するタイプの記憶装置では、ランダムとシーケンシャルアクセスで大幅に性能が変わります。読み書き処理を工夫することでシステム性能の改善や、要求される操作性の提供(たとえばシーケンシャルアクセスが連続している場合でもランダム読み書きのレスポンしビリティを失わないなど)が可能になります。より正確に実施するにはH/Wのファームウェアで実現する必要があり、OSではデバイスドライバで実施する必要がありますが、ここではGEOMレイヤでこれを実現する方法と実験結果がLuigi Rizzo氏より紹介されました。

GEOMスケジューラはIOスケジューリングを実装し性能評価を実施するためのフレームワークとして期待できます。運用しているサーバ向けに適切なIOスケジュールを実装する枠組みとしても活用できます。また、実験次第では今後のFreeBSDのデフォルトIOアルゴリズムの改善にもつながる可能性があり、注目しておきたい機能です。

Automating FreeBSD Installations - Randi Harper

ネットブートからFreeBSDを自動的にインストールするための方法がRandi Harper氏から紹介されました。文書にまとまっていないところもあるため、FreeBSDのネットブートインストールを実施したい場合には参考になるセッションでした。

Multiple Passes of the FreeBSD Device Tree - John Baldwin

FreeBSDはデバイスの検出を1回だけ実施しデバイスツリーを構築します。この方法はほとんどの場合でうまくいきますが、ブリッジデバイス関係などいくつかのケースでリソース割り当てがうまくいかないパターンがあり、長い間問題となっていました。John Baldwin氏はパスのフェーズを7つほどに分け、ステージごとにパスを繰り返すことでこの問題を解決する方法を提案するとともに今後の解決計画を紹介しました。

Getting Started in Free and Open Source - Cat Allman, Leslie Hawthorn

GoogleのCat Allman氏およびLeslie Hawthorn氏からFLOSSプロジェクトに参加して活動を開始するための方法が発表されました。Google Summer of Codeでの活動経験に基づき、まずはじめに何に取りかかるべきか、どういった作業は避けるべきか、何に注力すべきかなどがまとめられました。


ここで取り上げたセッションのより詳しい紹介はSoftware Design2009年7月号(6/18発売)に掲載予定です。ぜひそちらも合わせてご覧ください。

おすすめ記事

記事・ニュース一覧