今夜も Wine で乾杯! ..
[2ch|▼Menu]
53:login:Penguin
16/03/26 10:47:23.67 5E6K/NAH.net
>>52
なんでWOW64より互換性の高いLinux x86_64のx86実行機能があるのに、WOW64に
対応しないといけないの?
WOW64が作られた目的や仕組みわかってる?
WOW64はx86_64でwin32バイナリを動かすために作られたものではない
WOW64は、元々は、x86コードの実行性能が悪かったりx86互換機能が削除されている
Itaniumでwin32バイナリを動かすために作られたもの
これをx86_64版Windowsにも流用したので、x86_64版WOW64はWIN32APIレベルでの
互換性のみ対応しており、システムコールを直接呼び出すx86バイナリは実行できず、
WOW64のx86版ntdll.dll、kernel32.dll、gdi32.dll等システムコールを呼び出すものは、
対応するx86_64版のdllのAPIを呼び出すサンクとして実装されている
その代わり、WOW64はARM用CPUエミュレータを実装するだけでARMでもwin32バイナリを
実行するための仕組みとして使えるようになっている
WOW64の具体的な仕組みは
URLリンク(msdn.microsoft.com)
これに対して、LinuxやMacOSはx86_64に素直に対応しているので、システムコール等を
含めて全てのx86バイナリが実行でき、この仕組み上でx86版wineを動かせば全く問題なく
win32バイナリは動作するので、わざわざWOW64のような余計な仕組みは不要だし、
この仕組みを使わない方が不自然な形になってしまう
また、ARMでwin32バイナリを実行したいなら、qemuのユーザーモードを使うことで可能
URLリンク(www.slideshare.net)


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

2930日前に更新/29 KB
担当:undef