簡介
在win8中的路徑WoW64 (Windows On Windows64 )是一個Windows作業系統的子系統, 能夠運行32-bit 應用程式, 並且在所有的64-bit 版本的windows上都存在,包括:
Windows 2000 Limited Edition、64-bit版本的Windows XP Professional、Windows Server 2003、Windows Vista、Windows Server 2008、 Windows 7、 Windows 8、Windows 10。在Windows server 2008 R2及更高版本上, 這是一個可選組件。
WoW64被設計用來處理許多在32-bit Windows 和64-bit Windows之間的不同, 尤其是在Windows自身的結構變化上的不同。
技術特點
轉換庫
技術上說, WOW64是由三個DLL實現的:
Wow64.dll是Windows NT kernel的核心接口, 在32位和64位調用之間進行轉換, 包括指針和調用棧的操控;
Wow64win.dll 為32位應用程式提供合適的入口指針;
Wow64cpu.dll 負責將處理器在32位和64位的模式之間轉換。
註冊表和檔案系統
WOW子系統也會處理運行64-bit應用程式的其他關鍵方面。比如說, 在管理32位應用程式與windows註冊表的互動時, 會給存儲子系統提供接口(32位的註冊表與64位的註冊表不同)
作業系統使用%SystemRoot%\system32目錄來存儲64-bit的庫檔案和執行檔. 這樣做是為了向後兼容, 因為很多舊系統的應用程式都是使用hardcoded的方式來獲取這個路徑的. 當執行32位應用程式的時候, WOW64會將對DLL的請求從system32重定向到%SystemRoot%\SysWOW64, 在SysWOW64目錄中, 包含了舊系統的庫和執行檔.

