ブラウザが OS になるために必要なこと


このへんを見てみると、ブラウザをプラットフォームというか一種の OS として使いたいということなんだと思う。

もしブラウザを OS として見なすなら、ブラウザにリソース管理機能がつかないといけない。つまり OS がブラウザに対して割り当てたリソースを、ブラウザが個々のページや plugin に対して割り当てを行ったり制限をかけたりできるようになる必要がある。

今のコンピュータでは、「OS」と「Application」の 2 階層しかない。しかし、本当はこれは N 階層であるべきである (N は 4 程度でよい)。たとえば現在の Web ブラウザは plugin 機能を持っているけど、各 plugin のリソースをブラウザがコントロールできるようになれば、もし plugin が暴走しても Web ブラウザがそれを安全に止めたりできる。そのための sandbox なんだけど、今はまだ不完全だ。

やはり、supervisor mode (OS) と non-supervisor mode (Application) の 2 つしか用意されていないのが問題のように思う。Intel CPU では 0 から 3 までの 4 階層を用意しているらしいが、OS ではそのうち 2 つしか使っていない。これを、4 階層すべてを使えるようにならないだろうか。

個人的には、4 階層あれば現在の要求は満たせるように思う。

  • level 0: Operating System
  • level 1: Virtual Machine
  • level 2: Application
  • level 3: Plugin


これは今までの OS の設計をだいぶ変える必要があるけど、将来的にはこうなって欲しいなあ。