Quina diferència hi ha entre les carpetes "System32" i "SysWOW64" al Windows?

A les versions de Windows de 64 bits, teniu dues carpetes de fitxers de programa diferents. Però no acaba aquí. També teniu dos directoris de sistema separats on s’emmagatzemen les biblioteques i executables DLL: System32 i SysWOW64. Malgrat els noms, System32 està ple de fitxers de 64 bits i SysWOW64 és ple de fitxers de 32 bits. Llavors, què dóna?

Què és System32?

RELACIONATS:Què són els fitxers DLL i per què en falta un al meu PC?

El directori System32 conté fitxers del sistema de Windows, tant fitxers de biblioteca .DLL utilitzats pels programes com utilitats de programes .EXE que formen part de Windows. Tot i que la majoria dels fitxers que trobareu aquí formen part del sistema operatiu Windows, de vegades els programes de programari de tercers instal·len els seus propis fitxers DLL en aquesta carpeta.

Les aplicacions que s’executen al sistema es poden instal·lar a la carpeta Program Files o a qualsevol altre lloc, però sovint carreguen biblioteques de tot el sistema des de la carpeta System32.

Separació de biblioteques de 32 i 64 bits

RELACIONATS:Quina diferència hi ha entre les carpetes "Fitxers de programa (x86)" i "Fitxers de programa" al Windows?

En una versió de Windows de 64 bits, teniu una carpeta C: \ Program Files que conté programes de 64 bits i els seus fitxers, i una carpeta C: \ Program Files (x86) que conté programes de 32 bits i els seus fitxers. És útil que es separin aquests fitxers perquè els programes de 64 bits necessiten fitxers DLL de 64 bits i els programes de 32 bits necessiten fitxers DLL de 32 bits.

Si un programa de 32 bits carrega un fitxer DLL que necessita, troba una versió de 64 bits i intenta carregar-lo, es bloquejarà. En separar el programari de 64 i de 32 bits en dues carpetes de fitxers de programa diferents, Windows garanteix que no es barregin i causin problemes.

Tot i això, no tots els fitxers DLL s’emmagatzemen a Program Files. Moltes biblioteques de tot el sistema incloses amb Windows s'emmagatzemen a C: \ System32, i alguns programes també buiden els seus propis fitxers de biblioteca aquí. Així, de la mateixa manera que Windows té carpetes de fitxers de programa de 32 i 64 bits separades, també té versions separades de 32 i 64 bits de la carpeta System32.

System32 i SysWOW64

En un ordinador de 32 bits, tots els programes de 32 bits emmagatzemen els seus fitxers a C: \ Program Files i la ubicació de la biblioteca a tot el sistema és C: \ System32.

En un ordinador de 64 bits, els programes de 64 bits emmagatzemen els seus fitxers a C: \ Program Files i la carpeta C: \ Windows \ System32 de tot el sistema conté biblioteques de 64 bits. Els programes de 32 bits emmagatzemen els seus fitxers a C: \ Program Files (x86) i la carpeta de tot el sistema és C: \ Windows \ SysWOW64.

Definitivament, això és contraintuitiu. Tot i el "32" del nom, la carpeta System32 conté biblioteques de 64 bits. I, malgrat els 64 del nom, la carpeta SysWOW64 conté biblioteques de 32 bits, almenys en versions de Windows de 64 bits.

En general, no cal que ho sàpiga. El sistema operatiu Windows i els programes que utilitzeu situen automàticament els fitxers a la ubicació correcta i utilitzen la carpeta correcta. Tanmateix, si mai heu d’instal·lar manualment un fitxer DLL a la ubicació correcta o trobar on s’instal·la un fitxer (cosa que és molt escassa), haureu de saber quin és quin.

WOW64, explicat

RELACIONATS:Per què la majoria de programes continuen sent de 32 bits en una versió de Windows de 64 bits?

La part "WOW64" del nom aquí fa referència al programari de Microsoft "Windows 32 bits a Windows 64 bits", que forma part del sistema operatiu. Això permet que Windows executi programes de 32 bits en una versió de Windows de 64 bits. WoW64 redirigeix ​​l'accés als fitxers per garantir que els programes funcionin correctament.

Per exemple, si instal·leu un programa de 32 bits en una versió de Windows de 64 bits i intenta escriure a la carpeta C: \ Program Files, WoW64 el dirigeix ​​a C: \ Program Files (x86). I, si vol accedir a la carpeta C: \ Windows \ System32, WoW64 la dirigeix ​​a C: \ Windows \ SysWOW64. Windows ho fa mitjançant un redirector del sistema de fitxers.

Tot això passa de forma automàtica i transparent en segon pla. El programa ni tan sols ha de saber que s’executa en un sistema operatiu de 64 bits, que permet executar programes antics de 32 bits sense modificacions a les versions de Windows de 64 bits. WOW64 també redirigeix ​​l'accés al registre, garantint que hi ha àrees separades del registre per a programes de 64 i 32 bits.

Llavors, per què System32 és de 64 bits i SysWOW64 de 32 bits?

Tot això ens torna a la pregunta milionària: per què la carpeta "System32" és de 64 bits i SysWOW64 de 32 bits?

La resposta sembla ser que moltes aplicacions de 32 bits estaven codificades per utilitzar el directori C: \ Windows \ System32. Quan els desenvolupadors van recopilar aquestes aplicacions per a versions de Windows de 64 bits, van continuar utilitzant el directori C: \ Windows \ System32.

En lloc de canviar el nom del directori i obligar els desenvolupadors a passar al nou, trencant moltes aplicacions del procés, Microsoft va deixar "System32" com a directori de biblioteca de sistema estàndard. Van crear un nou directori de biblioteques per a aplicacions que s'executaven sota la capa WoW64, que van anomenar "SysWOW64". Quan s’ho pensa així, el nom té més sentit.

Sí, és una mica ximple que ara un directori amb el nom "32" tingui 64 bits. Potser Microsoft hauria d’haver vist això arribant quan el van anomenar C: \ Windows \ System32 als anys 90. Però, tot i que seria bo un esquema de noms més senzill, no val la pena trencar un munt de programes i crear més feina per als desenvolupadors només per arribar-hi. Això significa que estem enganxats amb System32 i SysWOW64 per al futur previsible.


$config[zx-auto] not found$config[zx-overlay] not found