プログラムファイルとプログラムファイル(x86)の違いは何ですか?
公開: 2019-12-12ファイルエクスプローラーをざっと見て、なぜ2つのプログラムファイルフォルダーがあるのか疑問に思ったことはありませんか? フォルダを深く掘り下げると、一方には特定のプログラムが含まれ、もう一方には異なるファイルが含まれていることがわかります。 さて、これがなぜそうなのか、そしてこれら2つのフォルダが別々の機能を持っているのかどうか疑問に思うかもしれません。 ここでは、プログラムファイルとプログラムファイル(x86)フォルダーの違いを確認する方法を紹介します。
プログラムファイルとプログラムファイル(x86)の定義
15年以上にわたり、Microsoftは32ビットバージョンと64ビットバージョンの両方でWindowsオペレーティングシステムを提供してきました。 これで、64ビットのWindows OSを使用している場合、2つの別々のフォルダーがプログラムファイルを保持していることがわかります。
- プログラムファイル–このフォルダには64ビットのアプリケーションとプログラムが含まれています。
- プログラムファイル(x86)–このフォルダーには32ビットのアプリケーションとプログラムが含まれています。
Microsoftは、アプリケーションの実行可能ファイル、データ、およびその他の重要な情報を格納するようにProgramFilesフォルダーを設計しました。 64ビットWindowsオペレーティングシステムでは、64ビットプログラムがこのフォルダに自動的にインストールされます。 とはいえ、このOSバージョンは引き続き32ビットアプリケーションをサポートしています。 もちろん、64ビットと32ビットのソフトウェアが同じフォルダに混在している場合、Microsoftは技術的な問題を引き起こしたくありません。 そのため、32ビットアプリは代わりにProgram Files(x86)フォルダーにインストールされます。
32ビットプログラムを64ビットWindowsバージョンで実行する場合、オペレーティングシステムはWindows64ビット上のWindows32ビット(WOW64)と呼ばれる機能を使用します。 基本的に、WOW64エミュレーションレイヤーは、32ビットプログラムのファイルアクセスをプログラムファイルフォルダーからプログラムファイル(x86)フォルダーにリダイレクトします。 一方、64ビットアプリケーションは、ProgramFilesフォルダーにアクセスする標準的な手順を使用します。
これで、32ビットのWindowsオペレーティングシステムを実行している場合は、ProgramFilesフォルダーしかありません。 コンピューターにインストールされているすべてのアプリケーションは、このフォルダーにあります。 一方、64ビットのWindows OSを使用している場合、64ビットのプログラムはProgram Filesフォルダーに保存され、32ビットのアプリケーションはProgram Files(x86)フォルダーに保存されます。 この情報について学習したので、プログラムが2つのフォルダーにランダムに分散しているとは思わないでしょう。
32ビットおよび64ビットプログラムがデータファイルにアクセスする方法の詳細
ここで、「プログラムファイル(x86)を削除できますか?」と質問されるかもしれません。 まあ、それをするのは良い考えではないかもしれません。 プログラムファイルフォルダは、互換性機能として分割されています。 古い32ビットアプリケーションは、64ビットのWindowsOSバージョンが存在することさえ認識しない場合があります。 オペレーティングシステムは、64ビットコーディングからそれらを遠ざけるためにそれらを別のフォルダーに保存します。
32ビットアプリケーションは64ビットDLLファイルをロードできないことにも注意してください。 現在、特定のDLLファイルにアクセスしようとして、64ビットバージョンしか見つからない場合、クラッシュする可能性があります。 したがって、さまざまなCPUアーキテクチャのプログラムファイルをそれぞれのフォルダに保存することが重要です。 そうすることで、このような問題が発生するのを防ぐことができます。
このシナリオを見てみましょう。オペレーティングシステムは単一のProgramFilesフォルダーを使用しています。 これで、32ビットプログラムを実行している場合、次のパスからMicrosoft OfficeDLLファイルを見つけてロードします。
C:\ Program Files \ Microsoft Office
これで、64ビットバージョンのMicrosoft Officeをインストールした場合、アプリがクラッシュまたは誤動作します。 一方、別のフォルダがある場合、プログラムは他のDLLバージョンにまったくアクセスできません。 64ビットバージョンのMicrosoftOfficeは、C:\ Program Files \ MicrosoftOfficeに保存されます。 一方、32ビットアプリはC:\ Program Files(x86)\ MicrosoftOfficeにのみアクセスします。
個別のフォルダは、64ビットバージョンと32ビットバージョンの両方が付属するプログラムにも役立ちます。 両方を同時にインストールすると、64ビットバージョンはプログラムファイルに保存され、32ビットバージョンはプログラムファイル(x86)に保存されます。 ここで、オペレーティングシステムがプログラムファイルに単一のフォルダーを使用する場合、開発者は64ビットバージョンを別の場所に保存するようにアプリケーションを設計する必要があります。

64ビットのWindowsOSで32ビットのアプリケーションを実行するのは有害ですか?
64ビットのWindowsオペレーティングシステムで32ビットのプログラムを実行することについて心配する必要はありません。 前述したように、WOW64は優れた32ビット環境をエミュレートします。 一般に、パフォーマンスの低下は目立ちません。 エミュレートされたアプリケーションには優位性があることに気付くかもしれません。 結局のところ、WOW64は最大RAM量をそれらに割り当てることができます。 x86 Windows OSで32ビットプログラムを実行している場合、そのRAMのかなりの部分が他の実行中のアプリケーションとオペレーティングシステムカーネルに割り当てられます。
x86の代わりに32ビットではないのはなぜですか?
32ビットおよび64ビットアーキテクチャに関しては、通常、それぞれ「x86」および「x64」と呼ばれます。 この背後にある理由は、古いPCにはIntel8086チップが搭載されていたためです。 元々、チップは16ビットでした。 ただし、新しいバージョンは32ビットになりました。 最近では、64ビットアーキテクチャより前に登場したすべてのもの(16ビットか32ビットかを問わず)はx86と呼ばれています。 一方、64ビットバージョンは一般にx64と呼ばれます。
したがって、Program Files x86が表示されている場合は、16ビットまたは32ビットのCPUアーキテクチャを使用するプログラム用のフォルダであることを意味します。 補足として、64ビットのWindowsオペレーティングシステムは16ビットのプログラムを実行できないことを覚えておく必要があります。 そのためには32ビットOSが必要です。
プログラムをインストールする場所を手動で選択する必要がありますか?
Windowsはアプリケーションを正しいフォルダにインストールするため、これについて心配する必要はありません。 どこに保存されていても、プログラムはスタートメニューに表示され、問題なく機能します。 Program Filesフォルダーを使用する代わりに、64ビットと32ビットの両方のアプリケーションがユーザーのデータをProgramDataフォルダーとAppDataフォルダーに保存します。 ファイルを保存するプログラムファイルフォルダをプログラムに自動的に決定させることができます。
プログラムが他のフォルダに自分自身をインストールした場合はどうなりますか?
理想的には、アプリケーションはプログラムファイルとプログラムファイル(x86)フォルダーのみを使用する必要があります。 ここで、プログラムが他の場所にインストールされていることに気付いた場合は、疑わしいはずです。 ファイルに感染し、オペレーティングシステムの手綱をゆっくりと保持しているマルウェアである可能性があります。 確かに、コンピュータを保護するために信頼できるアンチウイルスを使用することをお勧めします。

マルウェア対策でPCを脅威から保護する
アンチウイルスが見逃す可能性のあるマルウェアがないかPCをチェックし、AuslogicsAnti-Malwareを使用して脅威を安全に削除します
世の中には多くのセキュリティアプリケーションがありますが、AuslogicsAnti-Malwareは包括的な保護を提供できる数少ないアプリケーションの1つです。 バックグラウンドでどれほど慎重に動作していても、脅威を検出できます。 したがって、悪意のあるプログラムがオペレーティングシステムをゆっくりと制御することはないという安心感を得ることができます。
x86CPUアーキテクチャよりもx64OSの方が好きですか?
私たちはあなたの考えを聞いてみたいです! 以下のコメントでそれらを共有してください!