Jaký je rozdíl mezi složkami „Program Files (x86)“ a „Program Files“ ve Windows?

  • Chris Hoffman

    @chrisbhoffman

  • Aktualizováno 2. října 2017, 13:18 EDT

Je velká pravděpodobnost, že ve svém počítači se systémem Windows máte obě složky „C:\Program Files“ a „C:\Program Files (x86)“. Pokud se v nich budete hrabat, zjistíte, že některé programy jsou nainstalovány v jedné složce a některé v druhé.

32bitový vs. 64bitový systém Windows

SOUvisející:

Původně byl systém Windows k dispozici pouze jako 32bitový operační systém. Ve 32bitových verzích systému Windows – dokonce i ve 32bitových verzích systému Windows 10, které jsou k dispozici dodnes – uvidíte pouze složku „C:\Program Files“.

Tato složka Program Files je doporučené umístění, kam by měly instalované programy ukládat své spustitelné, datové a další soubory. Jinými slovy, programy se instalují do složky Program Files.

Reklama

V 64bitových verzích systému Windows se 64bitové aplikace instalují do složky Program Files. 64bitové verze systému Windows však podporují i 32bitové programy a společnost Microsoft nechce, aby se 32bitový a 64bitový software pletl na stejném místě. Proto se 32bitové programy instalují do složky „C:\Program Files (x86)“.

Systém Windows spouští 32bitové aplikace v 64bitových verzích systému Windows pomocí funkce nazvané WOW64, což je zkratka pro „Windows 32-bit on Windows 64-bit.“

Při spuštění 32bitového programu v 64bitové verzi systému Windows emulační vrstva WOW64 plynule přesměruje přístup k souborům z „C:\Program Files“ do „C:\Program Files (x86)“. 32bitový program se snaží přistupovat k adresáři Program Files a je odkázán na složku Program Files (x86). 64bitové programy stále používají normální složku Program Files.

Co je uloženo v jednotlivých složkách

Shrnuto a podtrženo, ve 32bitové verzi systému Windows máte pouze složku „C:\Program Files“. Ta obsahuje všechny nainstalované programy, z nichž všechny jsou 32bitové.

Reklama

V 64bitové verzi systému Windows jsou 64bitové programy uloženy ve složce „C:\Program Files“ a 32bitové programy ve složce „C:\Program Files (x86)“.

Proto jsou různé programy rozprostřeny v obou složkách Program Files, zdánlivě náhodně. Ty ve složce „C:\Program Files“ jsou 64bitové, zatímco ty ve složce „C:\Program Files (x86)“ jsou 32bitové.

Proč jsou rozděleny?

Jedná se o funkci kompatibility určenou pro staré 32bitové programy. Tyto 32bitové programy si nemusí být vědomy, že 64bitová verze systému Windows vůbec existuje, a proto je systém Windows drží od tohoto 64bitového kódu dál.

32bitové programy nemohou načítat 64bitové knihovny (soubory DLL) a mohly by se zhroutit, pokud by se pokusily načíst konkrétní soubor DLL a místo 32bitového našly 64bitový. Totéž platí pro 64bitové programy. Oddělení různých programových souborů pro různé architektury procesorů zabraňuje vzniku takovýchto chyb.

Reklama

Řekněme, že systém Windows používá pouze jednu složku Program Files. 32bitová aplikace by mohla vyhledat soubor Microsoft Office DLL nalezený ve složce C:\Program Files\Microsoft Office a pokusit se jej načíst. Pokud byste však měli nainstalovanou 64bitovou verzi Microsoft Office, aplikace by spadla a nefungovala by správně. S oddělenými složkami nebude tato aplikace vůbec schopna DLL knihovnu najít, protože 64bitová verze Microsoft Office by se nacházela v C:\Program Files\Microsoft Office a 32bitová aplikace by hledala v C:\Program Files (x86)\Microsoft Office.

To také pomůže, když vývojář vytvoří 32bitovou i 64bitovou verzi aplikace, zejména pokud je v některých situacích třeba nainstalovat obě najednou. 32bitová verze se automaticky nainstaluje do C:\Program Files (x86) a 64bitová verze se automaticky nainstaluje do C:\Program Files. Pokud by systém Windows používal jedinou složku, musel by vývojář aplikace nechat 64bitovou složku nainstalovat do jiné složky, aby byly odděleny. A pravděpodobně by neexistoval žádný skutečný standard pro to, kam vývojáři instalují různé verze.

Proč je 32bitová složka pojmenována (x86)?

Ne vždy uvidíte „32bitová“ a „64bitová“. Místo toho někdy uvidíte „x86“ a „x64“ jako označení těchto dvou různých architektur. Je to proto, že rané počítače používaly čip Intel 8086. Původní čipy byly 16bitové, ale novější verze byly 32bitové. „x86“ nyní označuje architekturu před 64bitovou verzí – ať už 16bitovou nebo 32bitovou. Novější 64bitová architektura se místo toho označuje jako „x64“.

To znamená „Program Files (x86)“. Je to složka Program Files pro programy používající starší architekturu procesoru x86. Jen si však uvědomte, že 64bitové verze systému Windows nemohou spouštět 16bitový kód.

Na tom obvykle nezáleží

Souvisí:

Obvykle nezáleží na tom, zda jsou soubory programu uloženy v Program Files nebo Program Files (x86). Systém Windows automaticky instaluje programy do správné složky, takže na to nemusíte myslet. Programy se zobrazují v nabídce Start a normálně fungují bez ohledu na to, kde jsou nainstalovány. Jak 32bitové, tak 64bitové programy by měly ukládat data do složek, jako jsou AppData a ProgramData, a ne do žádné složky Program Files. Prostě nechte programy automaticky rozhodnout, kterou složku Program Files mají použít.

Reklama

Používáte-li přenosné aplikace, mohou se spouštět z libovolné složky v systému, takže se nemusíte starat o to, kam je umístit. Přenosné aplikace rádi umisťujeme do Dropboxu nebo jiného typu složky cloudového úložiště, takže jsou dostupné na všech našich počítačích.

Někdy budete potřebovat vědět, kde je program uložen. Řekněme například, že chcete přejít do adresáře služby Steam a zálohovat některé soubory. Najdete ho v adresáři C:\Program Files (x86), protože Steam je 32bitový program.

Pokud si nejste jisti, zda je program, který jste nainstalovali, 64bitový, nebo ne, a hledáte jeho instalační složku, možná se budete muset podívat do obou složek Program Files, abyste ho našli.

Můžete se také podívat do Správce úloh systému Windows 10.

Podívejte se do složky Program Files.

Reklama

V 64bitových verzích systému Windows jsou 32bitové programy označeny doplňkovým textem „(32-bit)“, který vám napoví, že je najdete v C:\Program Files (x86).

Chris Hoffman
Chris Hoffman je šéfredaktorem časopisu How-To Geek. O technologiích píše již více než deset let a dva roky byl sloupkařem časopisu PCWorld. Chris psal pro deník The New York Times, jako odborník na technologie poskytoval rozhovory televizním stanicím, například NBC 6 v Miami, a o jeho práci informovaly zpravodajské stanice, například BBC. Od roku 2011 Chris napsal více než 2 000 článků, které byly přečteny téměř miliardkrát – a to jen zde na How-To Geek.“

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.