Processeur 64 bits
Un processeur 64 bits est un processeur dont la largeur des registres est de 64 bits sur les nombres entiers.
![](http://upload.wikimedia.org/wikipedia/commons/thumb/5/50/KL_AMD_Athlon_64_X2_Brisbane.jpg/220px-KL_AMD_Athlon_64_X2_Brisbane.jpg)
Extension de l’adressage 32 bits
modifierLes processeurs 32 bits ne peuvent normalement pas adresser plus de 4 Gio (232 octets) de mémoire centrale, tandis que les processeurs 64 bits peuvent en adresser 16 Eio (264 octets). C'est pourquoi dès qu'il y a plus de 4 Gio de RAM sur une machine, la mémoire au-delà de ce seuil ne sera directement adressable qu'en mode 64 bits.
Diverses techniques contournent cette limitation sans franchir le pas du mode 64 bits. Elles offrent de prolonger la durée de vie des environnements 32 bits lorsque le passage au 64 bits n'est pas possible pour des raisons de compatibilité (non prise en charge par les pilotes ou applications).
Parmi elles, l’extension d'adresse physique (en anglais : Physical Address Extension[1], ou PAE) est un système de pagination fourni par les processeurs x86, qui étend à 36 bits la taille des adresses mémoire qui font normalement 32 bits, ce qui permet d’adresser 64 Gio (236 octets) de mémoire physique au lieu de 4 Gio (232 octets).
D’autres techniques incluent l’extension de taille des pages (en)[2] (autre fonctionnalité des processeurs x86), les Address Windowing Extensions (en)[3] (fonctionnalité des systèmes Windows) ou le recours à mmap
(fonctionnalité du noyau Linux).
Processeurs 64 bits
modifierEn 64 bits, les bus de données et d'adresse passent de 32 bits (4 octets) à 64 bits (8 octets). Mais dans le cas de l'architecture x86, ce n'est pas l'unique changement. Les processeurs x86 32 bits conçus par Intel (Celeron, Pentium, Pentium II, Pentium III, Pentium 4 jusqu'au Prescott) sont en fait des processeurs 8 bits (l'Intel 8088) améliorés pour faire du 16 bits, et à nouveau améliorés pour faire du 32 bits. La structure des registres dans un processeur x86 32 bits hérite donc de ce passé, tant dans le nombre réduit de registres que dans leur structure archaïque. Passer de x86 32 bits à x86 64 bits permet de passer de 8 registres généraux 32 bits à 16 registres généraux 64 bits. Ceci ne vaut que pour l'architecture x86, les autres architectures qui existent en 32 bits et 64 bits (MIPS, SPARC, PowerPC…) n'ont pas leur version 32 bits encombrée d'une structure archaïque.
Le passage de 32 bits à 64 bits augmente la consommation de mémoire. En effet, les entiers et les adresses passent de 32 bits (4 octets) à 64 bits (8 octets). Il faut donc deux fois plus d'octets pour les représenter. Cela ne signifie pas forcément qu'un programme consommant 256 Mio en 32 bits consommera automatiquement 512 Mio en 64 bits. Il consommera un peu plus de mémoire, mais pas nécessairement le double.
Exemples de processeurs 64 bits
modifier- Les Itanium d'Intel basés sur l'architecture IA-64.
- Les x86-64 ou x64 (AMD64 d'AMD ou Intel 64 d'Intel).
- Les IBM POWER.
- Leurs dérivés grande diffusion, comme le PowerPC G5 d'IBM.
- Des sociétés comme DEC, SGI ou Sun Microsystems ont depuis le milieu des années 1990 employé des microprocesseurs 64 bits, respectivement l'Alpha, le MIPS R4000 et l'UltraSPARC. Sorti en 1991 peu avant le DEC Alpha, le MIPS R4000 est probablement le premier processeur de cette génération.
- Les microprocesseurs ARMv8-A Cortex-A53, A57, A72 et A73 (AArch64).
- Les MIPS64 d'Imagination Technologies.
Systèmes d'exploitation 64 bits
modifierIl ne suffit pas d'avoir une machine avec processeur 64 bits et d’y installer les versions « habituelles » du système d'exploitation et des logiciels. De cette façon, le processeur 64 bits tournera en mode 32 bits (compatibilité descendante). Pour réellement utiliser un ordinateur 64 bits en mode 64 bits, il faut disposer des versions 64 bits du système d'exploitation, des pilotes et des logiciels.
Tous les systèmes d’exploitation modernes supportent au moins partiellement le mode 64 bits. La majorité d’entre eux présentent une version 32 bits et une version 64 bits, et il faut donc choisir laquelle installer. Certains systèmes existent en une seule version « unifiée ». C'est le cas, par exemple, de Solaris, dont le noyau est 64 bits mais pour lequel les exécutables peuvent être 64 bits ou 32 bits.
macOS, lui, n'est, depuis la version 10.8 « Mountain Lion », disponible qu'en 64 bits. Le système reste rétrocompatible avec les applications 32 bits mais le noyau n'existe qu'en 64 bits puisque Apple a délaissé le 32 bits sur Mac OS System.
Systèmes Unix et dérivés
modifier- L’ancien système d’exploitation IRIX (pour architecture MIPS), dès 1994 (version 6.0) ; c’était le premier système 64 bits[réf. nécessaire].
- HP-UX, depuis 1997 (version 11.0).
- Solaris, depuis 1998 (version 7).
- La majorité des distributions GNU/Linux depuis 2001 (noyau 2.4).
- FreeBSD, depuis (version 5.2-RELEASE).
- OpenBSD, depuis (version 3.5).
- NetBSD, depuis (version 2.0).
- Mac OS X (pour architectures PowerPC et x86), depuis (version 10.6 « Snow Leopard »), avec support exclusif depuis (version 10.8 « Moutain Lion »).
- iOS, depuis (version 7). Avec la 11e version de iOS en 2017, toutes les applications doivent être impérativement codées en 64 bits, les versions 32 bits sont incompatibles.
- Android, depuis (version 5 « Lollipop »).
Produits Microsoft
modifier- Des versions 64 bits des produits Microsoft pour l'architecture Itanium sont disponibles depuis 2001. Les systèmes suivants existent en version 64 bits pour Itanium : Windows 2000, Windows XP, Windows Server 2003 et Windows Server 2008. Aucun n’est aujourd’hui supporté ;
- Des versions 64 bits des produits Microsoft pour l'architecture x86 sont disponibles depuis 2005. Les systèmes suivants existent en version 64 bits pour x86 : Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows Server 2008 R2, Windows 7, Windows 8 et 8.1, Windows 10 et Windows 11. Actuellement, seuls Windows 10 et Windows 11 sont encore supportés par Microsoft ;
- Des versions des produits Microsoft conçues pour des architectures 64 bits ont été disponibles bien avant l'apparition de Windows 2000 : Windows NT 3.x et Windows NT 4.0 ont existé en versions adaptées aux processeurs DEC Alpha ou MIPS R4000. Comme les versions équivalentes pour x86, toutes ces versions ne sont plus supportées par Microsoft.
- Depuis 2012, Microsoft impose le 64 bits aux utilisateurs professionnels désireux d'installer la virtualisation et les produits « cloud ».
Notes et références
modifier- (en) « Physical Address Extension », Microsoft, (consulté le ).
- (en) « 4-Gigabyte Tuning: BCDEdit and Boot.ini », Microsoft, (consulté le ).
- (en) « Address Windowing Extensions », Microsoft, (consulté le ).
Autres
modifierLiens externes
modifier- (en) Introduction to 64bits computing and x86-64
- (en) OpenVMS.org OpenVMS sur la plate-forme 64 bits originale
- (en) Dual Core Click - BBC, Click Online,
- (en) Apple Mac OS X 64-bit Transition Guide[PDF]
- Articles sur le software et hardware compatible 64-bit
- (en) Road to Mac OS X Snow Leopard: 64-bit to the Kernel