Linuxは小さなWindowsになったのか

LPI-Japanの標準Linux教科書に目を通した。言うまでもなく、これはLinuxの教科書ではなくて、GNU coreutilsとかディストリビューション(CentOS)の教科書なわけだけど、個人的には悪くないと思う。これを起点に話ができるわけだから。

新たなベンダロックインとしてのGNU/Linux

Adobe AIRLinux版が出た。
これの要求環境リストを眺めれば、現代的なGNU/Linuxシステムが実のところLinuxというよりはGtkでXでMetacityであることが理解できる。
重要なのは、これらの殆どはLinux以外のカーネルでも動作するにもかかわらず、他のカーネルがサポートのリストに加わることはほぼ無いという点と、これらはバイナリで提供されるのでIA32でないLinuxLinuxにあらずとなっている点。
Linuxにいくらプロプライエタリソフトウェアが参入しても、それは新たなベンダロックインを導入するに過ぎない。

Windowsよりもマシな点

もっとも、Linuxシステムのソースコードは公開されており、システムのデザインとしても(Windowsよりは)古い分類に含まれる。
そのために、エミュレーションが比較的容易で、実際FreeBSDや他のOSでのABIエミュレーションは比較的うまく機能しており、Linuxベースでプロプライエタリソフトウェアを供給することは、システムの柔軟性を損わない可能性が高い*1
柔軟性という意味ではWindowsは本当にクソとしか申し上げようが無い。

VMwareはvClientを発表したが、vClientのようなシステムの市場性は即ちWindowsのTerminal Serviceにいかに価値が無いかということになる*2
もっとも、世間が完全にGNU/Linuxに支配されたとしてもvClientのようなシステムが不要かどうかはなんとも言えない。ただ、少くとも、デスクトップシステムをデザインする上では、vClientや他の仮想マシンモニタの類に市場性を与えてはならない。それらの機能性はシステムが元来備えているべき機能性であることが多い。

誰が秩序を作るのか

『自由なシステム』では秩序を作ることができないかもしれない。

チップセットさえ入手すれば、現実的に機能する携帯電話を誰でも作ることができる*3。これは各種規制や税金を回避し、消費者にとっては非常に魅力的に映る。
しかし、その代償は突然にやってくる。

このような問題は、番号の管理や特許等にコストを払わなくても、表面上はうまく動作することが根底にある。目の前で動作しているものを否定してまで、良心を満たそうという人間は中々存在しない。
同じことは、DRMフリーだとかlibavcodecベースの各種プレーヤとか、とにかく様々な『良心的な強制を回避するシステム』全般に言える。
少くともIA32にロックインすることで、十分な複雑性をもって、良心*4を技術的に強制できると考えられている。つまり、IA32が秩序を作っている。
これをFOSSのモデルの枠内で実現することは不可能に思える。フリーなソフトウェアはユーザに何も強制するものでは無いと考えられている。
システムによる強制を諦めるアプローチもある。例えばB-CAS界隈で議論される『制度的エンフォースメント』はそれに相当する。もっとも、このようなアプローチには成功できる要素が一切無いので、ゲーム専用機のようなセキュアプレイヤにコンテンツ業界や携帯電話は収斂していくように思える。

*1:これは、逆に言えばDRMのようなシステムを導入することの困難性とも言える。DRMはシステムの柔軟性を失わせるためのシステムでなければならない。

*2:VMwareは仮想D3Dビデオカードを作り、DirectX9にまで対応している。率直に言って壮大な無駄だが、他の仮想マシンにおけるWineを使ったOpenGL変換よりは安全なアプローチだ。

*3:エンドユーザが手元で組み立てるという意味ではなくて、いくらでも零細メーカーが出現できるという意味。記事を参照のこと。

*4:コピーを頒布しない、特許料を払う、他人の使っているIDを勝手に名乗らない等