アプリを実行する最小限のOS、ユニカーネル「IncludeOS」の魅力:OSのミニマリズム
汎用OSには不要な機能が多過ぎる。アプリごとに、OSの機能を極限まで削減したらどうなるか……。これがユニカーネルの概念だ。IncludeOSを例に、ユニカーネルの魅力を紹介する。
「IncludeOS」はユニカーネル(訳注)という特別な種類のライブラリOSだ。これにより、開発者はクラウドや昔ながらのOSでアプリケーションを作成・実行できる。
訳注:特定のアプリケーションの実行に必要な機能(ライブラリ)のみで構成したOS。
ユニカーネルはUNIXのようなOSとは異なり、オーバーヘッドをほとんど伴うことなく実行されるといわれている。
サービスを中心とするデータセンター主導のコンピューティングを行うクラウドモデルでは、不要な機能にリソースが浪費されることが多い。そう主張するのはIncludeOSのCEOを務めるペル・ブエル氏だ。
OSはコンテナ化されることで幾分進化し、軽量化された。だが実際の設計は変わっていない。汎用(はんよう)化された同じOSカーネルがハイパーバイザーの上位に位置し、同じホストで実行される全てのコンテナがこのカーネルを共有する。
ユニカーネルの仕組み
ブエル氏は、ユニカーネルはOSの概念そのものを覆すと説明する。プログラムを実行するのに必要なライブラリだけがアプリケーション自体に組み込まれる。アーキテクチャはクリーンに保たれる。アプリケーションに含まれる全てのものが実行時にその目的を果たす。
ここから、ブエル氏へのインタビュー形式でお伝えする。
──ユニカーネルにはどのようなメリットがありますか。
ブエル氏:最新のOSアーキテクチャは、仮想メモリをカーネル空間とユーザー空間に整理している。カーネルの機密情報は、詮索好きなユーザーの目の届かないところに保持される。UNIXシステムは全てのアプリケーションが巨大な共有サーバで実行される時代に設計されたものだ。当時はそれが理にかなっていた。ただしこうした編成によりカーネルモードへの切り替えが必要になる。そのため、膨大なCPU時間とリソースが浪費される。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
Copyright © ITmedia, Inc. All Rights Reserved.