FreeBSD Daily Topics

2011年1月13日sysctl(8)を使って提供されている機能を知るフレームワーク

Registration of Optional Kernel Subsystems via sysctl

FreeBSDカーネルやユーザランドはカーネルモジュールを読み込んだりオプションを指定してカーネルやシステムを再構築することでさまざまな機能を追加したり、逆に機能をそぎ落として最小限の構成にするといったことができます。

しかし、現在のフレームワークにはどの機能が有効になっているかを知る統一された方法がありません。たとえばこの機能があるからこの動きをする、あの機能があるからあの動きをする、といったようにアプリケーション側で判定して動作を切り替えるといったことが簡単に実現できない状況にあります。

SoC 2010ではこれを簡単に実現できるようにしようという取り組みがIlya Bakulin氏によって実装されました。機能があるかどうかをsysctl(8)でチェックできるようにしようというものです。最終的にすべての機能を判定できるようにするには、この機能に対応するコードをそれぞれのサブシステムやカーネルモジュールに実装する必要がありますが、最初のとっかかりとしては興味深いものになっています。

おすすめ記事

記事・ニュース一覧