仙台市青葉区の歯科医院 Your Dental Clinic仙台一番町 歯医者のひとり言

仙台駅前で開業する歯科医師です 仕事、育児、遊び、ジムなど 様々なひとり言を・・・

 OS

MicrosoftにもブラウザOSのプロジェクトが存在するのをご存じだろうか。Microsoft Research (MSR)において「Gazelle」や「MashupOS」などの名称で研究が進められており、論文も公開されている。

7日 (米国時間)に米GoogleChrome OSの開発を明らかにした。WebブラウザのChromeと密接に結びついた軽量なOSであるという。特徴としてスピード、シンプリシティ、セキュリティの3つを挙げており、「OSがどのようなものであるべきかを考え直してもらう試みである」と同社は説明している。何やら革新的な取り組みであるようだが、具体的な内容に触れていないため、エンドユーザーがChrome OSを必要とする理由が見えてこない。これでは消化不良というか、すっきりとしない。

そこでMSRのGazelleである。Googleの公式ブログの少ない情報から2つを同じように捉えることはできないが、アプローチや目指すところに類似点が多々あるように思える。Gazelleの論文を参照すると、少なくとも今後のWebアプリケーション利用においてブラウザではなく、ブラウザOSが必要になる理由が見えてくる。

ブラウザとブラウザOS、セキュリティの目的の違い
GazelleはWebアプリを処理するためのブラウザ・ベースのOSだ。MSRはマルチ・プリンシパルOS(multi-principal OS)と説明している。この場合のプリンシパルとはWebサイト()を指す。基盤OS(Windows)の上に、約5000ラインのC#コードで書かれたブラウザカーネルのレイヤが存在するのが特徴で、このブラウザカーネルが様々なプリンシパルとシステム・リソースを仲立ちし、リソースの共有や保護を実現する。

今日のWebページには、そのページのコンテンツのほか、広告やニュースフィード、メッセージ、動画・写真など、複数のプリンシパルからのダイナミック・コンテンツが含まれるケースが珍しくない。それらが同じプロセスまたは保護ドメインに混在している。そこで、たとえば広告が悪意のあるコードを含んでいたり、またはネットワークを占有するようなバグを抱えていると、パフォーマンスの低下やブラウザのクラッシュが起こってしまう。

また今日のブラウザの多くは、デバイスのリソースを管理する機能を備えていない。Webカムやゲーム・コントローラなど周辺機器のデバイスへのアクセスがブラウザ・プラグインによって処理されている場合、その仕組みはプラグイン作成者によってコントロールされる。これがプラグインのコンフリクトが起こる原因になっている。

Gazelleはブラウザ・カーネルを通じてプリンシパル同士を保護し、問題のあるプリンシパルの影響が、他のプリンシパルやブラウザ、ホストマシンに及ばないように設計されている。プリンシパルを超えたコミュニケーションを適切に処理し、ポリシーに従ったシステマチックなデバイスへのアクセスが徹底されるようにシステム・リソースへのアクセスを管理する。

プリンパル保護という点では、すでにChromeInternet Explorer (IE) 8ではマルチプロセスが採用されている。だがシンプルにサイトをプリンシパルとするChromeは、attackerAd.socialnet.com、alice.profiles.socialnet.comなど、同じレジストリで管理されたドメインネーム(socialnet.com)を共有していると、同じプリンシパルと見なす。またWebサイトのプリンシパルと埋め込まれたプリンシパルを同じプロセスで処理する。IE 8の場合はOSプロセスによってタブを独立させているのみだ。

Gazelleのプリンシパルは、厳密にはプロトコル/ドメイン名/ポートから構成されるSOP(Same Origin Policy)プリンシパルであり、複数のプリンシパルが混在するWebページにおいて正確にプリンシパルを保護ドメインに切り分ける。たとえばWebサイトに埋め込まれた動画が同じディスプレイを共有している場合、Gazelleはプリンシパルに従って、ディスプレイ全体から動画が埋め込まれているスペースを切り分けてレンダリングする。

今日のブラウザとGazelle (=ブラウザOS)ではセキュリティの目的が異なるのだ。ChromeIE 8のマルチプロセスは、ユーザーのブラウジング全般においてトラブルを最小限に抑えられるように封じ込めるのを優先した設計といえる。セキュリティという点では、ブラウザやWebからホストマシンを保護するのを目的としており、そのためにはプロセスのサンドボックス化は有効である。

しかし、それはローカルアプリに加えて、Webアプリケーションも利用するというレベルの話だ。Webでやり取りされるデータ、Webに取り込まれる機能が増えるほどに、ブラウザのアプリケーション・プラットフォームとしての側面が重視されるようになる。Webアプリ主体のコンピューティングでは、ホストマシンだけではなく、ブラウザも十分に保護する必要が出てくる。そのためにはブラウザをOSと捉え、今日のホストマシンに加えて、ブラウザにおけるプリンシパル単位の保護を実現しなければならない。

以上はGazelleの例だが、Googleが「OSがどのようなものであるべきか……」という際の"OS"はWebアプリを動作させるためのOSであり、進化すべきポイントはスピードやシンプリシティ以上に、Webアプリへの依存の高まりに従ったセキュリティ強化を指しているのではないだろうか。GoogleChrome OS開発は、同社がデスクトップOSに進出と考えるよりも、Chrome(=Webブラウザ)の自然な進化と捉えるべきように思える。



8月にUsenix Security Symposiumにおいて、MicrosoftのSystems and NetworkingグループがGazelleに関する講演を行う。これが一部で話題になり始めたのが6月末だ。Googleの唐突なChrome OS発表は、広く一般に対してブラウザOSにおける先手を印象づけるためではないかと勘ぐりたくなるようなタイミングである。

だが、過去の例を考えるとパイを広げるのがGoogleChrome OS提供の狙いと考えるのが順当だろう。たとえばAndroidの登場によってiPhoneコミュニティとのつぶし合いが展開されているかというと、相互に刺激を受けながらモバイルアプリ開発は広がりを見せている。

参入の敷居を低くし、競争を発展につなげるのがGoogleのやり方だ。ただし、Googleのいう発展とは"Webの発展"である。同社はWeb利用から収益を上げる企業であり、Webの発展につなげることが全ての基本戦略だ。Chrome OSを搭載したミニノートが普及しても同社の売上げにはならない。それでもChrome OSを推進するのは、ブラウザOSがWebプラットフォームの前進につながるからだ。

GazelleはMicrosoft内のリサーチ・プロジェクトの1つに過ぎない。今はコンセプトを示す段階であり、同プロジェクトが製品につながる可能性は、まだまだ低い。GoogleがGazelleを意識しているかは分からないが、今後Microsoft内でGazelleのようなプロジェクトの存在が大きくなれば、結果的にGoogleにも利益がもたらされる。極端な話をすると、たとえChrome OSが伸び悩んだとしても、その存在に刺激を受けてMicrosoftがGazelleのようなプロジェクトに本腰を入れ始めてWebが前進すれば、それはGoogleの勝利といえる。

このように考えると、Gazelleプロジェクトを表舞台に呼び出すために、このタイミングでGoogleChrome OSを発表したのではないか……とも思えてくる。


まぁ色々会社の事情なんてのがあって大変なんでしょうが、そういった政治的なというか会社的な背景は抜きにして、このchromeOSぜひ使ってみたいところです。現在ブラウザはchromeオンリーですが、これ使ってしまうとIEは重くていらいらしてしまうほど。そのイメージが強いため今回のこのOSについては個人的にかなり興味があります

仙台市青葉区中央4-1-3 東京歯科 022-266-1510 tokyo-sika@r4.dion.ne.jp http://www.tokyosika.com/pc/