まーにゃ@エンタメ系火事場エンジニアの日々

数々の「火だるまプロジェクト」を安請け合いし何度でも復活する 「自称・不死身のエンジニア」の物欲まみれの日々をつづる

【PC編】「2020-09-15★WOW?」と「Windows on Windows64」と私

【PC編】「★WOW?」と「Windows on Windows64」と私
と題しまして小話を1つ。
現在、Windows10 64/VMWARELINUXの環境で
遊んでおります。
PCSX2はWindows32BIT版しかリリースされておらず、
さすれば、Windows64BITの下で、32BITアプリを動かす
仕掛けがあるのかとおもって調べてでてきたのが「WOW]
Windows on Windows64」
に解説がありました。

互換性が重視されるWindow OSでは、

64bit版Windows OSでも32bitアプリケーション

のサポートが必須。それを可能にするWOW64とは何か?

WOWの仕組み.jpg

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

64bit Windows向けに作られたアプリケーションを実行する場合は、

それぞれのアプリケーションごとに独立した1つの64bitプロセス空間が作成され、その中で実行される。

これに対してWin32アプリケーションを実行しようとすると、32bit版のWindows OSを

エミュレーションするための環境(32bitプロセス空間)が作成され、その中でWin32アプリケーションが

実行される。Win32アプリケーションが発行するAPIはエミュレーション用に用意された特別なDLLを経由して

64bitのOSカーネルへ渡される。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

なるほど、そういう仕組みか・・・って エミュレーション用の特別DLLを経由してパラメータ変換してる
のは、WindowsアプリをLINUXでDLL経由で動かす(WINE:Wine is not Emulator)と
やってること、近いけど、上の図を見る限り、32BITカーネルDLLとか書いてるから
1つの32BITプログラム用に極小のWindowsを1つ動かしてるイメージに近いですね。。。
へーーー。。そうなん って感じですね。
では・・また・・:_;)/