質問: スマホの64bit化と4m以上のram スマホの64bit化と4m以上のram iphone 5sには、cpuに「apple a7(64bit)」が搭載され、ramは1gですね。 また同様に、(64bitのcpuとして、)androidのスマホには、「snapdragon 410」が、2014年後半での市場投入が予想されているとの事。 >>http://gigazine.net/news/20131210-qualcomm-snapdragon410/ では、ramが4g以上搭載され製品が、実際に市場投入されるのは、いつ頃になると思いますか? iphoneだと、既に、osの「ios7」がネイティブで、64bitに対応済みですが、 iphone7が出る頃には、ramが4g以上搭載された物になるのでしょうか? androidだと、現在osは、ver.4.4 (kitkat)ですが、おそらく次期ver.5では、os自体が64bit化するとは思いますが、ramを4g以上搭載した製品は、いつ市場に投入されると思いますか?
回答: まず、windowsとは異なり、linux系osでは、3.25gb(windows mmioの仕様による)で認識できなくなるといった問題はありません。そのため、4gbまでは確実に認識できます。ただし、snapdragonやatom、tegraなどのcpuは、グラフィックスコントローラーがメインメモリをビデオメモリとして使うuma方式を使っていますので、4gbメモリを搭載していても、メインメモリとして認識されるのは、それ以下となります。 グラフィックスメモリが別立てなら、4gbのramが搭載されていれば、4gbを認識します。 また、cpuとソフトウェアがpaeに準じていれば、kernel-paeを使えば、4gb以上のメモリ空間もサポートできますので、現実を言えば喫緊で64bitにネイティブ対応させなければならない理由があるとは言い難いのです。ただ、一つのアプリケーションで4gb以上を使う場合や、64bitaluの演算幅を必要とするような高度なデータ処理があれば、別です。 そういう意味では、タブレットなどの64bit化は進むかも知れません。問題は、スマートフォンはnandフラッシュなどのssd媒体がどこまで、容量を安価に増やすことが出来るかに依存することでしょう。 メモリーが増えると言うことは、キャッシュやディープスリープに使う仮想メモリも増えますから・・・、メモリだけがどんどん増えても、安定性がどんどん高まる訳ではありません。 本題です。 q/iphone7が出る頃には、ramが4g以上搭載された物になるのでしょうか? a/必要性がなければ、暫く登場することはないでしょう。強いて言えばディスプレイの解像度がどんどん上がれば、シェアードするグラフィックスメモリが多くなるため、2gbや4gb以上になるかも知れませんが・・・それらは、メインメモリとしてカウントされませんので・・・。ソフトが演算に必要とする容量が増えれば、内蔵のrom(ssd)容量も大きく必要となりますので、あまりアプリに多くのメモリを割り当てられるように増強するのは、良い手段ではありません。スマートフォンにそこまでの容量を求めるかが疑問です。 iphoneが64bitバイナリ化されたのは、32bitバイナリとの互換性が確保されていることと、pcとの親和性を高めること、さらに一般ユーザーに対してイメージアドバンテージを見せるだけの戦略です。 appleとしての利点は、64bitバイナリに早期に移行することで、今後ソフトウェア開発などが容易になるという点と、androidより一般素人に凄いosなのだと感じさせる力が発生します。 実際には、その必要があるアプリはさほど無いと言えます。 androidの弱みをうまく突いたとも言えます。 q/androidだと、現在osは、ver.4.4 (kitkat)ですが、おそらく次期ver.5では、os自体が64bit化するとは思いますが、ramを4g以上搭載した製品は、いつ市場に投入されると思いますか? a/まず、androidでは、オープンソースプロジェクトとして、64bit版と32bit版の両方が開発されています。要は、開発チームとしては両方が平行して動いているのです。ただ、実際に製品として投入できているのは、32bit版のみです。これには理由があり、全てのバイナリレベルで、64bitにすると、vm(バーチャルマシーン/仮想環境)の仕様が大きく改変されるためです。 下手をすると、今の低容量で動くアプリケーションが、メモリ馬鹿食いになる恐れすらあります。 そのため、幾度も64bit化が噂されては、次のバージョンでという話になるのです。 厳密には、kitkatではインテルが64bit版のbay trail対応kitkat(android4.4)の投入を今年の中盤までに行うと示唆しています。 グラフィックスメモリを含めれば、4gb程度のramは載るでしょう。(osが認識するメモリ領域として4gbを越えるとは限りません。グラフィックスが2gbや1gbでメモリは2~3gbとなることも多々あります)これが、vmも含めて全てを64bitベースにする訳ではなく、カーネルドライバのみが64bit化されます。 これだけなら、来年(2015年)までにはarm版も64bit対応が完了するはずです。ただし、この方法では、ハードウェアドライバは64bit対応ですが、アプリケーションサービスは32bitになるため、メモリ管理は、kernel-paeを使っているときと同等になるでしょう。要は、1アプリケーションが使えるメモリ容量は変わらず、さらに64bitcpuの恩恵もフルには受けられない可能性があります。 androidでは、アプリケーションは全てvm上で動き、それがandroidと呼ばれるosの特徴なのです。 そして、このvmが64bit化されたときに初めて、正規64bitとなります。dalvikあたりで、web検索されると良いでしょう。