Jaka jest różnica między folderami Program Files (x86) i Program Files w systemie Windows?
Istnieje duża szansa, że będziesz mieć foldery "C: \ Program Files" i "C: \ Program Files (x86)" na swoim komputerze z Windows. Jeśli przeglądasz, zobaczysz, że niektóre programy są zainstalowane w jednym folderze, a niektóre są zainstalowane w drugim.
32-bitowy w porównaniu do 64-bitowego systemu Windows
Oryginalnie system Windows był dostępny tylko jako 32-bitowy system operacyjny. W 32-bitowych wersjach systemu Windows - nawet 32-bitowych wersjach systemu Windows 10, które są nadal dostępne do dziś - zobaczysz tylko folder "C: \ Program Files".
Ten folder Program Files jest zalecanym miejscem, w którym instalowane programy powinny przechowywać pliki wykonywalne, dane i inne pliki. Innymi słowy, programy instalują się w folderze Program Files.
W 64-bitowych wersjach systemu Windows aplikacje 64-bitowe instalują się w folderze Program Files. Jednak 64-bitowe wersje systemu Windows obsługują także programy 32-bitowe, a firma Microsoft nie chce, aby oprogramowanie 32-bitowe i 64-bitowe było pomieszane w tym samym miejscu. Tak więc programy 32-bitowe zostaną zainstalowane zamiast folderu "C: \ Program Files (x86)".
System Windows uruchamia aplikacje 32-bitowe w 64-bitowych wersjach systemu Windows, używając czegoś o nazwie WOW64, co oznacza "Windows 32-bitowy w systemie Windows 64-bitowy".
Po uruchomieniu 32-bitowego programu w 64-bitowej wersji systemu Windows warstwa emulacji WOW64 bezproblemowo przekierowuje swój dostęp do plików z "C: \ Program Files" do "C: \ Program Files (x86)." 32-bitowy program próbuje uzyskać dostęp do katalogu Program Files i wskazuje folder Program Files (x86). 64-bitowe programy nadal używają normalnego folderu Program Files.
Co jest przechowywane w każdym folderze
Podsumowując, w 32-bitowej wersji systemu Windows, po prostu masz folder "C: \ Program Files". Zawiera wszystkie zainstalowane programy, z których wszystkie są 32-bitowe.
W 64-bitowej wersji systemu Windows 64-bitowe programy są przechowywane w folderze "C: \ Program Files", a 32-bitowe programy są przechowywane w folderze "C: \ Program Files (x86)".
Dlatego różne programy są rozmieszczone w dwóch folderach Program Files, pozornie losowych. Te w folderze "C: \ Program Files" są 64-bitowe, podczas gdy foldery "C: \ Program Files (x86)" są 32-bitowe.
Dlaczego są podzielone?
Jest to funkcja zgodności zaprojektowana dla starych programów 32-bitowych. Te 32-bitowe programy mogą nie wiedzieć, że istnieje 64-bitowa wersja systemu Windows, więc system Windows trzyma je z dala od 64-bitowego kodu.
Programy 32-bitowe nie mogą załadować bibliotek 64-bitowych (plików DLL) i mogą ulec awarii, jeśli próbują załadować określony plik DLL i znajdą 64-bitowy zamiast 32-bitowy. To samo dotyczy programów 64-bitowych. Utrzymywanie różnych plików programów dla różnych architektur CPU zapobiega powstawaniu takich błędów.
Na przykład, powiedzmy, Windows właśnie użył jednego folderu Program Files. 32-bitowa aplikacja może szukać pliku DLL pakietu Microsoft Office znajdującego się w C: \ Program Files \ Microsoft Office i spróbować go załadować. Jeśli jednak zainstalowano 64-bitową wersję pakietu Microsoft Office, aplikacja ulegnie awarii i nie będzie działać poprawnie. W przypadku oddzielnych folderów aplikacja nie będzie w stanie znaleźć biblioteki DLL, ponieważ 64-bitowa wersja pakietu Microsoft Office będzie znajdować się w folderze C: \ Program Files \ Microsoft Office, a 32-bitowa aplikacja będzie wyglądać w języku C : \ Program Files (x86) \ Microsoft Office.
Pomaga to również, gdy programista tworzy zarówno 32-bitowe, jak i 64-bitowe wersje aplikacji, zwłaszcza jeśli w niektórych sytuacjach oba muszą być zainstalowane jednocześnie. Wersja 32-bitowa automatycznie instaluje się do C: \ Program Files (x86), a wersja 64-bitowa automatycznie instaluje się do C: \ Program Files. Jeśli system Windows używał jednego folderu, programista aplikacji musiałby zainstalować 64-bitowy folder w innym folderze, aby zachować je oddzielnie. I prawdopodobnie nie byłoby prawdziwego standardu, w którym deweloperzy zainstalowali różne wersje.
Dlaczego jest 32-bitowy folder o nazwie (x86)?
Nie zawsze zobaczysz "32-bitowy" i "64-bitowy". Zamiast tego czasami zobaczysz "x86" i "x64", aby odnieść się do tych dwóch różnych architektur. To dlatego, że wczesne komputery korzystały z układu Intel 8086. Oryginalne żetony były 16-bitowe, ale nowsze wersje stały się 32-bitowe. "X86" odnosi się teraz do architektury pre-64-bitowej - niezależnie od tego, czy jest to 16-bitowa czy 32-bitowa. Nowsza architektura 64-bitowa jest w zamian nazywana "x64".
Tak właśnie oznacza "Program Files (x86)". Jest to folder Program Files dla programów używających starszej architektury CPU x86. Należy jednak zauważyć, że 64-bitowe wersje systemu Windows nie mogą uruchamiać kodu 16-bitowego.
To nie ma normalnego znaczenia
Zwykle nie ma znaczenia, czy pliki programu są przechowywane w Program Files lub Program Files (x86). System Windows automatycznie instaluje programy w odpowiednim folderze, więc nie musisz o tym myśleć. Programy pojawiają się w menu Start i działają normalnie, bez względu na to, gdzie są zainstalowane. Zarówno 32-bitowe, jak i 64-bitowe programy powinny przechowywać dane w folderach takich jak AppData i ProgramData, a nie w żadnym folderze Program Files. Po prostu pozwól, aby twoje programy automatycznie decydowały, który folder Program Files ma być używany.
Jeśli korzystasz z aplikacji przenośnej, może ona działać z dowolnego folderu w systemie, więc nie musisz się martwić, gdzie je umieścić. Lubimy umieszczać przenośne aplikacje w Dropbox lub innym folderze przechowywania w chmurze, aby były dostępne na wszystkich naszych komputerach.
Czasami musisz wiedzieć, gdzie jest przechowywany program. Na przykład, powiedzmy, że chcesz przejść do swojego katalogu Steam, aby utworzyć kopię zapasową niektórych plików. Znajdziesz go w C: \ Program Files (x86), ponieważ Steam jest 32-bitowym programem.
Jeśli nie masz pewności, czy zainstalowany program jest 64-bitowy, czy nie, i szukasz folderu instalacyjnego, może zajść konieczność przejrzenia folderów z plikami programów, aby go znaleźć..
Możesz także zajrzeć do Menedżera zadań systemu Windows 10.
W 64-bitowych wersjach systemu Windows 32-bitowe programy są oznaczone dodatkowym tekstem "(32-bitowym)", co oznacza, że można je znaleźć w C: \ Program Files (x86).