x86を対象とする.NET EXEはAMDチップで実行されますか?
-
10-07-2019 - |
質問
.NETアプリのx86プラットフォームをターゲットにした場合、AMDチップ上で適切に動作しますか? Intelチップで動作し、Vista 64がx86アプリを特別なモードで実行する機能を持っていることは知っていますが、ハードウェアとOSの量はわかりません。
Vista 64でIntelチップを使用してテストしましたが、完全に動作しますが、テストするAMDマシンはありません。
解決
はい-それらはバイナリ互換性があり、そうでなければ、お互いのドロップイン置換ではありません:)
IA64対AMD64を意味する場合を除き、これらは互換性のないアーキテクチャです。
他のヒント
はい、動作しますが、64ビットプロセスに対して32ビットプロセスとして実行されます。抽象化層は、サブシステムを導入することにより、OSレベルで実行されます。 Wow64(Windows 64上のWindows)と呼ばれます。これにより、32ビットプロセスを64ビットマシンでネイティブに実行できます。
低レベルのカーネル統合を行う場合にのみ故障します。 .Netアプリで行っていないことのようです。
正常に動作します
これはIntelやAMDとは関係ありません。同じハードウェアアーキテクチャのすべてのブランドで動作します。 32ビットアプリケーションは、32ビットOSおよび64ビットOSで実行できます。 64ビットアプリケーションは、64ビットOS(および64ビットハードウェア)でのみ実行されます。
ここで重要なのは、.NETコードがCLRを対象としていることです。したがって、プロセッサレベルの問題はここでカバーする必要があります。これは確かにわかりませんが、 / 64。
所属していません StackOverflow