Istnieje duża szansa, że ​​masz obie te C:Program Files oraz C:Program Files (x86)s na komputerze z systemem Windows. Jeśli się rozejrzysz, zobaczysz, że niektóre z twoich programów są zainstalowane w jednym folderze, a niektóre w drugim.

32-bitowy a 64-bitowy system Windows

ZWIĄZANE Z: Jaka jest różnica między 32-bitowym a 64-bitowym systemem Windows?

Pierwotnie Windows był dostępny tylko jako 32-bitowy system operacyjny. W 32-bitowych wersjach systemu Windows — nawet w 32-bitowych wersjach systemu Windows 10, które są nadal dostępne — zobaczysz tylko C:Program Files.

Ten folder Program Files jest zalecaną lokalizacją, w której instalowane programy powinny przechowywać swoje pliki wykonywalne, dane i inne pliki. Innymi słowy, programy są instalowane w folderze Program Files.

W 64-bitowych wersjach systemu Windows aplikacje 64-bitowe są instalowane w folderze Program Files. Jednak 64-bitowe wersje systemu Windows obsługują również programy 32-bitowe, a firma Microsoft nie chce, aby oprogramowanie 32-bitowe i 64-bitowe mieszały się w tym samym miejscu. Tak więc 32-bitowe programy są instalowane w C:Program Files (x86), zamiast.

Windows uruchamia 32-bitowe aplikacje w 64-bitowych wersjach systemu Windows, używając czegoś, co nazywa się WOW64, co oznacza Windows 32-bit on Windows 64-bit.

Po uruchomieniu programu 32-bitowego w 64-bitowej wersji systemu Windows warstwa emulacji WOW64 płynnie przekierowuje 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 jest wskazywany na folder Program Files (x86). Programy 64-bitowe nadal używają normalnego folderu Program Files.

Co jest przechowywane w każdym folderze?

Podsumowując, w 32-bitowej wersji systemu Windows masz po prostu C:Program Files. Zawiera wszystkie zainstalowane programy, z których wszystkie są 32-bitowe.

W 64-bitowej wersji systemu Windows programy 64-bitowe są przechowywane w C:Program Files i 32-bitowe programy są przechowywane w C:Program Files (x86).

Dlatego różne programy są rozmieszczone w dwóch folderach Program Files, pozornie losowo. Te w C:Program Files są 64-bitowe, podczas gdy te w C:Program Files (x86) są 32-bitowe.

Dlaczego się rozdzielają?

Jest to funkcja kompatybilności przeznaczona dla starych programów 32-bitowych. Te 32-bitowe programy mogą nie wiedzieć, że 64-bitowa wersja systemu Windows nawet istnieje, więc system Windows trzyma je z dala od tego 64-bitowego kodu.

Programy 32-bitowe nie mogą załadować bibliotek 64-bitowych (plików DLL) i mogą ulec awarii, jeśli spróbują załadować określony plik DLL i znajdą 64-bitowy zamiast 32-bitowego. To samo dotyczy programów 64-bitowych. Przechowywanie różnych plików programów dla różnych architektur procesora zapobiega występowaniu takich błędów.

Na przykład, powiedzmy, że system Windows właśnie użył jednego folderu Program Files. 32-bitowa aplikacja może szukać pliku DLL Microsoft Office znalezionego w C: Program FilesMicrosoft Office i spróbować go załadować. Jeśli jednak masz zainstalowaną 64-bitową wersję pakietu Microsoft Office, aplikacja ulegnie awarii i nie będzie działać poprawnie. Dzięki osobnym folderom ta aplikacja w ogóle nie będzie w stanie znaleźć biblioteki DLL, ponieważ 64-bitowa wersja pakietu Microsoft Office będzie znajdować się w C: Program FilesMicrosoft Office, a aplikacja 32-bitowa będzie szukać w C: Program Files (x86 )Microsoft Office.

Pomaga to również, gdy programista tworzy zarówno 32-bitową, jak i 64-bitową wersję aplikacji, zwłaszcza jeśli w niektórych sytuacjach obie muszą zostać zainstalowane jednocześnie. Wersja 32-bitowa automatycznie instaluje się w C: Program Files (x86), a wersja 64-bitowa automatycznie instaluje się w C: Program Files. Gdyby system Windows używał pojedynczego folderu, twórca aplikacji musiałby mieć folder 64-bitowy zainstaluj w innym folderze aby trzymać je osobno. I prawdopodobnie nie byłoby prawdziwego standardu, w którym programiści instalowali różne wersje.

Dlaczego nazwano folder 32-bitowy (x86)?

Nie zawsze zobaczysz 32-bit oraz 64-bit. Zamiast tego czasami zobaczysz x86 oraz x64 odnosząc się do tych dwóch różnych architektur. To dlatego, że wczesne komputery używały układu Intel 8086. Oryginalne chipy były 16-bitowe, ale nowsze wersje stały się 32-bitowe. x86 odnosi się do architektury sprzed 64-bitowej – czy to 16-bitowej czy 32-bitowej. Nowsza architektura 64-bitowa jest określana jako x64.

To co Program Files (x86). Jest to folder Program Files dla programów korzystających ze starszej architektury procesora x86. Pamiętaj jednak, że 64-bitowe wersje systemu Windows nie mogą uruchamiać 16-bitowego kodu.

To zwykle nie ma znaczenia

ZWIĄZANE Z: Co to jest folder AppData w systemie Windows?

Zwykle nie ma znaczenia, czy pliki programów są przechowywane w Program Files czy Program Files (x86). System Windows automatycznie instaluje programy we właściwym 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 programy 32-bitowe, jak i 64-bitowe powinny przechowywać dane w folderach takich jak AppData i ProgramData, a nie w żadnym folderze Program Files. Po prostu pozwól swoim programom automatycznie zdecydować, którego folderu Program Files użyć.

Jeśli korzystasz z aplikacji przenośnej, można ją uruchomić 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 będziesz musiał wiedzieć, gdzie program jest przechowywany. Załóżmy na przykład, że chcesz przejść do swojego katalogu Steam, aby wykonać kopię zapasową niektórych plików. Znajdziesz go w C: Program Files (x86), ponieważ Steam jest programem 32-bitowym.

Jeśli nie masz pewności, czy zainstalowany program jest 64-bitowy, czy nie, i szukasz jego folderu instalacyjnego, może być konieczne przeszukanie obu folderów Program Files, aby go znaleźć.

Możesz także zajrzeć do Menedżera zadań Windows 10s.

W 64-bitowych wersjach systemu Windows 32-bitowe programy są oznaczone dodatkowym (32-bit), co daje wskazówkę, że znajdziesz je w C: Program Files (x86).