Mis on System32?
System32-kataloog sisaldab Windowsi süsteemifaile, mõlemad.DLL-i teegifailid, mida kasutavad programmid ja Windowsi osa kuuluvad programmikomponendid.EXE. Kuigi enamus siin leiduvatest failidest on osa Windowsi operatsioonisüsteemist, asuvad kolmandate osapoolte tarkvaraprogrammid mõnikord ka selle kausta jaoks oma DLL-faile.
Teie süsteemis käivitatavad rakendused võivad olla installitud kausta Program Files või mujale, kuid need laadivad sageli süsteemiülese kogu kaustast System32.
32-bitise ja 64-bitise raamatukogude eraldamine
Kui 32-bitine programm läheb DLL-faili laadimiseks, vajab see, leiab 64-bitise versiooni ja proovib seda laadida, see krahh. Kui eraldate 64-bitise ja 32-bitise tarkvara kahte erinevatesse programmifailide kaustadesse, siis tagab Windows, et need ei segaks ega tekitaks probleeme.
Kuid mitte kõik DLL-failid ei salvestata programmi failidesse. Paljud kogu süsteemiga hõlmatud Windowsi raamatukogud on salvestatud C: System32-sse ja mõned programmid ka siin oma raamatukogu failid. Niisiis, nagu ka Windowsil on eraldi 32- ja 64-bitine programmifailide kaustad, on ka see kausta System32 eraldi 32- ja 64-bitiste versioonidega.
System32 ja SysWOW64
32-bitise arvutiga salvestavad kõik 32-bitised programmid oma failid C: Program Files'ist ja kogu-kogu raamatukogu asukoht on C: System32.
64-bitise arvutiga salvestavad 64-bitised programmid failid C: Program Files'ist ja kogu süsteemi C: Windows System32 kaust sisaldab 64-bitiseid raamatukogusid. 32-bitised programmid salvestavad failid C: Program Files (x86) ja kogu süsteemi kaust on C: Windows SysWOW64.
See on kindlasti vastuoluline. Vaatamata nimele "32", sisaldab kaust System32 64-bitist raamatukogu. Ja vaatamata 64 nimele, sisaldab kaust SysWOW64 32-bitist raamatukogu - vähemalt Windowsi 64-bitiste versioonidega.
Üldiselt ei pea te seda teadma. Windowsi operatsioonisüsteem ja programmid, mida te kasutate, paigutavad failid õigesse asukohta ja kasutavad õiget kausta. Kuid kui teil on kunagi vaja DLL-faili käsitsi installida õigesse asukohta või leida, kus see on installitud - mis on väga haruldane, peate teadma, mis on see.
WOW64, Explained
Näiteks kui installite Windowsi 64-bitise versiooni 32-bitise programmi ja ta üritab kirjutada kausta C: Program Files, märgib WoW64 seda C: Program Files (x86). Ja kui ta soovib juurdepääsu kausta C: Windows System32, märgib WoW64 seda aadressil C: Windows SysWOW64. Windows kasutab seda failisüsteemi redirektori abil.
See kõik juhtub taustal automaatselt ja läbipaistvalt. Programm ei pea isegi teadma, et see töötab 64-bitisel operatsioonisüsteemil, mis võimaldab vanematel 32-bitistel programmidel Windowsi 64-bitiste versioonideta muutmata töötada. WOW64 redigeerib ka registrile juurdepääsu, tagades 64-bitiste ja 32-bitiste programmide jaoks registri eraldiseisvad valdkonnad.
Miks on System32 64-bitine ja 32-bitine SysWOW64?
Kõik see toob meid tagasi miljoni dollariga seotud küsimusele: miks 64-bitine kaust System32 ja 32-bitine SysWOW64?
Vastus näib olevat see, et paljud 32-bitised rakendused olid kõvakoodiga, et kasutada kataloogi C: Windows System32. Kui arendajad kompileerisid need rakendused Windowsi 64-bitiste versioonide jaoks, jätkasid nad C: Windows System32 kataloogi kasutamist.
Selle asemel, et ümber nimetada kataloog ja sundida arendajaid uuele versioonile üle minema, purustades paljud rakendused selles protsessis, jätsid Microsoft süsteemi süsteemikataloogi kataloogi "System32". Nad loonud uue WoW64 kihi all olevate rakenduste kataloogi, mida nad nimetasid "SysWOW64". Kui te seda mõelnud mõeldate, on nimi mõistlikum.
Jah, on natuke rumal, et nimega "32" kataloog on nüüd 64-bitine. Võibolla oleks Microsoft pidanud seda tulema, kui nad nimetasid selle 90. aastatel C: Windows System32. Kuigi otsesem nimetamiskava oleks tore, ei ole väärt jagada paljusid programme ja luua rohkem tööd arendajatele, vaid selleks, et sinna jõuda. See tähendab, et lähemas tulevikus on meil süsteem32 ja SysWOW64-ga kinni.