Dave Thomson ha chiesto delle cartelle Program Files e Program Files (x86). “Perché ce ne sono due, e c’è qualche vantaggio nell’usarne una piuttosto che l’altra?”
Primo, non dovresti sceglierne una piuttosto che l’altra. Lascia che Windows prenda questa decisione quando installa il software.
Come la maggior parte degli utenti di PC aggiornati, stai chiaramente usando una versione a 64 bit di Windows. I computer in grado di eseguire codice a 64 bit (chiamati anche x64) sono in circolazione da quasi un decennio, e sono praticamente onnipresenti in questi giorni. Lo stesso vale per le versioni x64 di Windows.
Ma anche se la stragrande maggioranza dei PC in questi giorni eseguono Windows x64, molti programmi (probabilmente la maggior parte di quelli sul tuo PC) sono ancora scritti per la vecchia versione a 32 bit. Per scopi di retrocompatibilità, Windows x64 ha bisogno di eseguire sia programmi a 64 che a 32 bit.
Windows funziona meglio se tiene separati questi due tipi di codice molto diversi. Il sistema operativo non può presumere che un programma x86 sappia anche che esiste una cosa come il codice x64, e questo potrebbe causare problemi se si incrociano. Per esempio, se un programma a 32 bit andasse a cercare una .dll, e ne trovasse una che viene fornita con una versione x64, il programma non funzionerebbe e non saprebbe perché non funziona. Tenerli in cartelle separate è il modo più semplice per evitare tali problemi.
Perché il codice a 32 bit è identificato come x86 invece che x32? I chip a 16 bit nei primi PC usavano l’architettura 8086. Anche quando i chip sono diventati a 32 bit alla fine degli anni ’80, usavano ancora il codice 8086, e i numeri di modello x86. (Ricordate i processori 386 e 486?) Quindi il numero 86 ora si riferisce al codice pre-x64, che sia a 16 o 32 bit, anche se il codice x86 a 16 bit non funzionerà nelle versioni a 64 bit di Windows.