前編に引き続き、次期Mac OS X「Snow Leopard」の細部に迫っていく。
目次
進化のためには64bit化が必須
デベロッパーにとっては、Mac OS Xの64bitとマルチコアへのコミットも興味深い。
Intel CPUへの移行期だった2年前から今に至るまで、CPUの動作クロックは標準2GHz、最大でも3GHz程度というのは変わっていない。2、3年もあればクロックが倍増していたかつての状況と異なり、今後、CPUの動作クロックが劇的に向上することはない。
CPUに加えて、メモリーにも転機が訪れている。現在では、エントリーレベルのMacですら4GBを越えるメモリーを搭載可能になっており、ハイエンドのMac Proなら48GBまで拡張可能だ。にもかかわらず、32bitのアプリケーションでは、理論的な上限でも4GBまでのメモリーしか扱えず、実際にはもっと少ないメモリーしか同時に使えない。
そこで重要になってくるのが、ハードウェアとソフトウェアの64bit対応だ。
フル64bit化することで、より効率のいい演算命令が使用可能になり、最大16EB(エクサバイト、1GBの160億倍!!)のメモリーにアクセスできるようになる。64bit化は昨今のハードウェアを活かすために必要な進化なのだ。
なぜWindowsでは64bit移行が難しいか
もちろん、この辺の事情はほかのOSでも同じだ。例えばSnow Leopardの発売から1ヵ月以上遅れて発売されることになるWindows 7でも、オープンソースのLinuxでも、64bit化はうたわれている。しかし、どちらも64bit版はほとんど普及していない。それは何故か?
そう、ほとんどのケースで32bit版と64bit版を別製品として販売しているからだ。
OSのカーネルが64bitになると、これまでのデバイスドライバが使えなくなる。デバイスドライバはOSにプラグインされるため、カーネルのビット数と同じビット数のバイナリを用意しなければならない。
しかし、ほとんどの商用デバイスドライバは32bitのバイナリしか用意されていない。すると、ユーザーからすれば「制限はあるが使い勝手のいい32bit」か「制限は外されるが使い勝手の悪い64bit」から選択しなければならなくなる。
一方、開発者の立場で見ても、32bit/64bitと分かれているのはなかなか扱いにくい。
32bitと64bitで別製品として販売した場合、あるいは双方をひとつの製品に含めたときでも、「どちらか適切なビットのバイナリを購入/インストールしてください」と利用者に意識的な選択を求めなければならない。ギークなユーザーならともかく、普通のユーザーにとって自分のPCが64bit対応か32bitだけかを意識しなければならないというのは、非常に面倒だ。
Windows XPでもVistaでも、64bit版は用意されていたがほとんど普及しなかったのはこうした理由からだ。あまりに進まない64bit化に業を煮やしたのか、Windows Serverでは今後64bit版しか出さないという強硬手段をもって64bit化を強制している。
この連載の記事
-
第14回
iPhone
OS Xを加速する「GCD」「OpenCL」という新技術 -
第12回
iPhone
ジョブズという「One More Thing」は必要なかった -
第11回
iPhone
iPhone 3.0、知っておきたい6つの「画期的」新機能 -
第10回
iPhone
林信行に聞く「Mac&iPhoneの未来予想図」 -
第9回
iPhone
まとめて読むiPhone 3G Sの魅力 WWDC 2009基調講演【後編】 -
第8回
iPhone
写真でわかる、iPhone OS 3.0新機能 WWDC 2009基調講演【中編】 -
第7回
iPhone
開発者が見る、ここがスゴいぞ新iPhone -
第6回
iPhone
iPhone for everybodyでiPhone 3G Sが安く買える -
第5回
iPhone
Snow Leopardも出没! WWDC 2009基調講演【前編】 -
第4回
iPhone
値下げで魅力UP MacBook Pro&Air新機種が登場 - この連載の一覧へ