高レベル言語の場合:64ビットまたは32ビット?
-
05-07-2019 - |
質問
OS X 10.5.7の登場により、64ビットのアプリと32ビットのアプリについて多くの議論がありました...アプリを変換する必要があるメーカー、できないメーカー特定のアプリを変換することのメリット( iTunes)などになります...
VM(.Net FrameworkやJVMなど)で実行し、「マネージコード」のみでコードを実行する場合、 (JavaではJNIなし、Rubyでこれがどうなるかわからない):
- VMが64ビットになったときに、このことを自分で知る必要なく、メリットを得ることができますかまたは
- あなたのアプリは可能なものに比べて非常に非効率的であるため(あなたは必要なことを行うのに十分な速さかもしれませんが)、本当に利益を得ませんか(変換の手間もありません)?
解決
64ビット用に開発する主な理由はメモリです。 64ビットポインターでより多くのメモリをアドレス指定できます。一部の問題のあるドメインでは、32ビットでの理論上の4GBの制限(多くの場合これより少ない)は満足のいくものではありません。
iTunesのようなものでは、大きなメモリを必要としない低電力のアプリであるため、変換はほとんど無意味です。
64ビットOSXが32ビットバイナリをどのように処理するかはわかりませんが、Windowsではエミュレーションはほぼ完璧であり、多くのアプリではアップグレードする必要はありません。
他のヒント
CLRについて話すことはできません(似ていると思います)が、64ビットJVMを使用すると、64ビットのメモリの利点がすべて得られ、変換は一切行われません。
所属していません StackOverflow