The Linux Home Page at Linux Online |
3月24日(米国時間)、Linuxカーネルメーリングリストに投函されたメール「Linux-Kernel Archive: [RFC PATCH 00/11] an introduction of library operating system for Linux (LibOS)」において、カーネルのネットワーク・スタックを共有ライブラリのように利用できるようにする取り組み「LibOS(library operating system)for Linux」が伝えられた。
LibOS for LinuxはLinuxカーネルのネットワーク・スタックを共有ライブラリとして利用できるようにし、ユーザランドで動作するプロセスにおいてネットワーク・スタック機能のカスタマイズや新しい機能の追加、デバッグや新しいプロトコルの実験などをより簡単に実現できるようにしようという取り組み。
LibOS for Linuxのようにカーネルの処理をユーザランドのプロセスに持ってくる取り組みは、他のオペレーティングシステムにも存在する。例えば、NetBSDのRumpのほか、ファイルシステムをユーザランドで実装するFUSEやPuffsといった取り組みがLibOS for Linuxに似ている。いずれもカーネルの処理をユーザランドプロセスに持ってくることで、カーネルそのものがパニックやフリーズすることを避け、開発やデバッグを容易にできるという利点がある。
性能はカーネル内部で動作したほうが有利であることが多いため、性能が要求されるシーンでは開発物をカーネルに取り込むなどして利用することもある。