web-dev-qa-db-fra.com

Ubuntu 18.04 LTS refuse l’installation sur un Dell 64 bits doté d’un processeur Quad Core 2 Intel 64 bits à 3 GHz, il est dit "i386"

Le système est un Dell avec un quadri-processeur Intel Q9650 Core 2 64 GHz à 3 GHz.

Il exécute Windows 7 Professionnel (x64) SP1 et affiche les 4 cœurs dans l'onglet Performances du gestionnaire de tâches. La plupart des programmes Windows installés sont des versions 64 bits.

buntu 18.04 LTS refuse d’installer, affirmant qu’il s’agit d’un processeur "i386".

Cela n'autorisera même pas l'option "Essayer Ubuntu"

Ce système prend en charge plusieurs disques 5 TB en tant que NAS. En outre, 16 Go de RAM.

Le matériel 64 bits a été introduit par Intel afin de prendre en charge une plus grande quantité des deux.

Cela n’a jamais été fait pour empêcher les utilisateurs de s’arrêter, car les systèmes d’exploitation exigeaient des architectures de CPU plus spécialisées, telles que "AMD64" d’AMD.

Qui conduit ce bus? (pardonnez la blague)

Pourquoi tous les processeurs 64 bits ne sont-ils pas pris en charge par ce système d'exploitation 64 bits?

Cela n'a pas de sens.

3
SDsolar

Votre processeur Intel Q9650 Core 2 Quad 64 bits est non pris en charge par Windows 10 soit . Il a été publié en 2008 et jugé trop ancien pour les systèmes d'exploitation modernes.

En regardant vos spécifications sur site Web d'Intel J'ai remarqué qu'il n'y a pas d'hyper-threading. De plus, il n’a pas de Turbo-Boost, ce qui est probablement moins inquiétant.

Plus important encore, le jeu d'instructions 64 bits a évolué au fil du temps. Linux teste chaque processeur au démarrage pour voir si certaines instructions sont prises en charge. Je ne trouve pas la référence que je cherchais mais ce n décrit les vérifications du noyau:


Une fois la pile configurée, l'étape suivante est la vérification du processeur. Comme nous allons exécuter la transition vers le mode long, nous devons vérifier que la CPU prend en charge le mode long et SSE. Nous allons le faire en appelant la fonction verify_cpu:

call    verify_cpu
testl   %eax, %eax
jnz     no_longmode

Cette fonction définie dans le fichier Assembly Arch/x86/kernel/verify_cpu.S contient uniquement quelques appels à l'instruction cpuid. Cette instruction est utilisée pour obtenir des informations sur le processeur. Dans notre cas, il vérifie le mode long et SSE et prend en charge renvoie 0 en cas de succès ou 1 en cas d'échec dans le registre eax.

Si la valeur de eax n'est pas zéro, nous passons à l'étiquette no_longmode qui arrête simplement le processeur par l'appel de l'instruction hlt alors qu'aucune interruption matérielle ne se produira:

no_longmode:
1:
    hlt
    jmp     1b

Si la valeur du registre eax est égale à zéro, tout va bien et nous pouvons continuer.


Pour résumer, il y a beaucoup de choses que votre processeur âgé de 10 ans ne prend pas en charge par rapport aux processeurs 64 bits modernes.

6