Qual è la differenza tra le cartelle “Program Files (x86)” e “Program Files” in Windows?

  • Chris Hoffman

    @chrisbhoffman

  • Aggiornato il 2 ottobre 2017, 1:18 pm EDT

C’è una buona probabilità che tu abbia entrambe le cartelle “C:\Program Files” e “C:\Program Files (x86)” sul tuo PC Windows. Se cerchi in giro, vedrai che alcuni dei tuoi programmi sono installati in una cartella, e altri nell’altra.

32-bit vs 64-bit Windows

RELATO: Qual è la differenza tra Windows a 32 bit e a 64 bit?

In origine, Windows era disponibile solo come sistema operativo a 32 bit. Sulle versioni a 32 bit di Windows – anche sulle versioni a 32 bit di Windows 10, che sono ancora disponibili oggi – vedrai solo una cartella “C:\Program Files”.

Questa cartella Program Files è la posizione raccomandata dove i programmi che installi dovrebbero memorizzare i loro file eseguibili, dati e altri. In altre parole, i programmi si installano nella cartella Programmi.

Pubblicità

Sulle versioni a 64 bit di Windows, le applicazioni a 64 bit si installano nella cartella Programmi. Tuttavia, le versioni a 64 bit di Windows supportano anche programmi a 32 bit, e Microsoft non vuole che il software a 32 bit e a 64 bit si confondano nello stesso posto. Quindi, i programmi a 32 bit vengono installati nella cartella “C:\Program Files (x86)”, invece.

Windows esegue applicazioni a 32 bit su versioni a 64 bit di Windows usando qualcosa chiamato WOW64, che sta per “Windows 32-bit su Windows 64-bit.”

Quando si esegue un programma a 32 bit su un’edizione a 64 bit di Windows, il livello di emulazione WOW64 reindirizza senza problemi il suo accesso ai file da “C:\Program Files” a “C:\Program Files (x86)”. Il programma a 32 bit cerca di accedere alla directory Program Files e viene indirizzato alla cartella Program Files (x86). I programmi a 64-bit usano ancora la normale cartella Program Files.

Cosa è contenuto in ogni cartella

In sintesi, su una versione a 32-bit di Windows, hai solo una cartella “C:\Program Files”. Questa contiene tutti i tuoi programmi installati, che sono tutti a 32 bit.

Pubblicità

Su una versione a 64 bit di Windows, i programmi a 64 bit sono memorizzati nella cartella “C:\Program Files” e i programmi a 32 bit sono memorizzati nella cartella “C:\Program Files (x86)”.

Ecco perché diversi programmi sono sparsi nelle due cartelle Programmi, apparentemente a caso. Quelli nella cartella “C:\Program Files” sono a 64 bit, mentre quelli nella cartella “C:\Program Files (x86)” sono a 32 bit.

Perché sono divisi?

Questa è una caratteristica di compatibilità progettata per vecchi programmi a 32 bit. Questi programmi a 32-bit potrebbero non essere consapevoli dell’esistenza di una versione a 64-bit di Windows, così Windows li tiene lontani dal codice a 64-bit.

I programmi a 32-bit non possono caricare librerie a 64-bit (file DLL), e potrebbero andare in crash se cercassero di caricare un file DLL specifico e trovassero un file a 64-bit invece di uno a 32-bit. Lo stesso vale per i programmi a 64 bit. Mantenere diversi file di programma per diverse architetture di CPU separati impedisce che si verifichino errori come questi.

Pubblicità

Per esempio, diciamo che Windows usa solo una singola cartella Program Files. Un’applicazione a 32 bit potrebbe andare a cercare un file DLL di Microsoft Office trovato in C:\Program Files\Microsoft Office e provare a caricarlo. Tuttavia, se avessi una versione a 64 bit di Microsoft Office installata, l’applicazione andrebbe in crash e non funzionerebbe correttamente. Con le cartelle separate, quell’applicazione non sarà in grado di trovare la DLL, perché la versione a 64 bit di Microsoft Office sarà in C:\Program Files\Microsoft Office e l’applicazione a 32 bit cercherà in C:\Program Files (x86)\Microsoft Office.

Questo aiuta anche quando uno sviluppatore crea entrambe le versioni a 32 e 64 bit di un’applicazione, specialmente se entrambe devono essere installate contemporaneamente in alcune situazioni. La versione a 32 bit si installa automaticamente in C:\Program Files (x86), e la versione a 64 bit si installa automaticamente in C:\Program Files. Se Windows usasse una singola cartella, lo sviluppatore dell’applicazione dovrebbe far installare la cartella a 64 bit in una cartella diversa per tenerle separate. E probabilmente non ci sarebbe un vero standard per dove gli sviluppatori installano le diverse versioni.

Perché la cartella a 32-bit è chiamata (x86)?

Non vedrete sempre “32-bit” e “64-bit”. Invece, a volte vedrete “x86” e “x64” per riferirsi a queste due diverse architetture. Questo perché i primi computer usavano il chip Intel 8086. I chip originali erano a 16 bit, ma le versioni più recenti sono diventate a 32 bit. “x86” ora si riferisce all’architettura pre-64-bit, sia a 16-bit che a 32-bit. La più recente architettura a 64-bit si riferisce invece a “x64”.

Questo è il significato di “Program Files (x86)”. È la cartella Programmi per i programmi che usano la vecchia architettura x86 della CPU. Basta notare, tuttavia, che le versioni a 64 bit di Windows non possono eseguire codice a 16 bit.

Questo normalmente non importa

RELATO: Cos’è la cartella AppData in Windows?

Non importa se i file di un programma sono memorizzati in Program Files o Program Files (x86). Windows installa automaticamente i programmi nella cartella corretta, quindi non devi pensarci. I programmi appaiono nel menu Start e funzionano normalmente, indipendentemente da dove sono installati. Sia i programmi a 32-bit che quelli a 64-bit dovrebbero memorizzare i tuoi dati in cartelle come AppData e ProgramData, e non in qualsiasi cartella di Program Files. Lascia che i tuoi programmi decidano automaticamente quale cartella di Program Files usare.

Pubblicità

Se stai usando un’app portatile, può essere eseguita da qualsiasi cartella del tuo sistema, quindi non devi preoccuparti di dove metterla. A noi piace mettere le app portatili in Dropbox o in un altro tipo di cartella di cloud storage, in modo che siano disponibili su tutti i nostri PC.

A volte avrete bisogno di sapere dove è memorizzato un programma. Per esempio, diciamo che vuoi andare nella tua cartella Steam per fare il backup di alcuni file. La troverai in C:\Program Files (x86), dato che Steam è un programma a 32 bit.

Se non sei sicuro se un programma che hai installato sia a 64 bit o meno e stai cercando la sua cartella di installazione, potresti dover cercare in entrambe le cartelle di Program Files per trovarlo.

Puoi anche cercare nel Task Manager di Windows 10.

Pubblicità

Sulle versioni a 64 bit di Windows, i programmi a 32 bit sono etichettati con il testo aggiuntivo “(32-bit)”, dandoti un’indicazione che li troverai in C:\Program Files (x86).

Chris Hoffman
Chris Hoffman è Editor-in-Chief di How-To Geek. Ha scritto di tecnologia per oltre un decennio ed è stato editorialista di PCWorld per due anni. Chris ha scritto per il New York Times, è stato intervistato come esperto di tecnologia in stazioni televisive come la NBC 6 di Miami, e il suo lavoro è stato coperto da notizie come la BBC. Dal 2011, Chris ha scritto oltre 2.000 articoli che sono stati letti quasi un miliardo di volte – e questo solo qui a How-To Geek.Read Full Bio ”

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.