Qual é a diferença entre Intel 64 e AMD64?

Qual é a diferença entre Intel 64 e AMD64?

Alguém pode explicar se existe alguma diferença entre as arquiteturas intel64 e amd64?

Responder1

Pelo que li a tecnologia de memória estendida de 64 bits (EM64T) é a implementação da Intel do AMD64 da AMD e as diferenças entre o Intel64 e o AMD64 são:

  • As instruções BSF e BSR do EM64T agem de maneira diferente quando a fonte é 0 e o tamanho do operando é 32 bits. O processador define o sinalizador zero e deixa os 32 bits superiores do destino indefinidos.

  • AMD64 suporta 3DNow! instruções. Isso inclui a pré-busca com o opcode 0x0F 0x0D e PREFETCHW, que são úteis para ocultar a latência da memória.

  • O EM64T não possui a capacidade de salvar e restaurar uma versão reduzida (e, portanto, mais rápida) do estado de ponto flutuante (envolvendo as instruções FXSAVE e FXRSTOR).

  • O EM64T não possui alguns registros específicos do modelo que são considerados arquitetônicos para o AMD64. Isso inclui SYSCFG, TOP_MEM e TOP_MEM2.

  • EM64T suporta atualização de microcódigo como no modo de 32 bits, enquanto os processadores AMD64 usam um formato de atualização de microcódigo diferente e controlam MSRs.

  • A instrução CPUID do EM64T é muito específica do fornecedor, como é normal para processadores estilo x86.

  • EM64T suporta as instruções MONITOR e MWAIT, utilizadas pelos sistemas operacionais para melhor lidar com Hyper-threading.

  • Os sistemas AMD64 permitem o uso da abertura AGP como IO-MMU. Os sistemas operacionais podem tirar vantagem disso para permitir DMA de dispositivos PCI normais para memória acima de 4 GiB. Os sistemas EM64T requerem o uso de buffers de rejeição, que são mais lentos.

  • SYSCALL e SYSRET também são suportados apenas no modo IA-32e (não no modo de compatibilidade) no EM64T. SYSENTER e SYSEXIT são suportados em ambos os modos.

  • Ramos próximos com o prefixo 0×66 (tamanho do operando) se comportam de maneira diferente. Um tipo de CPU limpa apenas os 32 bits principais, enquanto o outro tipo limpa os 48 bits principais.

Responder2

NoPágina x86 da Wikipédiavocê pode ler

Em 1999-2003, a AMD estendeu essa arquitetura de 32 bits para 64 bits e referiu-se a ela como x86-64 nos primeiros documentos e posteriormente como AMD64. A Intel logo adotou as extensões arquitetônicas da AMD sob o nome IA-32e, que mais tarde foi renomeado para EM64T e finalmente para Intel 64.

Ou seja, o diferencial é principalmente o marketing. Existem extensões específicas da Intel e da AMD para o conjunto de instruções, mas contanto que você esteja escrevendo programas no espaço do usuário, geralmente não precisa saber a diferença.

informação relacionada