SysWow64フォルダとは何ですか?

  


64ビットWindowsは、すべてを64ビットにコンパイルするという問題ではありません。 64ビットCPUの外観については、IntelとAMDが独自の計画を立てていました。 AMDの答えは簡単です。新しい64ビットプロセッサは、処理能力を高めながら、32ビットアプリケーションとの互換性を維持できるはずです。 Intelはこの機会を利用して、次世代のプロセッサをより完璧になるように設計したいと考えています。それで、AMDのx86-64(後でamd64と呼ばれる)プロセッサとIntelのIA-64(Itanium)プロセッサがあります。 amd64とは異なり、Itaniumプロセッサは32ビットアプリケーションを適切にサポートしません。特定の情報は、読者はインターネット上で見つけやすいはずです、それは多くを言わないでしょう。
Windowsは、オペレーティングシステムとして、ユーザーが64ビットオペレーティングシステムを実行しながら、以前と同様にさまざまな32ビットアプリケーションを実行できることを当然望んでいます。これはamd64プロセッサでは比較的簡単です。そして、Itaniumもほぼ別の問題です。 (後で、Intelもamd64互換のプロセッサを製造しましたが、それは後記でした。)
私は「比較的」簡単にできると言っていますが、それは空の手袋ではありません。オペレーティングシステムが64ビットで実行されている場合、既存の32ビットアプリケーションが32ビットシステムでまだ実行されていると判断することを保証するにはどうすればよいですか。マイクロソフトの解決策は、次のとおりです。Wow64、フルネームは64ビットWindows上の32ビットWindows(64ビットWindows上の32ビットWindows)です。
システム全体が64ビットモードで実行されているにもかかわらず、1つのプログラムが32ビットの場合、Windowsは64ビットベースで "32ビットWindows"をロードします。このように、32ビットアプリケーションは32ビットシステム上で実行されていると見なします。
それで、想像することができる、これは64ビットWindowsが、64ビットオペレーティングシステムが持っているべきであるシステムファイルだけでなく、32ビットシステムが持っているべきであるシステムファイルでも意味する。
私たちが知っているのは、WindowsシステムのメインシステムファイルがSystem32というフォルダーにあるということだけです。同時に2セットのシステムファイルをドロップできるようにするために、Windowsは64ビットシステム上にSysWow64というフォルダを追加します。これは、32ビットのシステムファイルを置く64ビットのシステムファイルを置く、System32とSysWow64、問題がありますか?
Wow64が64ビットWindows上の32ビットWindowsを参照していることを覚えているなら、SysWow64で32ビットシステムファイルを考えることができます。しかし、System32という名前のフォルダに64ビットのシステムファイルがロードされ、SysWow64という名前のフォルダが32ビットのシステムファイルになっているのはなぜでしょうか。 64ビットシステムなので、System64やSystem32のようなフォルダを作成できないのはなぜですか?
この質問はとても良いです。答えは非常に簡単です:人々は川や湖にいて、彼ら自身を助けることができません。
互換性
Itaniumプロセッサにアクセスしたことがある可能性はどれくらいありますか。私は、普通の人にとっては、ないはずだと思います。それでは、なぜamd64が一般的になるでしょうが、Itaniumプロセッサはあまり知られていないのでしょうか。あるいは、ハードウェアとソフトウェアの設計における重要な概念のために、互換性があります。
Itaniumプロセッサが原因で既存の32ビットシステムを適切にサポートしていないため、市場の最先端にあります。これは、アナログ信号チャンネルが見えないHDTVを購入しないのと同じ理由です。
前に説明した互換性は、64ビットWindows上の既存の32ビットアプリケーションとの互換性に関するものです。今別の互換性を検討してください。
非常に優れた32ビットアプリケーションを作成する場合は、64ビットプロセッサの新しい処理能力を最大限に活用するために、今度はそれを64ビットアプリケーションに変える必要があります。これを再コンパイルするのは、これが64ビットコンパイラの終わりではないと考える必要がありますか?多分あなたはこれが細いの現実ではないことがわかった。あなたは突然あなたのプログラムの中に、あなたがそれを考えることができない何らかの理由で、あなたのプログラムにSystem32フォルダを書くことを発見しました。そしてSystem32のこの32はあなたをとても怒らせます。あなたはあなたのプログラムを実行しようとしました、そして、すべてが動いているのを見つけました。なんで?これはWindowsシステムに対するもう1つの互換性のための取り組みです。既存の32ビットアプリケーションを、可能な限り変更や修正を加えずに64ビットアプリケーションと64ビットWindowsにコンパイルできるようにします。実行します。実際、System32のようなパスをプログラムに記述するのは事実ではありません。そのため、これらのアプリケーションが64ビットにスムーズに移行できるようにするために、Windowsはついに64ビットシステムファイルをSystem32フォルダに置くことにしました。そして32ビットシステムファイルをSysWow64に移動させてください。
32ビットからSysWow64に移行した後、32ビットアプリケーションに書き込むSystem32についてはどうでしょうか。 A:WindowsはそれらをSysWow64に変えます。 System32と64ビットのSystem64は同じではないでしょうか。本当に同じ?違いますか?本当に同じ?違いますか?本当に違います。
64ビットWindowsオペレーティングシステムとして、もちろん、64ビットプロセッサの可能性を最大限に活用して、アプリケーションをより効率的に実行できるようにしたいと思います。 64ビットアプリケーションを実行している場合は、プログラムを変更する必要があるかどうかを常に確認してください。これはプログラムの効率に影響します。そのため、64ビットアプリケーションに不要な変更を加えることはできませんし、変更する必要がある場合は、32ビットアプリケーションに切り替えることしかできません。はい、64ビットオペレーティングシステムでは、32ビットアプリケーションで少し犠牲を払う必要があります。
さらに、32ビットアプリケーションが64ビットアプリケーションと競合しないようにするために、System32フォルダに加えて、レジストリでは32ビットと64ビットの2つのセットを用意し、32ビットアプリケーションを必要にする必要があります。リダイレクトされました。
結論
SysWow64フォルダは64ビットWindowsで、32ビットWindowsシステムファイルを格納するために使用されます。
Postscript
互換性は重要なことです。もちろん、それはまた非常に興味深いことです。 Windows 7で" winver"を実行すると、Windows 7はもともとWindows 6.1だったことがわかります。なんで?この場合、Windows XPはWindows 5.2、Windows Vistaは6.0になっています。その結果、多くのアプリケーションはオペレーティングシステムのバージョン番号の最初のビットをチェックし、5ではないことを確認します。 Windows XPの以前のシステム - 'これも失敗したWindows Vistaから学んだ教訓です。たぶん、将来的にはWindows 7.0はないでしょう。

Copyright © Windowsの知識 All Rights Reserved