Como Funciona a Tecnologia Intel EM64T
Por Gabriel Torres e Cássio Lima em 21 de dezembro de 2005
Introdução
A Intel lançou a sua “tecnologia de 64 bits” de modo a competir com a tecnologia de 64 bits da AMD. Esta tecnologia, oficialmente chamada EM64T (Extended Memory 64 Technology), já está presente em vários processadores Pentium 4, como todos os da série 6xx e os da série 5x1 (541, 551, 561, 571, etc). Além disso, os processadores Celeron D da série 3x1 e 3x6 (331, 336, 341, 346, etc) também possuem esta tecnologia, indicando a tendência de todos os processadores da Intel lançados daqui para a frente incorporarem esta nova tecnologia. Neste tutorial explicaremos o que é esta tecnologia e como ela funciona.
Se você quiser comparar a implementação da Intel com a da AMD, leia nosso artigo Arquitetura de 64 bits da AMD (x86-64).
Processadores com esta tecnologia possuem um novo modo de operação chamado IA32E, que tem dois sub-modos:
- Modo de Compatibilidade: Permite que sistemas operacionais de 64 bits rodem programas de 32 bits e 16 bits sem a necessidade de serem recompilados. O sistema operacional pode ter programas de 64 bits (no modo 64 bits), 32 bits e 16 bits (ambos no modo de compatibilidade) sendo executados ao mesmo tempo. No entanto, programas de 32 bits serão executados como se estivessem rondando em um processador de 32 bits, ou seja, acessarão no máximo 4 GB de memória RAM. A mesma idéia é válida para programas de 16 bits, que continuarão acessando no máximo 1 MB de memória RAM.
- Modo de 64 bits: Permite que sistemas operacionais e programas de 64 bits utilizem o novo espaço de endereçamento de 64 bits oferecido por esta tecnologia.
Como você pode ver acima, a tecnologia EM64T pode ser usada apenas por sistemas operacionais de 64 bits, como o Windows 64. Sistemas operacionais de 32 bits, como o Windows XP, continuarão rodando no modo IA32, ou seja, usando o espaço de endereçamento de 32 bits e podendo acessar a no máximo 4 GB de memória RAM.
Atualmente, o Windows não pode tirar vantagem da tecnologia EM64T por ainda ser um sistema operacional de 32 bits.
Características do Modo de 64 Bits
No modo 64 bits (IA32E), o processador ganha novas funcionalidades:
- Espaço de endereçamento de 64 bits, isto é, aplicações podem endereçar até 16 EB (exabytes) de memória RAM (2^64 bytes); no entanto, atualmente processadores Celeron D, Pentium 4 e Xeon com suporte a tecnologia EM64T possuem apenas 36 linhas de endereçamento, o que significa que eles podem acessar “apenas” 64 GB de memória RAM (2^36). Processadores Xeon DP com tecnologia EM64T possuem 40 linhas de endereçamento, o que significa que eles podem acessar até 1 TB (terabyte) de memória RAM (2^40). Essas limitações podem ser alteradas no futuro e a Intel poderá lançar processadores capazes de acessar até 16 EB de memória RAM.
- Oito registradores adicionais: No modo de 64 bits, o processador possui um total de 16 registradores de 64 bits. Estes novos registradores são chamados R8 a R15. É interessante notar que a Intel decidiu usar a mesma nomenclatura criada pela AMD em sua implementação de 64 bits, ou seja, o uso da letra “R” para indicar os registradores de 64 bits. Na Figura 1 você pode ver como o registrador de 64 bits RAX funciona.
clique para ampliar
Figura 1: Esquema de um registrador na tecnologia EM64T.
- Oito registradores adicionais para instruções SIMD (MMX, SSE, SSE2, SSE3): o processador possui um total de 16 registradores MMX de 64 bits no modo 64 bits. Os registradores chamados XMM continuam sendo de 128 bits, no entanto o número de registradores XMM foi dobrado de oito para 16. Estes registradores são usados pelas operações de ponto flutuante SSE.
- Todos registradores e ponteiros de instruções são de 64 bits. Os registradores da unidade de ponto flutuante continuam sendo de 80 bits.
- Os registradores de 64 bits continuam usando o mesmo esquema de divisão que permite que ele seja usado por operações de até oito bits (ver Figura 1). Por exemplo, o registrador de oito bits AL é, na realidade, os oito bits menos significativos do registrador RAX. Este esquema é chamado, em inglês, de “uniform byte-register addressing”.
- Mecanismo rápido de priorização de interrupção.
- Um novo ponteiro de instruções de 64 bits, chamado RIP, que substitui o ponteiro de instruções de 32 bits, chamado EIP.
- Um novo modo de endereçamento relativo para o ponteiro de instruções, chamado RIP-relative addressing (endereçamento relativo ao ponteiro de instruções).
Conclusões
A tecnologia EM64T é voltada para sistemas operacionais de 64 bits. Ponto. Se você quer comprar um Pentium 4 ou Celeron D com tecnologia de 64 bits para quando o Windows 64 e programas nativos de 64 bits chegarem ao mercado, vá em frente. Mas tenha em mente que você não será capaz de usar características exclusivas da tecnologia EM64T ao menos que você execute um sistema operacional e programas de 64 bits.
Se você tem um Pentium 4 ou Celeron D de 64 bits e o Windows 64, programas de 32 bits rodarão sem problemas, apesar de funcionarem no modo de compatibilidade, o que significa que eles “enxergarão” o processador como sendo de 32 bits. Se você utiliza aplicações “pesadas” e está pensando em migrar para a plataforma de 64 bits para ter acesso a mais de 4 GB de memória RAM, tenha em mente que você precisará de versões de 64 bits dos seus programas, ou eles continuarão acessando apenas 4 GB de memória RAM, não resolvendo assim o seu problema.
Também tenha em mente que o barramento de endereços externo dos processadores baseados na tecnologia EM64T não é de 64 bits e, portanto, nenhum processador da Intel usando esta tecnologia pode acessar 16 EB (exabytes) de memória RAM (2^64), como você pode pensar. A quantidade máxima de memória RAM que um processador pode acessar no modo de 64 bits depende da sua implementação. As versões de 64 bits dos processadores Celeron D, Pentium 4 e Xeon podem acessar a até 64 GB de memória RAM enquanto que o processador Xeon DP pode acessar a até 1 TB de memória. Mais uma vez tenha em mente que no modo de 32 bits ou no modo de compatibilidade de 64 bits o processador pode acessar apenas 4 GB de memória, mesmo que ele seja um “processador de 64 bits”.
Originalmente em http://www.clubedohardware.com.br/artigos/1143
© 1996-2008, Clube do Hardware. Todos os direitos reservados.
É expressamente proibida a reprodução total ou parcial do conteúdo deste site e dos textos disponíveis, seja através de mídia eletrônica, impressa, ou qualquer outra forma de distribuição. Os infratores serão indiciados e punidos com base na lei nº 9.610 de 19/02/1998.
Não nos responsabilizamos por danos materiais e/ou morais de qualquer espécie promovidos pelo uso das informações contidas no Clube do Hardware.