Mnogi od nas su prilikom pristupa lokalnom disku C vidjeli da postoje dvije mape pod nazivom "Programske datoteke" i "Programske datoteke (x86)" u Windows okruženjima:
Pitanje koje se nameće jest: Koja je razlika između ove dvije mape? Upamtite da je svrha oboje ugostiti aplikacije instalirane na sustavu.
Važno je i idealno zapamtiti da je Microsoft od 2005. godine donio odluku da svoje sustave Windows ponudi u 32-bitnoj i 64-bitnoj arhitekturi za sve korisnike jer je izvorno Windows bio dostupan samo kao 32-bitni operacijski sustav. Zato ćemo u 32-bitnim verzijama sustava Windows, čak i 32-bitnim verzijama sustava Windows 10, koje i danas vidimo, vidjeti samo mapu C: \ Program Files dok ćemo u 64-bitnim operativnim sustavima pronaći dvije mape pod nazivom C: \ Program Files (C: \ Program Files) i C: \ Program Files 8x86) ili C: \ Program Files (x86).
Ova mapa "Programske datoteke" zadano je mjesto u sustavu Windows gdje programi koje instaliramo moraju pohraniti svoje izvršne datoteke, podatke i druge vrste datoteka.
Sloj WoW64 brine se za oponašanje 32-bitnog okruženja, a svaki gubitak performansi općenito se ne primjećuje kao korisnik. Emulirani programi imaju prednost jer WoW64 može dodijeliti maksimalnu količinu RAM -a (4 GB) aplikaciji. U stvarnom 32-bitnom sustavu dio RAM-a dodijelio bi se jezgri operacijskog sustava i drugim pokrenutim programima.
Koja je razlika između ove dvije mape
Operacijski sustavi Windows pokreću 32-bitne aplikacije na 64-bitnim verzijama sustava Windows koristeći nešto što se zove WOW64, što znači "32-bitni Windows u 64-bitnom sustavu Windows", ali ne mogu pokrenuti 64-bitne aplikacije u 32-bitnim okruženjima.
Kada pokrenemo 32-bitni program na 64-bitnom izdanju sustava Windows, sloj emulacije WOW64 preusmjerava ovaj pristup datotekama s puta "C: \ Program Files" na "C: \ Program Files (x86)". 32-bitni programi pokušavaju pristupiti direktoriju "Program Files" i pokazuju na mapu "Program Files (x86)". 64-bitni programi i dalje koriste uobičajenu mapu programa "Datoteke".
Što svaka mapa pohranjuje
U 32-bitnim Windows okruženjima imat ćemo samo mapu "C: \ Program Files" koja sadrži sve 32-bitne programe instalirane.
POVEĆAJTE
U 64-bitnoj verziji sustava Windows 64-bitni programi pohranjeni su u mapu "C: \ Program Files", a 32-bitni programi u mapu "C: \ Program Files (x86).":
POVEĆAJTE
Razlozi zašto postoje dvije mape, a ne samo jedna
- Za razlikovanje različitih verzija
- Smanjite šanse za sukob pri pokretanju 32-bitnih aplikacija u 64-bitnim okruženjima
- Povećava vjerojatnost da će stariji programi raditi ispravno
Osim toga, 32-bitni programi ne mogu učitati 64-bitne knjižnice (DLL datoteke) i mogu se srušiti ako pokušaju učitati određeni DLL i pronaći 32-bitnu datoteku umjesto 32-bitne. Isto vrijedi i za 64-bitne programe jer razdvajanje različitih programskih datoteka za različite arhitekture CPU-a sprječava takve greške utjecati na produktivnost.
Mapa "Program Files" ima dodatak x86 zato što je x86 drugi način upućivanja na 32-bitne procesore. U početku su se 16-bitni procesori (konkretno, 8086 i 8088 procesorska arhitektura) nazivali "x86". Ovaj je naziv neko vrijeme bio proširen tako da uključuje 32-bitne procesore obitelji 80386 i 80486. Kada su predstavljeni 64-bitni procesori, nazivali su ih x64 kako bi se razlikovali od starijih procesorskih linija.
Windows automatski instalira programe u ispravnu mapu pa se nećemo morati brinuti jesu li u ispravnoj mapi puta.
Svi 32-bitni i 64-bitni programi i aplikacije trebali bi pohraniti svoje podatke u mape kao što su AppData i ProgramData, a ne u bilo koju mapu "Program Files".
Da bismo saznali koji programi ili aplikacije imaju 32 ili 64 bita, možemo otići u svaku mapu na pogonu C i vidjeti gdje je program instaliran, ili iz upravitelja zadataka sustava Windows možemo vidjeti arhitekturu navedenog programa:
POVEĆAJTE
Svaka je aplikacija razvijena s posebnom vrstom arhitekture, a Windows se brine za njeno lociranje na ispravan put.