Qu'est-ce que "SysWOW64" et comment ça marche?
SysWOW64 et System32 sont-ils tous deux utilisés / chargés dans la RAM lors du démarrage de Windows 7?
Qu'est-ce que "SysWOW64" et comment ça marche?
SysWOW64 et System32 sont-ils tous deux utilisés / chargés dans la RAM lors du démarrage de Windows 7?
Réponses:
Microsoft fait parfois des choses en arrière, et c'est encore un autre exemple de cela. System32
est le 64 bits répertoire système Windows et SysWOW64
est le 32 bits répertoire système Windows - entièrement le chemin opposé autour de ce que les noms de répertoire suggéreraient.
Sous Windows, il existe un répertoire "Windows" et un répertoire "Système", et cela a été vrai jusqu'à la fin de Windows 16 bits.
Les programmes Windows sont censés les localiser à l'aide des fonctions API système telles que SHGetKnownFolderPath()
et GetSystemDirectory()
; et si tout le monde avait fait cela, le monde serait bien différent à ce stade. Mais trop de gens ont insensément câblé le nom réel du répertoire \Windows\System32
dans leurs programmes, puis ont porté ces programmes de Windows 32 bits vers Windows 64 bits. En conséquence, de nombreux programmes recherchaient des exécutables et des bibliothèques 64 bits dans le \Windows\System32
répertoire, dont ils avaient câblé le nom. (Ironiquement, il y avait le même problème lors de la migration de Windows 16 bits vers Windows 32 bits. Le répertoire "Système" 16 bits l'était \Windows\System
généralement .)
Ainsi, les employés de Microsoft ont choisi de créer \Windows\System32
le répertoire dans lequel les programmes Windows 64 bits natifs trouveraient les exécutables et les bibliothèques 64 bits, et, puisque les programmes 32 bits s'exécutent de toute façon dans une couche de calage dans Windows 64 bits , les accès au répertoire "Système" par des programmes 32 bits sont redirigés vers un nouveau \Windows\SysWOW64
répertoire.
D'où la situation bizarre qui s'offre maintenant.
WoW64 signifie Windows 32 sur Windows 64:
WoW64 (Windows 32 bits sur Windows 64 bits) est un sous-système du système d'exploitation Windows capable d'exécuter des applications 32 bits et est inclus dans toutes les versions 64 bits de Windows - y compris Windows 2000 Limited Edition, Windows XP Professional Éditions x64, versions IA-64 et x64 de Windows Server 2003, ainsi que versions 64 bits de Windows Vista, Windows Server 2008 et Windows 7.