先日の朝,私は駅のホームで,到着する電車を表示するためのフラットなスクリーン・モニター上に,見慣れた表示をじっと見つめていた。大きなWindowsのダイアログ・ボックスがスクリーンの中央に居座っていて,何かのシステム・エラーが起きたことを示していたのだ。このディスプレイの後ろにあるPCを,リブートする必要があった。そいつは,存在しないユーザーが現れて[OK]ボタンをクリックするのを待っていたのだ。

普及が故に多くの不具合が露見するWindows
 こういう情けない出来事に会うと,私は訳知り顔で一人笑いをしてしまう。だが,私はもしIT市場が突然,今と逆になっても事態は少しもよくならないと断言できる。つまり,LinuxやMac OS Xが支配的なプラットフォームだとしても,こうした公共の場にあるシステムでダイアログ・ボックスを見たり,クラッシュした表示を目にしたりするだろうと確信している。Windowsは下手に設計されているわけでもないのに,様々な場所で使われているため,あざ笑われる立場に置かれることがよくある。

 Microsoftが怪しい技術的な決定をして,バグだらけのソフトを作ってしまう点に関しては,確かにその通りだと思う。同社には,明らかに改善の余地があったはずだ。しかし私は,多くのオープン・ソース・ソフトウエア(OSS)やMac OS Xを応援する人たちが支持する「隣の芝生は青く見える」という法則に賛成しない。例えば,Linuxに切り替えることは,きっと利益よりも多くの問題を生むし,それを解決するには長い時間がかかるだろう。

 いずれにせよOSSの支持者たちは,これまで何年もWindowsに対してLinuxのセキュリティや信頼性,耐久性が優越するという思い込みを押し付けていた。私の直感では,LinuxがWindowsのように多くの生産現場にインストールされていたら,それは違った形にせよもっと壊れていたと思う。もちろん欠けているのは,その証拠だ。MicrosoftがWindowsとLinuxの競争上の優位性を確認するため,次々と調査をしたのに,同社とこうした調査会社の間の馴れ合った関係が常にその結果の信頼性を損なってきた。

架空のeコマースで信頼性を検証
 だが,私たちはLinuxとWindowsが現実世界の中での違いをどう理解するかという点で1つの転機に達した,と感じている。最近,ある調査が行われ,やはりMicrosoftがこれにかかわっていた。しかし,その調査を実施した米Security Innovationは,その独立性と調査手法に関して,非常に注意を払っている。今回の調査「Reliability: Analyzing Solution Uptime as Business Needs Change」で,WindowsとLinuxの実際のシステムにおける信頼性を,抽象的にではなく,連続動作時間のような無意味な指標を使うことなく精査した(該当サイト)。この調査は,架空のeコマース・サイトが1年間に渡り稼働するという状況を想定して調べている。その期間中には,様々な製品のアップデートとともに,OSも新しいバージョンにアップグレードされるし,アプリケーションは新しい機能が追加されアップグレードされるとした。

 Microsoftのプラットフォーム戦略担当ディレクターのRyan Gavin氏は,ある説明会で私に「この調査は,現実的な設定でLinuxとWindowsを比較した最初のものになった」と語った。さらに「今回の調査は特定の作業負荷のためにLinuxを実装するという話ではない。こうしたシステムが長い期間に渡り管理され,その間に新しい機能が追加されたり,技術的な要素がアップグレードされたりした場合に何が起こるかを調査したものだ。これはユーザーが問題に遭遇するところを示すものだ」と続けた。

 その調査の一部では,経験を積んだWindowsとLinuxの管理者たちが,自分たちのそれぞれのシステムに合わせてeコマース環境を制御することを許された。Windows環境は「Windows 2000 Server」をベースにし,「Windows Server 2003」にアップグレードしたものだ。また調査期間中に公開されたホットフィックスやセキュリティ・パッチが適用された。

 一方,Linux環境は「Novell SuSE Linux Enterprise Server 8」から始め,「同 9」とすべてのアップデートが適用された。双方の管理者のグループは,時がたつのに合わせてシステムを構成し直し,メンテナンスしなければならず,このeコマース・アプリケーションに新しい機能,パーソナライゼーションやダイナミック・サーチ,リスト・ターゲティング——などの追加もしなければならない。そして,メジャーなOSのアップグレードも実施する必要があった。Security Innovationは,それぞれの管理者たちが各タスクをこなすのにどのくらいの時間がかかったかに注目して,彼らの行動を調べた。

Linuxパッチの適用時間や数はWindowsの数倍
 WindowsシステムはLinuxシステムに大差をつけ信頼性が高かった。平均するとLinuxへパッチを適用するのは,Windowsへの場合と比較して6倍の時間がかかり,Linuxに適用するパッチ数は187個と,Windowsの39個のほぼ5倍に及んだ。最も大事な点は恐らく,Linuxシステムが14回の「重大な中断」に襲われたことで,それらのシステム上でソフトウエアが動作を停止するソフトウエアによる依存性のトラブルに悩まされた。同様の条件下で,Windowsは依存性によるトラブルはなかった。

 過去10年間,Linuxを使った私自身の経験では,この手の依存性の問題が数え切れないくらい何度も起きるのに遭遇した。特定のソフトウエア・コンポーネントは特定のバージョンの別のソフトウエア・コンポーネントを必要とするので,アップグレードしなくてはならない。だがそのアップグレードが,アップグレードされたコンポーネントに依存する別のコンポーネントを停止させるのだ。

 Gavin氏は,「Linux環境のうち2つでは,管理者たちは(自分たちが必要としたアップデートされたコンポーネントを)つかんでそれを削除して,依存性による大規模な障害に見舞われた。管理者の1人は,すぐにRPMインストーラに影響するダウンロード地獄にはまってブートできないシステムを作ってしまった。別のLinux管理者は自分が作ったカスタム・コードを使ってどうにかうまく働くようにした。つまり彼はその問題に応急策を施したのだ。しかし彼が作業を終えたとき,そのシステムが他の誰にも任せられないと思った。もし彼がバスの事故に遭ったらおしまいだった」と語った。

 こうした依存性の問題は,すぐに分かるものではなく内部に隠れている可能性が高い。Gavin氏によると米Novellともう1つのメジャーなLinuxベンダーである米Red Hatは,コアなシステム・コンポーネントにアップグレードを加えた企業システムをサポートしないだろうという。つまり何かのアップグレードをした場合,同氏によれば,その環境はもはやサポートされないのだ。

 もう1つ関係のある情報は,パッチとシステムのアップデートを各環境に適用するやり方である。Windows環境では,各管理者が同じパスに従ってアップデートをインストールする。しかしLinuxの場合,各管理者は全く違ったアプローチをとる。「Linuxから見ると,何かをやるには100万通りの方法がある。しかし間違った方法も50万通りあるのだ。(Linuxの)アーキテクチャのもろさから限界を感じ始め,コンポーネント化の利益は,一方で複雑さや運用性やマーケティングに時間がかかるなどの不利益もあることを感じ始めるのだ」」と同氏は指摘した。

多くのパッチが混在するLinuxシステム
 想像の通りかもしれないが,Novellは常にLinux市場のメジャー・プレーヤでありたいと思っているので,こうした断定を快く思っていない。ブログの中で,NovellのKevan Barney広報担当上級マネージャは,Microsoftが市場を混乱させようとしていると書いていた。しかし,私は彼が書いた2つの基本的なことがちょっと疑わしいと思う。

 第1に,彼はLinuxに相互運用性の問題があることを否定し,それからWindowsのセキュリティ問題は何にしても長い時間と財務上の問題を引き起こすだろうと示唆した。第2に,彼は議論の筋を変えるためにOSSの支持者を引き合いに出すという古い手を使った。彼はLinuxの一ディストリビューションであるSuSEは,WindowsのようなOSとはきちんと比較できないと文句をつけた。なぜなら,SuSEやその他のLinuxディストリビューションは,たくさんのソフトウエア・パッケージとサービスを含んでいるからだ,と。

 ここでポイントは,Linuxディストリビューションが必要とするパッチの数は不自然に多いということだ。もし彼らの言うことが本当なら,Novellや他のLinuxベンダーはもっと小さくまとまったディストリビューションを出荷できたはずだ。そうしていない以上,私たちはユーザーが実際に購入できるLinuxディストリビューションとしか,Windowsを比較できない。

 Barney氏が触れていないことは,調査で分かった根本的な真実であり,それはかなり厳然たるものだと私は思う。現実世界でWindowsシステムと比較すると,Linuxディストリビューションは管理が複雑で,そのために信頼性が劣る可能性があるということだ。これはLinuxが失敗作だということではない。だが,Linuxコミュニティが気取った態度を何年も続けた後なのに,重大な懸念が提起された時に彼らが提供できる最良のものがそんなものだということに私は驚いている。