Pe versiunile de 64 de biți Windows, aveți două foldere separate la un program. De asemenea, aveți și două directoare de sistem separate, în care sunt stocate biblioteci și executabile DLL: System32 și SysWOW64. În ciuda numelor, System32 este plin de fișiere pe 64 de biți și SysWOW64 este plin de fișiere pe 32 de biți. De ce?

Ce este System32?

Directorul System32 conține fișiere de sistem Windows, ambele fișiere DLL utilizate de programe și utilitare de program .EXE care fac parte din Windows. În timp ce majoritatea fișierelor pe care le găsiți aici fac parte din sistemul de operare Windows, programele software de la terțe părți instalează uneori propriile lor fișiere DLL și în acest folder.

Aplicațiile care rulează pe sistemul dvs. pot fi instalate în folderul Program Files sau în altă parte, dar ele încarcă adesea dosare de sistem din folderul System32.

Separarea dosarelor 32 și 64 de biți

Pe o versiune pe 64 de biți a Windows, aveți un folder C: \ Program Files care conține programele de 64 de biți și fișierele acestora și un folder C: \ Program Files (x86) care conține programe pe 32 de biți. Este util ca aceste fișiere să fie separate, deoarece programele pe 64 de biți necesită fișiere DLL pe 64 de biți, iar programele pe 32 de biți necesită fișiere DLL pe 32 de biți.

Dacă un program pe 32 de biți merge să încarce un fișier DLL de care are nevoie, găsește o versiune pe 64 de biți și încearcă să o încarce, se va ”prăbuși”. Prin separarea software-ului de 64 de biți și de 32 de biți în două foldere diferite de programe, Windows asigură că acestea nu se vor amesteca și nu vor cauza probleme.

Cu toate acestea, nu toate fișierele DLL sunt stocate în Fișierele programului. Multe biblioteci de sistem incluse în Windows sunt stocate în C: \ System32, iar unele programe le aruncă și dosarele proprii. Deci, la fel cum Windows are foldere separate de fișiere pe 32 de biți și 64 de biți, el are, de asemenea, versiuni separate pe 32 de biți și pe 64 de biți ale folderului System32.

System32 și SysWOW64

Pe un computer 32 de biți, toate programele 32 de biți își stochează fișierele în C: \ Program Files, iar locația bibliotecii la nivel de sistem este C: \ System32.

Pe un computer pe 64 de biți, programele pe 64 de biți stochează fișierele în C: \ Program Files, iar folderul C: \ Windows \ System32 la nivel de sistem conține dosare pe 64 de biți. Programele pe 32 de biți stochează fișierele în C: \ Program Files (x86) și folderul la nivel de sistem este C: \ Windows \ SysWOW64.

Acest lucru este cu siguranță contraintuitiv. În ciuda „32” în nume, folderul System32 conține fișiere pe 64 de biți. Și, în ciuda numelui 64, dosarul SysWOW64 conține dosare pe 32 de biți – cel puțin pe versiunile 64 de biți ale Windows.

În general, nu va trebui să știți acest lucru. Sistemul de operare Windows și programele pe care le utilizați își plasează automat fișierele în locația corectă și utilizează dosarul corect. Cu toate acestea, dacă vreodată trebuie să instalați manual un fișier DLL în locația corectă sau să aflați unde este instalat – ceea ce este foarte rar – va trebui să știți care este.

WOW64, Explicat

Partea „WOW64” a numelui se referă aici la software-ul „Windows 32-bit pe Windows 64-bit” al Microsoft, care face parte din sistemul de operare. Acest lucru permite Windows să ruleze programe pe 32 de biți pe o versiune 64 de biți a Windows. WoW64 redirecționează accesul la fișiere pentru a asigura că programele vor funcționa corect.

De exemplu, dacă instalați un program pe 32 de biți pe o versiune 64 de biți a Windows și încearcă să se scrie în folderul C: \ Program Files, WoW64 îl indică la C: \ Program Files (x86). Și dacă dorește să acceseze folderul C: \ Windows \ System32, WoW64 îl direcționează C: \ Windows \ SysWOW64. Windows face acest lucru folosind un redirector de sistem de fișiere.

Toate acestea se întâmplă automat și transparent în fundal. Programul nu trebuie să știe că rulează pe un sistem de operare pe 64 de biți, ceea ce permite programelor mai vechi pe 32 de biți să ruleze fără modificări ale versiunilor 64 de biți Windows. De asemenea, WOW64 redirecționează accesul la regiștri, asigurând existența unor zone separate ale regiștrilor pentru programele 64 de biți și 32 de biți.

Deci, de ce este System32 pe 64 biți și SysWOW64 pe 32 de biți?

Tot ceea ce ne aduce înapoi la întrebarea de un milion de dolari: De ce este folderul System32 pe 64 biți și SysWOW64 pe 32 de biți?

Răspunsul pare să fie că multe aplicații pe 32 de biți au fost codate ca fiind hardcoded pentru a utiliza directorul C: \ Windows \ System32. Când dezvoltatorii recompilau aceste aplicații pentru versiunile 64 de biți ale Windows, au continuat să utilizeze directorul C: \ Windows \ System32.

Mai degrabă decât să redenumească fișierul, Microsoft a lăsat „System32” ca director de bibliotecă sistem standard. Au creat un nou director pentru aplicațiile care rulează sub stratul WoW64, pe care le numea „SysWOW64”. Când te gândești la asta în felul acesta, numele are mai mult sens.

Da, este un pic o prostie ca un director cu „32” în nume să fie pe 64 de biți. Poate că Microsoft ar fi trebuit să vadă că asta se va întâmpla cu fișierul pe care l-a numit C: \ Windows \ System32 în anii ’90. Dar, deși o redenumire mai simplă ar fi mai drăguță, nu merită ca o grămadă de programe  să fie stricate și să creeze mai multă muncă pentru dezvoltatori doar pentru a ajunge la schimbarea care trebuia făcută de la început. Asta înseamnă că suntem blocați cu System32 și SysWOW64 atât în prezent cât și în viitor.

LĂSAȚI UN MESAJ

Please enter your comment!
Please enter your name here

Acest sit folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.