Koks skirtumas tarp „System32“ ir „SysWOW64“ aplankų Windows sistemoje?
64 bitų „Windows“ versijose turite du atskirus programos failų aplankus. Bet tai nesibaigia. Taip pat turite du atskirus sistemos katalogus, kuriuose saugomos DLL bibliotekos ir vykdomieji failai: System32 ir SysWOW64. Nepaisant pavadinimų, „System32“ yra pilnas 64 bitų rinkmenų ir „SysWOW64“ yra pilnas 32 bitų failų. Taigi, kas suteikia?
Kas yra System32?
„System32“ kataloge yra „Windows“ sistemos failai, abu .DLL bibliotekos failai, naudojami programose, ir .EXE programos komunalinės paslaugos, kurios yra „Windows“ dalis. Nors dauguma čia randamų failų yra „Windows“ operacinės sistemos dalis, trečiosios šalies programinės įrangos programos kartais taip pat įdiegia savo DLL failus į šį aplanką.
Programoje veikiančios programos gali būti įdiegtos aplanke „Programos failai“ arba kitur, tačiau jos dažnai įkelia sistemines bibliotekas iš sistemos „System32“.
32 bitų ir 64 bitų bibliotekų atskyrimas
64 bitų „Windows“ versijoje yra C: „Failų“ aplankas, kuriame yra 64 bitų programos ir jų failai, ir „C“: „Failų“ (x86) aplankas, kuriame yra 32 bitų programos ir jų failai. Naudinga, jei šie failai būtų atskirti, nes 64 bitų programoms reikalingi 64 bitų DLL failai, o 32 bitų programoms reikia 32 bitų DLL failų.
Jei 32 bitų programai reikia įkelti reikiamą DLL failą, suranda 64 bitų versiją ir bando ją įkelti, ji sugenda. Atskyrus 64 bitų ir 32 bitų programinę įrangą į du skirtingus programos failų aplankus, „Windows“ užtikrina, kad jie nesusimaišys ir nesukels problemų.
Tačiau ne visi DLL failai yra saugomi programos failuose. Daugelis sisteminių bibliotekų, įtrauktų į „Windows“, yra saugomos C: System32, o kai kurios programos taip pat iškelia savo bibliotekos failus. Taigi, kaip „Windows“ turi atskirus 32 bitų ir 64 bitų programų failų aplankus, ji taip pat turi atskiras 32 bitų ir 64 bitų sistemos System32 versijas.
System32 ir SysWOW64
32 bitų kompiuteryje visos 32 bitų programos saugo savo failus C: failuose, o visos sistemos bibliotekos vieta yra C: System32.
64 bitų kompiuteryje 64 bitų programos saugo savo failus C: Programos rinkmenose, o visos sistemos C: Windows System32 aplanke yra 64 bitų bibliotekos. 32 bitų programos saugo savo rinkmenas C: failuose (x86), o visos sistemos aplankas yra C: Windows SysWOW64.
Tai tikrai priešinga. Nepaisant pavadinimo „32“, aplanke System32 yra 64 bitų bibliotekos. Nepaisant 64 pavadinimo, aplanke SysWOW64 yra 32 bitų bibliotekos, bent jau 64 bitų „Windows“ versijose.
Apskritai, jums to nereikės žinoti. „Windows“ operacinė sistema ir naudojamos programos automatiškai įkelia failus į teisingą vietą ir naudoja teisingą aplanką. Tačiau, jei kada nors reikės rankiniu būdu įdiegti DLL failą į teisingą vietą arba rasti, kur jis yra įdiegtas, - tai labai retai žinoma, kuri.
WOW64, paaiškinta
Vardas „WOW64“ čia nurodo „Microsoft“ „Windows“ 64 bitų „Windows 64 bitų“ programinę įrangą, kuri yra operacinės sistemos dalis. Tai leidžia „Windows“ paleisti 32 bitų programas 64 bitų „Windows“ versijoje. WoW64 nukreipia prieigą prie failo, kad programos veiktų tinkamai.
Pavyzdžiui, jei įdiegiate 32 bitų programą į 64 bitų „Windows“ versiją ir bandote rašyti į aplanką C: Failai, „WoW64“ nurodo jį „C“: „Programos failuose“ (x86). Ir jei jis nori pasiekti C: Windows System32 aplanką, WoW64 nurodo jį į C: Windows SysWOW64. „Windows“ tai daro naudodama failų sistemos peradresatorių.
Visa tai vyksta automatiškai ir skaidriai fone. Programoje net nereikia žinoti, kad ji veikia 64 bitų operacinėje sistemoje, kuri leidžia senesnėms 32 bitų programoms veikti be pakeitimų 64 bitų „Windows“ versijose. WOW64 taip pat perkelia registro prieigą, užtikrindamas, kad 64 bitų ir 32 bitų programoms būtų atskiri registro plotai.
Taigi Kodėl „System32“ 64 bitų ir „SysWOW64“ 32 bitų?
Visa tai atneša mums atgal į milijoną dolerių klausimą: kodėl „System32“ aplankas yra 64 bitų ir SysWOW64 32 bitų?
Atrodo, kad daugelis 32 bitų programų buvo užkoduoti, kad galėtumėte naudoti C: Windows System32 katalogą. Kai kūrėjai iš naujo sukompiliavo šias programas 64 bitų „Windows“ versijoms, jie ir toliau naudojo „C: Windows System32“ katalogą.
„Microsoft“ paliko „System32“ kaip standartinį sistemos bibliotekos katalogą, užuot pervadinęs katalogą ir verčiant kūrėjus pereiti prie naujo. Jie sukūrė naują bibliotekų katalogą programoms, veikiančioms po WoW64 sluoksniu, kurį jie pavadino „SysWOW64“. Kai jūs taip galvojate, pavadinimas tampa prasmingesnis.
Taip, tai šiek tiek kvaila, kad pavadinimas, kurio pavadinime yra „32“, dabar yra 64 bitų. Galbūt „Microsoft“ turėjo matyti, kad ateis, kai jie pavadino jį „C“: „Windows System32“ 90-aisiais. Tačiau, nors paprastesnė pavadinimo schema būtų malonu, tai nėra verta laužyti daugybę programų ir sukurti daugiau kūrėjų kūrėjams tiesiog ten. Tai reiškia, kad mes artimiausioje ateityje įstrigo „System32“ ir „SysWOW64“.