Différence entre le téléchargement i386 et l'amd64?

147

Quelle est la différence entre le téléchargement standard d’i386 et le téléchargement amd64 d’Ubuntu 11.04? Je suis actuellement en train d'exécuter l'i386 sur une machine amd, mon système fonctionnerait-il mieux avec le téléchargement amd64 à la place? (ma machine fonctionnait sous Windows 7 64 bits, mais j'ai négligé de regarder cela avant d'installer Ubuntu).

    
posée Rob 24.07.2011 - 01:57
la source

5 réponses

147

i386 fait référence à l'édition 32 bits et amd64 (ou x86_64) à l'édition 64 bits des processeurs Intel et AMD.

L'entrée Wikipedia de l'i386:

  

L’Intel 80386, également connu sous le nom de i386, ou seulement 386, était un microprocesseur 32 bits introduit par Intel en 1985 ... On l’appelle architecture x86, IA-32 ou i386, selon le contexte.

Entrée x86_64 de Wikipedia:

  

x86-64 est une extension du jeu d'instructions x86. Il prend en charge des espaces d'adressage virtuel et physique beaucoup plus grands que ceux possibles sur x86, permettant ainsi aux programmeurs de travailler facilement avec des ensembles de données beaucoup plus volumineux ... Après le lancement de l'architecture sous le nom "x86-64", AMD l'a renommé ... -64 est encore utilisé par de nombreux acteurs du secteur en tant que fournisseur indépendant, tandis que d’autres, notamment Sun Microsystems (désormais Oracle Corporation) et Microsoft, utilisent le format x64.

Même si vous avez un processeur Intel, vous devez utiliser AMD64 pour installer 64 bits sur votre ordinateur (il utilise les mêmes jeux d’instructions).

Je recommande fortement de l'utiliser. Pour la plupart, vous ne remarquerez pas de différence, mais pour les charges de travail importantes (telles que l'édition vidéo, les jeux, etc.), l'ordinateur fonctionnera plus rapidement (l'ordinateur peut calculer 2 + 2 + 2 = 6 au lieu de devoir 2 + 2 = 4 + 2 = 6 dans un exemple). Dans le monde Windows, un système d'exploitation 32 bits ne vous permettra pas d'utiliser plus de 3,5 Go de RAM sur votre ordinateur (même si vous en avez 8!). Vous devez utiliser un système d'exploitation 64 bits pour utiliser pleinement toute la mémoire vive. Pour Linux, cependant, il n’ya pas de limite (merci, Uri).

Quoi qu’il en soit, le monde est passé de 32 bits et il n’est là que pour prendre en charge des machines plus anciennes incapables d’exécuter 64 bits.

    
réponse donnée user6658 24.07.2011 - 02:00
la source
40
  

L’architecture porte le nom d’AMD car AMD l’a inventé, avec le   Athlon 64. De même, l’architecture 32 bits i386 porte le nom   Processeur Intel 386, car il était le premier du genre, mais i386   travaillera également sur les processeurs AMD. Alors oui, vous pouvez utiliser cette image ISO.

Source: lien

    
réponse donnée Mitch 31.05.2012 - 23:00
la source
8

oui, vous pouvez installer amd64 bit à processeur Intel 64 bits. AMD a inventé le processeur de jeux d’instructions x86-64 bits, le nom n’est qu’un hommage à AMD.

    
réponse donnée Roney Thomas 31.05.2012 - 23:23
la source
6

Oui, vous pouvez utiliser ce .ISO. amd64 se réfère à l'architecture. AMD a été le premier à créer un processeur 64 bits, je pense donc qu’il s’agissait d’un nom qui l’appelait à l’époque, et que le nom restait bloqué. Cela semble un peu déroutant, mais amd64 signifie juste 64 bits.

    
réponse donnée reverendj1 31.05.2012 - 22:59
la source
6

La différence entre amd64 et i386 est que amd64 est 64 bits lorsque i386 est 32 bits . C'est la largeur (en bits) des registres disponibles dans le noyau.

En gros, le plus grand nombre de processeurs 32 bits qu’un cœur peut traiter en une fois dépasse un peu plus de 4,29 milliards, tandis qu’un cœur 64 bits peut traiter un peu plus de 18,44 milliards milliards.

Les cœurs des PC modernes peuvent se comporter comme un processeur 64 bits ou 32 bits, selon la version du système d'exploitation que vous avez installée.

Le code 64 bits a tendance à être plus rapide que le code 32 bits, car il peut gérer un plus grand nombre de requêtes ou parce que les cœurs 64 bits ont plus de registres. . Bien qu'il n'y ait aucune garantie que le code 64 bits s'exécutera plus rapidement si le code n'a pas été écrit pour tirer parti des fonctionnalités supplémentaires du processeur.

La compilation sur un système 32 bits produira un code différent de celui d’un système 64 bits. Vous pouvez le prouver en compilant le code d'assemblage sur les deux systèmes. En supposant que votre fichier C est myfile.c , essayez gcc -S myfile.c sur les deux systèmes et comparez myfile.s

Un code bien écrit pour un système 32 bits doit être compilé et exécuté sur un système 64 bits, mais tout le code n’est pas bien écrit. De nombreux programmeurs émettent des hypothèses sur le système qui peuvent ne pas être vraies: telles que la largeur du registre ou l’ordre des octets.

Sans accès à votre code source, il est difficile de voir quel est le problème, mais un segmenation fault indique qu'une tentative d'accès à la mémoire n'appartenant pas au programme a été effectuée. Cela peut, par exemple, indiquer que mem_ptr est un pointeur 32 bits convenant à un système 32 bits, mais devant être un pointeur 64 bits sur un système 64 bits.

    
réponse donnée Warren Hill 18.03.2013 - 14:24
la source

Lire d'autres questions sur les étiquettes