O Ubuntu 18.04 LTS se recusa a instalar em uma Dell de 64 bits com CPU Intel Core 2 Quad de 3 GHz de 64 bits que diz ser “i386”

3

O sistema é uma Dell com um processador Intel Q9650 Core 2 Quad de 3 GHz de de 64 bits .

O executa o Windows 7 Professional (x64) SP1 e mostra todos os 4 núcleos na guia Desempenho do Gerenciador de Tarefas. A maioria dos programas do Windows instalados é de 64 bits.

O Ubuntu 18.04 LTS se recusa a instalar, dizendo que este é um processador "i386" .

Ele nem permitirá a opção "Experimentar o Ubuntu"

Este sistema suporta várias unidades de 5 TB como NAS. Além disso, 16 GB de RAM.

O hardware de 64 bits foi introduzido pela Intel para suportar grandes quantidades de ambos.

Nunca se pretendeu que as pessoas parassem quando os sistemas operacionais começaram a exigir arquiteturas de CPU mais especializadas, como o "AMD64" da AMD

Quem está dirigindo esse ônibus? (perdoe o trocadilho)

Por que nem todos os processadores de 64 bits são suportados por este sistema operacional de 64 bits?

Isso não faz sentido.

    
por SDsolar 01.05.2018 / 16:34

1 resposta

6

Sua CPU Core 2 Quad Intel Q9650 de 64 bits é não suportada pelo Windows 10 ou . Foi lançado em 2008 e considerado antigo demais para sistemas operacionais modernos.

Olhando as suas especificações em Site da Intel , notei que ele não tem hyper-threading. Também não tem Turbo-Boost, que é provavelmente uma preocupação menor.

Mais importante, há o conjunto de instruções de 64 bits que evoluiu ao longo do tempo. O Linux testa cada CPU durante a inicialização para ver se certas instruções são suportadas. Não consigo encontrar a referência que procurava, mas esta uma descreve as verificações do kernel:

Depois de configurarmos a pilha, o próximo passo é a verificação da CPU. Como vamos executar a transição para o modo longo, precisamos verificar se a CPU suporta o modo longo e o SSE. Nós faremos isso pela chamada da função verify_cpu :

call    verify_cpu
testl   %eax, %eax
jnz     no_longmode

Esta função definida no arquivo arch/x86/kernel/verify_cpu.S assembly e contém apenas algumas chamadas para a instrução cpuid. Esta instrução é usada para obter informações sobre o processador. No nosso caso, ele verifica o suporte a modo longo e SSE e retorna 0 no sucesso ou 1 na falha no registro eax .

Se o valor de eax não for zero, nós pulamos para o rótulo no_longmode que apenas interrompe a CPU pela chamada da instrução hlt , enquanto nenhuma interrupção de hardware não ocorrerá:

no_longmode:
1:
    hlt
    jmp     1b

Se o valor do eax register for zero, tudo ficará bem e poderemos continuar.

Para resumir, há muitas coisas que a sua CPU com década de idade não suporta esse suporte a processadores modernos de 64 bits.

    
por WinEunuuchs2Unix 02.05.2018 / 01:16