Quelle est la signification de 'i686' dans Ubuntu?

57

Pour vérifier si j'utilise Ubuntu 32 bits ou 64 bits. J'ai regardé dans Comment puis-je vérifier si j'ai un système d'exploitation 32 bits ou 64 bits? et trouvé cette réponse uname -a. Si elle s’affiche en tant que i386, elle sera en 32 bits et amd64, elle sera en 64 bits, mais j’ai eu le résultat suivant:

Linux mukund-ThinkPad-Edge-E431 3.8.0-35-generic #50-Ubuntu SMP Tue Dec 3 01:25:33 UTC 2013 i686 i686 i686 GNU/Linux

Quelle est cette i686? Est-ce 32 bits ou 64 bits? Je pense que c'est 32 bits, parce que tous les paquets Debian que j’ai installés sont de 32 bits. Quelqu'un peut-il donc donner une explication détaillée?

Mukund
la source
1
cette superutilisateur.com/a/238131/18500 et cette réponse à votre question: serverfault.com/a/188203/26514
Brian

Réponses:

56

i686 signifie que vous utilisez le 32 bitsystème d'exploitation.

Allez dans le terminal et tapez po

uname -a

Si vos résultats sont similaires à ceux ci-dessous, le vôtre est en 64 bits. sinon, c'est 32 bits.

Linux ubuntu-tm 2.6.35-28-generic #49-Ubuntu SMP Tue Mar 1 14:39:03 UTC 2011 x86_64 GNU/Linux

Si vous avez le x86_64 alors votre machine est en 64 bits.

Si vos résultats sont similaires à ceux-ci; alors vous avez 32 bits.

Linux Server 2.6.15-23-386 #1 SMP Tue Mar 1 13:49:40 UTC 2011 i686 GNU/Linux

Notez le code i686 dans le code, ce qui signifie que votre machine est en 32 bits.

MISE À JOUR:

Tapez ce qui suit dans le terminal;

uname -m

Cela vous donnera soit x86_64 , qui est 64 bits, soit quelque chose d'autre, qui est 32 bits.

Courtesy: https://superuser.com/a/260999/130574 (c'est une copie de cette réponse)

La P6 microarchitecturemicroarchitecture Intel x86 de sixième génération, mise en oeuvre par le microprocesseur Pentium Pro, a été introduite en novembre 1995. Le code i686 est destiné à être exécuté sur des processeurs compatibles avec la plate-forme Intel x86 32 bits, qui comprend tous les processeurs Intel 32 bits x86 jusqu'à Pentium 4 inclus, etc., ainsi que les processeurs d'AMD et d'autres fabricants de puces compatibles 32 bits.

Courtoisie: Wikipedia et ce lien

En bref:

Cela signifie simplement que vous utilisez un noyau 32 bits prenant en charge des codes compatibles avec l' i686architecture du processeur.

NB:

Cela ne signifie pas que votre système est uniquement capable d'exécuter un noyau 32 bits, cela signifie simplement que vous utilisez actuellement un système d'exploitation basé sur un noyau 32 bits.

saji89
la source
41

i686 est court à la microarchitecture P6 par Intel, introduit avec le Pentium Pro 1

En bref, il s’agit d’une architecture 32 bits. 8086 et 80286 sont même des processeurs 16 bits. 80386 est le premier processeur Intel 32 bits ( mode de travail protégé introduit , en plus du mode réel ). 80586 est le célèbre Pentium ™ .

i686 est largement utilisé pour décrire une architecture de processeur P6 32 bits compatible avec Pentium Pro / II et disposant d'un jeu d'instructions. Par exemple, AMD K7 (Duron ™ et Athlon ™) sont des i686.

Danatela
la source
6
Intel n'a jamais fabriqué de processeur numéroté 80686 (le Pentium II est numéroté 80522/3/4).
Alistair Buxton
3
i686 fait référence à l'architecture P6 qui a commencé avec le Pentium Pro et non au Pentium II.
Andrew Medico
27

Comme plusieurs affiches l'ont dit, votre noyau est en 32 bits. La signification de i686 mérite cependant un peu plus d'explications.

Lors de la compilation du noyau Linux (ce que les utilisateurs finaux n’ont généralement pas besoin de faire de nos jours - les bonnes personnes derrière Ubuntu fournissent le noyau prêt à être compilé), vous pouvez modifier diverses options. Une option importante est la prise en charge des fonctionnalités du processeur.

Tous les processeurs x86 sont compatibles avec le processeur Intel 80386 d'origine (abrégé i386). Si vous souhaitez un noyau compatible avec tous les processeurs x86, vous devez donc le compiler.

Cependant, les CPU modernes ont de nombreuses fonctionnalités supplémentaires (unité à virgule flottante intégrée, MMX, etc.), que Linux peut utiliser si elle est configurée pour le faire. Pour concilier compatibilité et performances en amont, le noyau d’Ubuntu est compilé avec la prise en charge des fonctionnalités disponibles sur le processeur Intel Pentium II (parfois abrégé en i686). C’est pourquoi le noyau apparaît en tant que i686.

Cela explique aussi en partie pourquoi les applications compilées pour les processeurs 64 bits sont parfois plus rapides. La i686 est apparue pour la première fois en 1997 et les processeurs modernes intègrent de nombreuses fonctionnalités qui n'étaient pas disponibles sur la i686 (SSE, registres supplémentaires, etc.), mais les applications doivent être compilées avec une prise en charge de ces fonctionnalités, ce qui peut compromettre la compatibilité avec les systèmes plus anciens. En revanche, les processeurs x86_64 étant apparus pour la première fois en 2003, les applications peuvent être compilées avec le support de certaines des fonctionnalités introduites entre 1997 et 2003, sans crainte de problèmes de compatibilité.

James_pic
la source
2
Il n'y a pas de définition standard de "i686". Il a été utilisé pour décrire tous les éléments de l'architecture P6 (y compris les processeurs ne pouvant plus exécuter Ubuntu), "Pentium II et supérieur" par Ubuntu et jusqu'à "Atom / Core2 ou supérieur" par d'autres distributions.
Alistair Buxton
J'aime bien quand vous dites "Cela explique aussi en partie pourquoi les applications compilées pour les processeurs 64 bits sont parfois plus rapides.". La première fois que j'ai utilisé un système 64 bits complet, l'amélioration de la vitesse m'a époustouflée. Toutefois, vous ne verrez pas cette accélération lorsque vous exécuterez un système mixte 32/64 bits.
Zane
2
Les CPU ont également l'instruction CPUID qui permet à la CPU de rapporter des indicateurs de caractéristiques. Vous pouvez les voir dans / proc / cpuinfo. Ainsi, même si le logiciel est compilé pour i686, il peut vérifier les drapeaux pour voir si davantage de fonctionnalités actuelles sont prises en charge.
Zan Lynx
Vive les infos sur les drapeaux de fonctionnalités et les aléas de la dénomination de la CPU. Je dois avouer que cela faisait longtemps que je n’avais pas besoin de compiler mon propre noyau (probablement quelque part dans la série 2.0), et j’imagine que depuis lors, Linux est devenu beaucoup plus intelligent en ce qui concerne les fonctionnalités de processeur. Si vous pensez que la présentation peut être améliorée, veuillez suggérer toute modification à laquelle vous pouvez penser.
James_pic
Si votre système dispose d'une mémoire RAM limitée et ne fait pas beaucoup de traitement numérique, vous obtiendrez peut-être de meilleures performances qu'un système 32 bits, car différentes choses seront stockées de manière plus compacte et votre système pourra en faire un peu plus avant de recourir à à utiliser le disque IO. Ne faites pas trop d'hypothèses à ce sujet sans tester cependant.
mc0e
1

Ouvrez les paramètres du système, puis cliquez sur Détails. Ensuite, vous voyez quel type d’OS vous avez.

J'ai Ubuntu 12.04 LTS 64 bits et uname -amontre ceci:

Linux ubuntu1 3.2.0-60-generic #91-Ubuntu SMP Wed Feb 19 03:54:44 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

Voir https://superuser.com/questions/238112/what-is-the-difference-between-i686-and-x86-64.

SPRBRN
la source
un problème existe, je ne trouve pas les paramètres système dans UE 3.8, je viens de l’installer, les paramètres système ne sont pas visibles dans le système / administration ou dans le système / préférences, pourquoi?
Mukund
1
Si vous ne le trouvez pas, vous pouvez commencer par le terminal:gnome-control-center
SPRBRN le
0

i686 est largement utilisé pour décrire une architecture de processeur P6 32 bits compatible avec Pentium Pro / II et disposant d'un jeu d'instructions.

Ibbu Md
la source
0

D'après ce que je peux trouver, vous pouvez également utiliser lscpupour trouver votre architecture, sans vous limiter à la version pour laquelle votre noyau a été compilé.

iggy12345
la source