Program Files (x86) : A quoi sert ce dossier ?

Image mis en avant de l'article

Si votre PC n’est pas trop vieux, il y a de grandes chances que vous ayez deux dossiers bien distincts où Windows installe ses programmes. Lors de l’installation d’un logiciel, il le place par défaut soit dans le dossier « Programmes » soit dans le dossier « Program Files (x86) ». Mais pourquoi y en a-t-il deux ? À quoi ça sert ? Et surtout, c’est quoi ce dossier « Program Files (x86) » ?! Voyons voir ça rapidement !

Les logiciels 32bits et 64bit

Pour pouvoir comprendre le rôle de ce dossier spécial, il est important déjà de savoir qu’il existe plusieurs types de logiciels. Ces logiciels ne peuvent être exécutés que par un type de processeur spécifique. Ce sont les logiciels/processeurs 32bits et 64bits !

Les processeurs de nos jours sont tous des processeurs 64bits, ils peuvent donc traiter des chiffres d’une longueur maximum de 8 octets ce qui représente le chiffre 264 (un très grand chiffre !).

Les processeurs 32bits quant à eux ne peuvent traiter qu’un chiffre plus petit, d’une valeur maximum de 232, ce qui représente le nombre 4 294 967 296. Et je ne parle même pas des processeurs 16bits et 8bits qui sont encore plus petits sur leur capacité à gérer des chiffres.

Icône d'un processeur

Un logiciel est composé d’un code binaire brut qui va être lu par le processeur. Le processeur en lisant ce code, va effectuer tout un tas d’actions. Mais que se passe-t-il si un logiciel demande quelque chose à un processeur 32bit par un code binaire qui est composé d’un chiffre à plus de 232 ? Si je ne vous ai pas perdu, voici un petit exemple pour mieux comprendre :

  • Le logiciel donne une instruction au processeur pour faire une action, l’instruction est représentée par le chiffre 5 000 000 000.
  • Le logiciel demande au processeur de récupérer une valeur dans la mémoire à la position 10 000 000 000.

Que se passe-t-il dans ce cas ? Et bien, le processeur 32bits ne peut pas comprendre l’instruction, car il ne peut pas traiter ce chiffre trop grand. Il va donc faire autre chose, mais pas ce qu’on demande, c’est le bug assuré !

Les logiciels 64bits qui sont conçus pour les processeurs 64bits ne peuvent être exécutés que par ceci. Par contre, les logiciels 32bits et plus bas peuvent être exécuté par des processeurs 64bits ou plus si un jour ils existent.

Deux dossiers différents

Comme pour les processeurs, il existe différentes versions de Windows : la version 32 et la version 64bits.

Windows, comme tout autre OS, est un très très gros logiciel. Suivant sa version, il ne peut être installé que sur un processeur qui est capable de l’exécuter.

Dans les versions 32 bits de Windows, il n’y a qu’un seul dossier où il range ses programmes, le dossier « Programmes ». Le dossier Program Files (x86) n’existe pas dans les versions 32 bits.

Seuls les systèmes Windows 64bits ont les deux dossiers ! Ces deux dossiers ont exactement le même rôle à savoir contenir les programmes de Windows. Simplement, les versions 64bits de Windows peuvent aussi exécuter des logiciels compilés en 32bits ! D’où l’intérêt des deux dossiers !

Dossiers des programmes Windows

Il arrive à les exécuter grâce à une opération complexe qu’on appelle une émulation WOW64, WOW64 qui signifie « Windows32 on Windows64 ». L’exécution d’un programme 32bit sur un Windows 64bit ne pose donc aucun problème, si ce n’est du fait que ces logiciels ne peuvent avoir que 4 Gbit de RAM maximum.

Windows aime faire la distinction entre ses deux types de logiciels, il va donc les placer dans deux dossiers distincts, nos fameux dossiers :

  • Les logiciels 32bits dans « Program Files (x86) »
  • Les logiciels 64bits dans « Programmes »

À quoi ça sert ?

Cela permet d’organiser les programmes par types de logiciels et permet par la même occasion, d’avoir deux types d’un même logiciel installé sur le PC (le même logiciel en version 32 et 64bit).

Les applications 64bits ont été compilées pour une utilisation sur un processeur 64bits. Par conséquent, ils utilisent des fonctionnalités propres à Windows 64bits et accèdent à des librairies 64bits. Les programmes 32bits quant à eux n’utilisent que du 32bits. Le 64 bits n’existe pas pour eux, ils pensent qu’ils sont dans un environnement 32bit.

S’il y a la moindre interaction entre un logiciel 32bits et un logiciel 64bits, cela peut générer de grosses erreurs ! Mais Windows gère tout ça très bien et il n’y a généralement pas de soucis à se faire.

Il est donc possible d’installer des programmes 64bits dans le dossier « Program Files (x86) » et inversement, ça ne pose pas de problème dans la plupart des cas. Il est quand même préférable de laisser Windows gérer l’endroit où seront installés ces logiciels.

Finalement, les dossiers « Programmes » et « Program Files (x86) » servent juste pour organiser les programmes dans Windows en les rangeant par type de logiciels.

Dans tous les cas, les deux dossiers doivent être gardés et ne pas être supprimés ! Les deux !

x86 ??

Pourquoi x86 ? Ce n’est pas mieux x32 ?

Le x86 est une autre façon de désigner les processeurs, les logiciels et les systèmes 32bits. Cela vient du fait que les premiers processeurs 32bit principaux étaient des Intel 80386/80186 et des AMD AM386/AM486[1]. Les fabricants ont juste gardé les deux derniers chiffres pour parler de leurs processeurs, d’où le x86.

Et voilà, le mystère est résolu ! Ces deux dossiers n’ont plus de secrets pour vous, du moins plus trop !

😎


Ressources :
– Icons made by Prosymbols from www.flaticon.com is licensed by CC 3.0 BY

Sources :
x86

Partager l’article :
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

4 Commentaires

  1. Schaller

    Très intéressant. Je comprends mieux le message qui s’affiche lorsque je démarre mon portable, à savoir:

    Problèmes lors du démarrage de C: ProgramFiles(x86) \ ThinkPad \ Utilities \ PWMTR 64 V.dll

    Je ne sais pas comment y remédier.

    • Salut, j’ai fait quelques petites recherches sur ton souci. Il semblerait que cela vient du pilote « Lenovo Power Management », il ne doit pas être à jour, du coup il y a des problèmes de compatibilité entre le pilote et ton Windows. La solution serait de télécharger la nouvelle version du pilote en suivant par exemple ce lien si tu as Windows 10.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.