(Mark Minasi)

 私は,AMD64対応のCPUを搭載するマシン上で「Windows XP Professional x64 Edition」を評価しており,楽しんでもいる。だが,まだ大好きと言っていいかどうか決めかねている。6年前にも私は64ビット版Windowsを動かしたことがあるので,まるで振り出しに戻り,デジャビュを見ている感じだ。

 当時,私は今はなき米Digital Equipment(DEC)がサーバーやワークステーション向けに開発した「Alpha」というプロセッサ用のWindows NT 4.0を評価していた。自分の小さなネットワークで,そうしたワークステーションの1台をサーバーとして使っていたのだ。その経験を交えて,新しいWindows XP x64 Editionのプレビューをお届けする。

NT 4.0にも64ビット版はあった
 米Microsoftは以前,米Intelのx86アーキテクチャを実装したCPUだけではなく,様々なプロセッサ向けにNT系列のOSを提供していた。MIPS,Power PC,Alpha版のNTがあった。NTは,どのCPUアーキテクチャにも強く依存していなかったので,適当な価格である程度普及したチップに移植していたのである。よく知っているOSをAlphaのシステム上で稼働できるのは,確かに便利だった。だが,そのCPU上でWindowsを動かすためにIntelベースのマシンと同じような環境を構築するのは,容易なことではなかった。この点が,Alphaシステムの問題だった。

 アプリケーションが,その大きな障害となっていたのである。x86プロセッサ向けにコンパイルされたプログラムは,Alphaには存在しないインストラクションを呼ぶマシン・コードを使う。つまり,「winword.exe」のファイルを単純にIntelベースのマシンからAlphaベースのマシンへコピーしても「Word」は,動作しないということだ。Wordのソース・コードを,MicrosoftがAlpha上で動くようにリコンパイルする必要がある。自社のプログラムをAlpha上で稼働するようにリコンパイルするアプリケーション・ベンダーはほとんどなかった。従って,Alpha機用のアプリケーションはほとんどなかった。そのことが最終的な破滅につながった。DECはこの互換性の問題を解決しようと考えて「FX!32」というエミュレーション技術を開発した。だが,FX!32はこの問題をうまく解決するほどには,高い互換性でかつ高速には動作しなかった。

 これに対して,AMD64に対応するCPUのユーザーは,アプリケーションの互換性に悩む必要がない。AMDのチップは,昔のx86の命令コードも,新しい64ビットの命令コードも動かせるからである。だから標準的な32ビットWindowsアプリケーションが,Windows x64 Edition上でも動く。16ビットのWindowsアプリケーションは動かないが,そんなには問題にならないだろう。ただし,一部のセットアップ・プログラムは16ビット・コードを使っているので,注意が必要である。そして当然ながら,DOSプログラムも全く動かない。

 DOSアプリケーションは,Alphaに重大な不満をもたらした。Alphaはx86のインストラクション・セットを欠いていたので,Microsoftは後にはVirtual PCになるものの初期バージョンを追加した。これはx86環境をまるまるエミュレートするものだった。XP x64 Editionは,どんなDOSアプリケーションの実行も単純に拒否する(蛇足だがNTカーネルの設計者であるDave Cutler氏は,DOSアプリケーションを嫌っていたそうだ。最終的にWindowsからDOSを根絶できたことを同氏は大いに喜んでいるに違いない)。私はDOS問題に対処するため,米VMwareの「VMware Workstation 5.0」を使い,DOSアプリケーションを稼働させる仮想マシン環境を作った。

ドライバ・ソフトの互換性はなし
 ドライバ・ソフトの互換性は,もう1つの悩みである。私のAlphaシステムは,当時としては非常に高速なグラフィックス処理のために作られたものであり,高速なビデオ・カードとドライバ・ソフトが搭載されていた。AlphaはPCIスロットを使っていたので,理論的には何千ものアドイン・カードが利用できたはずだが,ほとんどのカードにはAlpha用のドライバがなかった。

 x64ユーザーも同じ目に会うのだろうか? 私は自分のコンピュータのイーサネット・カード用のドライバと,私がそのマシンを入手して以来,頭痛の種になっていた米NVIDIAのグラフィックス・チップ用ドライバを見つけるのに苦労した。結局,私はNVIDIAがベータ版ドライバと呼ぶものをWebサイト上で見つけた。

 しかし,ドライバのことをすべて悪者扱いにしてはいけない。x64マシン上のドライバは,Alpha用のNT 4.0ドライバとはかなり違った展開になる。第1に,XPはプラグ&プレイ技術を備えているので,ドライバを動作させるのが簡単である。第2に,多くのデバイスではジェネリック・ドライバを利用できるはずである。例えば,あなたのデジタル・カメラ用のx64ドライバがなくても,USBポートにデジカメを接続するとジェネリックなUSBストレージ・ドライバが動作する可能性がある。また,あなたのプリンタ用のドライバがないかもしれない。だが,もっと初期のプリンタ向けのドライバが,あなたのプリンタの機能の一部またはすべてをサポートするかもしれない。最も問題を起こしそうなドライバはビデオ・カードとビデオ・キャプチャ用のものになるだろう。ビデオ・キャプチャの問題に対処するために,私はキャプチャしたいビデオ・デバイスをIEEE 1394ポートに接続している。ありがたいことに,x64 Editionは私のIEEE 1394用のドライバを持っていた。

 私はMicrosoftがビデオ・ドライバの問題に対応してくれることを期待する。私は2年以内に多くの人がグラフィックス能力を評価して,例えばゲームをより高速にするという理由で,x64システムを買うのではないかと考えている。AMD64対応のCPUを搭載するマシンはまもなく安くなり,x64向けの優れたゲームがすぐ登場するだろう。私の場合,16Tバイトというx64がサポートする大規模な仮想メモリー空間を扱えるビデオ編集ツールが欲しい。私が使ったことがあるビデオ編集ソフトは,不安定でよくクラッシュしている。私は,ちょっとしたメモリーの余裕があれば,そういう不安定さを過去のものにしてくれるだろうと期待している。

 Alphaシステムは,前述のような問題があったにもかかわらず,素晴らしいコンピュータだった。親しみやすいNT 4.0のインターフェースと,x86版NTに付属するのと全く同じツール群を提供してくれた。だが,Alpha上でそれらを稼働させるのは,全く新しいものを目にするような出来事だった。それらは,信じられないくらい高速に動作したからである。その一方で,私はAlphaの速さを享受するために,Alpha専用のソフトウエアをそろえる必要があった。だが,AMD64システムに関してはそんな苦労はない。そのシステムでは,XP用32ビット・アプリケーションがそのまま問題なく動作するからだ。

x64 Editionは早期に立ち上がる
 64ビット版Windowsをあなたのマシンに載せるのは意味のあることだろうか? セカンドOSとしてなら,長い目で見ればそうだといえる。世界は,64ビットに向かって進んでいる。サーバーの世界ではいち早く,ラップトップの世界ではよりゆっくりと,デスクトップの世界ではその中間のペースで移行が進むだろう。

 NTではカーネルのメモリーへの配置され方による2,3の本質的な制限に常に悩まされてきた。x86の4Gバイトのメモリー空間から,AMD64の128Gバイトへの移行は,x64のデザイナたちがそのOSに息をつくすき間を少しは多めに与えられるようになる。当然ながら,拡張されたメモリー空間は,デスクトップ機よりもサーバー機に大きな恩恵を与えるだろう。

 2~3年以内に新しい32ビット・マシンを入手するのが難しいという状況になっても,私は少しも驚かない。もはや64ビット版Windowsの快適さを得るのを阻む理由は,何もない。もし64ビット・コンピューティングを試したいのなら,私がやったように2台目のハードディスクにXP x64 Editionをインストールすることをお勧めする。私はまだ,32ビットOSと永遠にさよならしてしまうほどには,x64 Editionを信用していない。