Kāda ir atšķirība starp Program Files (x86) un Program Files mapēm Windows?
Iespējams, ka jūsu Windows datorā ir gan “C: Program Files”, gan “C: Program Files (x86)” mapes. Ja jūs aplūkosiet, redzēsiet, ka dažas no jūsu programmām ir instalētas vienā mapē, un dažas ir instalētas otrā.
32 bitu vs 64 bitu Windows
Sākotnēji sistēma Windows bija pieejama tikai kā 32 bitu operētājsistēma. 32 bitu Windows 10 versijās, kurās ir vēl 32 bitu Windows 10 versijas, kuras joprojām ir pieejamas šodien, redzēsit tikai mapi "C: programmu faili".
Šī programmas failu mape ir ieteicamā vieta, kurā instalētajām programmām jāglabā izpildāmie, dati un citi faili. Citiem vārdiem sakot, programmas instalējas mapē Program Files.
64 bitu Windows versijās 64 bitu programmas instalē mapē Program Files. Tomēr 64 bitu Windows versijas atbalsta arī 32 bitu programmas, un Microsoft nevēlas, lai tajā pašā vietā tiktu sajaukta 32 bitu un 64 bitu programmatūra. Tātad 32 bitu programmas tiek instalētas mapē “C: Failu (x86)”.
Windows vada 32 bitu lietojumprogrammas 64 bitu Windows versijās, izmantojot kaut ko, ko sauc par WOW64, kas apzīmē “Windows 32 bitu Windows 64 bitu versijā”.
Veicot 32 bitu programmu Windows 64 bitu versijā, WOW64 emulācijas slānis nepārtraukti novirza faila piekļuvi no “C: Program Files” uz “C: Program Files” (x86). programma mēģina piekļūt Program Files failiem un ir norādīta uz mapes Program Files (x86). 64 bitu programmas joprojām izmanto parasto programmu failu mapi.
Kas ir saglabāta katrā mapē
Kopumā Windows 32 bitu versijā jums ir tikai mape „C: Failu faili”. Tas satur visas instalētās programmas, kas visas ir 32 bitu.
64 bitu Windows versijā 64 bitu programmas tiek saglabātas mapē „C: failu faili”, un 32 bitu programmas tiek saglabātas mapē “C: failu faili (x86)”.
Tieši tāpēc dažādas programmas tiek izplatītas divās Programmu failu mapēs, šķietami nejauši. Programmas “C: Failu faili” mapes ir 64 bitu, savukārt mapē “C: Faili (x86)” esošās mapes ir 32 bitu.
Kāpēc tās ir sadalītas?
Šī ir saderības funkcija, kas paredzēta vecām 32 bitu programmām. Šīs 32 bitu programmas, iespējams, nav informētas par to, ka 64 bitu Windows versija pat pastāv, tāpēc Windows tos atturas no šī 64 bitu koda.
32 bitu programmas nevar ielādēt 64 bitu bibliotēkas (DLL failus), un tās var crash, ja tās mēģināja ielādēt konkrētu DLL failu un atrastu 64 bitu vienu 32 bitu vietā. Tas pats attiecas uz 64 bitu programmām. Atsevišķu programmu failu saglabāšana dažādām CPU arhitektūrām novērš kļūdas, piemēram, šīs.
Piemēram, pieņemsim, ka Windows tikko izmantoja vienu mapi Program Files. 32 bitu lietojumprogramma, iespējams, meklē Microsoft Office DLL failu, kas atrodams C: Failu faili Microsoft Office un mēģiniet to ielādēt. Tomēr, ja jums būtu instalēta 64 bitu Microsoft Office versija, lietojumprogramma crash un nedarbosies pareizi. Ar atsevišķām mapēm šī lietojumprogramma vispār nevarēs atrast DLL, jo Microsoft Office 64 bitu versija būtu C: Programmas Microsoft Office un 32 bitu lietojumprogramma meklēs C Programmas faili (x86) Microsoft Office.
Tas arī palīdz, ja attīstītājs izveido gan 32 bitu, gan 64 bitu versijas lietojumprogrammas, it īpaši, ja abās situācijās uzreiz ir jāinstalē. 32 bitu versija automātiski instalē C: Programmas failus (x86), un 64 bitu versija automātiski instalē C: programmu failus. Ja sistēma Windows izmantoja vienu mapi, programmas izstrādātājam 64 bitu mape ir jāinstalē uz citu mapi, lai saglabātu tos atsevišķi. Un, visticamāk, nav reāla standarta, kur izstrādātāji instalēja dažādas versijas.
Kāpēc ir nosaukta 32 bitu mape (x86)?
Jūs ne vienmēr redzēsiet "32 bitu" un "64 bitu". Tā vietā jūs dažreiz redzēsiet "x86" un "x64", lai atsauktos uz šīm divām dažādām arhitektūrām. Tas ir tāpēc, ka agri datori izmantoja Intel 8086 mikroshēmu. Sākotnējās mikroshēmas bija 16 bitu, bet jaunākās versijas kļuva par 32 bitu. “X86” tagad attiecas uz pirms 64 bitu arhitektūru - vai tas ir 16 bitu vai 32 bitu. Jaunākā 64 bitu arhitektūra tiek dēvēta par “x64”.
Tas ir tas, ko nozīmē „Program Files (x86)”. Tā ir programmu failu mape programmām, kurās izmanto vecāku x86 CPU arhitektūru. Tomēr ņemiet vērā, ka 64 bitu Windows versijas nevar palaist 16 bitu kodu.
Tas parasti nav svarīgi
Parasti nav svarīgi, vai programmas faili tiek saglabāti Program Files vai Program Files (x86). Windows automātiski instalē programmas pareizajā mapē, tāpēc jums par to nav jādomā. Programmas tiek parādītas izvēlnē Sākt un darbojas normāli, neatkarīgi no tā, kur tās ir instalētas. Gan 32 bitu, gan 64 bitu programmām jūsu dati jāglabā mapēs, piemēram, AppData un ProgramData, nevis nevienā Programmas failu mapē. Vienkārši ļaujiet jūsu programmām automātiski izlemt, kuru programmas failu mapi izmantot.
Ja izmantojat portatīvo lietotni, tā var palaist no jebkuras mapes jūsu sistēmā, tāpēc jums nav jāuztraucas par to, kur tos ievietot. Mums patīk pārvietot portatīvās lietotnes Dropbox vai cita veida mākoņu krātuves mapē, lai tās būtu pieejamas visās mūsu PC.
Dažreiz jums būs jāzina, kur tiek saglabāta programma. Piemēram, pieņemsim, ka vēlaties doties savā Steam direktorijā, lai dublētu dažus failus. Jūs atradīsiet to C: Failu faili (x86), jo tvaiks ir 32 bitu programma.
Ja neesat pārliecināts, vai instalētā programma ir 64 bitu vai nē, un jūs meklējat tās instalācijas mapi, iespējams, jums būs nepieciešams meklēt abās programmas failu mapēs, lai to atrastu.
Varat arī apskatīt Windows 10 uzdevumu pārvaldnieku.
64 bitu Windows versijās 32 bitu programmas tiek atzīmētas ar papildu (32 bitu) tekstu, norādot, ka tās atradīsiet C: Programmas faili (x86).