OSNewsの「Snow Leopard Seeds Use 32bit Kernel, Drivers by Default」というレポートは、少なからずMacユーザーの注目を集めたようだ。23日時点で100近いコメントが書き込まれている。マイコミジャーナルでも「64bit完全対応のSnow Leopard、実はデフォルト起動は32bitカーネル!?」で取り上げており、アクセスランキングの上位に食い込んでいた。
同レポートはMac OS X Snow LeopardのBuild 10A432では、ほとんどのMacが32bitカーネルで起動すると指摘している。標準で64bitカーネルが起動するのはXServeのみだという。リリース前段階のビルドをベースにしているとは言え、32bitカーネル起動の事実は興味深いものだ。ただレポートが "64bitフル対応を謳うなら64bitカーネルで起動すべき" という論調で書かれており、まるでAppleが32bitでしか使えないOSを64bit OSとして宣伝しているかのように読める。実際、このレポートを読んでSnow Leopardでは64bitのメリットを受けられない思うMacユーザーや、これじゃインチキじゃないかというような反応が見られるのが気になるところだ。
Macユーザーはいつの間にか64bitに
Windowsでは、Windows Vista Ultimateなどの一部をのぞいて32bit版と64bit版が別々に販売されており、ユーザーがどちらかを選択し、それぞれに対応するドライバとアプリケーションを揃える必要がある。Mac OS Xに64bit版はない。Appleは1つの製品で32bit/ 64bitに対応しようとしている。
まずTiger(10.4)でUNIXレイヤ部分を64bit化し、続くLeopard(10.5)で64bitアプリケーション(Cocoa)に対応した。今日のMac OS Xでは、64ビットの仮想メモリを利用でき、4GB以上の物理メモリを扱える。そして32bitのカーネル/ ドライバで、32bitと64bitの両方のアプリケーションが動作する。
ただし64bit対応アプリケーションは少なく、Leopard付属のアプリケーションでもごく一部にとどまる。Snow Leopardは64bitカーネルを備え、OS付属のアプリケーションが64bit化される。これが意味するところは、最大160億GB(=16EB)のメモリを扱える64bitカーネル上で64bitアプリケーションが動作する完全な64bit環境にも対応できる"可能性"だ。
では今日のMacはというと、PAEテクノロジによって最大32GBのメモリを扱える。現行モデルのメモリ積載量はMacBookが最大4GB、MacBook Proが同8GB、iMacが同8GB、そしてハイエンドのMac Proが同32GBだ。Mac OS Xのハイブリッド・モデルでは起動カーネルが32bitと64bitのどちらであっても、64bit対応のアプリケーションは64bitモードで動作する。32bitの世界では1プロセス4GBまでという制限があるものの、64bitカーネルが明らかに有利になるのはメモリが32GB超からだ。そのようなMacが存在しない現行モデルでは、64bitカーネルで起動するメリットは、それほど大きくない。むしろ64bit版のデバイスドライバが揃っていない扱いにくさの方が深刻な問題であり、現状では32bitカーネルの方が現実的に思える。その上でSnow Leopardは、64bitへの完全移行、そして32GB以上のメモリを搭載するような将来のMacも見通せるOSである。
Appleが最優先するのはユーザー体験だ。64bit対応においても、ユーザーに32bitと64bitの違いを意識させずに、いつもの環境で32bit/ 64bitアプリケーションの動作を実現し、着実に64bitへと進んでいく。スマートなやり方だ。
OSNewsのレポートは、こうしたAppleの64bitへの移行ステップや、現状における32bitカーネルのメリットなどには触れずに、32bitカーネル起動の理由を「ハードウエアの問題」と「製品差別化のための意図的な制限」などでまとめている。この推測への話の導き方が強引すぎて、32bitカーネル起動では64bitのメリットを享受できないような印象を読者に与えている。
5年前の64bitと今日のHTML5
さて長々とOSNewsのレポートへの疑問点を書いたのは、64bitへの移行がニワトリとタマゴに陥っているからだ。x86-64が発表されたのが2000年。AMDが躍進し、2004年のMicrosoftのハードウエア開発者会議ではBill Gates会長が64bitドライバの開発を強く訴えた。あとはメモリ価格さえ下がれば、64bitの世界はもう目の前という雰囲気だった。ところが、今だに64bitは一般ユーザーに浸透していない。デバイスドライバが充実していないから、どちらか1つとなれば、ユーザーは使い勝手の良い32bit版のWindowsを購入する。ユーザーが広がらないから開発者の64bit対応が進まない。このニワトリとタマゴを打ち破るために、ついにWindows 7で32bit版と64bit版が同梱されることになった。
64bit化のような大きな移行は、OS、ハードウエア、ソフトウエアなどのベンダー、開発者、そしてユーザーが揃って歩を進めるような取り組みが必要だ。このバランスが崩れると遅々として進まなくなる。こうした例はテクノロジ産業では枚挙にいとまなく、今日ではHTML5にも同様の懸念が持たれている。
少し前に「HTML5を今日のブラウザで使う - Operaのエバンゲリストが実験」という記事を書いた。Operaのオープン標準エバンゲリストBruce Lawson氏が、現在のWebブラウザで表示できるように自身のブログをHTML5で再デザインした講演のレポートだ。同氏がこのような講演を行っているのは、IT産業の現場とユーザーを巻き込んだ今日のHTML5の盛り上がりを維持するためだという。
昨年9月にHTML5仕様のエディターであるIan Hickson氏が、HTML5の勧告候補を2012年、最終的なW3C勧告は2022年以降という見通しをインタビューで示してちょっとした騒ぎになった。仕様スケジュールとはいえ2022年である。そんな気の長い話になると、開発者はとりあえず時間の投資は控えておくか……となり、そのままニワトリとタマゴに陥りかねない。それを避けるためにGoogleやMozilla、Apple、Operaなどの支持グループは積極的にHTML5機能を実装し、それがユーザー、開発者やビジネスを巻き込んだ今日のムーブメントにつながっている。
OSNewsがハイブリッド・モデルの32bitカーネル起動をネガティブに受け止めているのと同じように、そのうちWebブラウザのばらついたHTML5サポートにも「ホンモノのHTML5対応なのか?」という疑問符がつけられる可能性がある。そうした見方も尊重すべきだが、それは大きな移行の価値とユーザーが受け取るメリット/ デメリットも同時に議論されてこそである。大事なのは、ユーザーが足踏みすることなく、安心して新しい世界を踏み込んでいける環境づくりだ。