PR
Microsoft MVP: Windows - Networking
NTTデータ  ビジネス開発事業本部  システム方式技術  ビジネスユニット  第一技術統括部  シニアエキスパート
高橋 基信

著者紹介
 1970年生まれ。1993年早稲田大学第一文学部哲学科卒。同年NTTデータに入社。「日本Sambaユーザ会」役員や「日本Windows NTユーザ会」スタッフを務め,オープン・ソース,Microsoft双方のコミュニティ活動に関わる。本誌「トラブル解決Q&A」の常連回答者。著書に「アンドキュメンテッドMicrosoftネットワーク」がある。趣味はピアノと声楽。
 

 WindowsとUNIX(Linux)の優劣の比較は,以前から様々な論争になっている。今回はその論争の中でよく主張されるWindowsの優位点について,長年疑問に思っていることに触れたいと思う。

 その優位点とは,「Windowsは高度にコンポーネント化されたOSで,アプリケーション開発の生産性が高い。また,共用コンポーネントを使ったアプリケーションの品質も高い」というものだ。

 確かにWindowsは,少なくともUNIXよりはるかにコンポーネント化が進んでいる。Windows上の一般的なアプリケーションで[ファイル]−[開く]を選択すれば,同じダイアログ・ボックスが開くし,どのアプリケーションでも当たり前のようにドラッグ&ドロップができる。操作性や表示の統一感は,UNIXとは比較にならないレベルである。また,Internet Explorerのプロキシ設定は,様々なアプリケーションが参照しているし,サービスの操作には「MMC(マイクロソフト管理コンソール)」という統一したインターフェースが使用できる。こうした点を見ている限り,Windowsのコンポーネント化はいいことずくめのようにもみえる。

 ところで,ここで素朴な疑問がある。

 UNIXの場合,例えばWebサーバーである「Apache」のセキュリティ修正やバージョンアップの際に,メール・サーバーの「Sendmail」やDNSサーバーの「BIND」に影響が出ることを心配する人はいない。影響が出ないことは,自明だからだ。

 振り返ってWindowsはどうだろうか。本来Webブラウザという1アプリケーションであったはずのInternet Explorerのバージョンアップやセキュリティ修正は,どこに影響が出るか分からない神経を使う作業である。私の周囲でも,XML(拡張マークアップ言語)処理に関するセキュリティ修正プログラムを適用したら,全く無関係だと思っていた業務アプリケーションに問題が発生した,という事例があった。マイクロソフトも,「修正プログラムを適用する前に,アプリケーションの十分なテストを行ってください」というメッセージを発しているぐらいである。

 もちろんUNIXでも,アプリケーションが利用しているライブラリに変更があれば,動作検証は必須である。しかしWindowsのように,パッチを適用したり,アプリケーションをバージョンアップしたりする度に,他のアプリケーションに影響が出ないかびくびくしているユーザーは,少ないように思える。どうしてだろうか。