64 Bits porque? Conhecendo mais sobre o Windows Server 2003 64-bits

Publicado em:
09/01/2011

Por: Fábio Augusto

O pessoal na sala, assim como várias´dúvidas, questionam sempre, qual a diferença de 64 bits pelo 32 bits ? quais vantagens?

Versões 64-bits do Windows Server 2003

As versões 64-bits do Windows Server são desenhadas para os processadores de alto desempenho disponíveis atualmente. Em linhas gerais, um processador de 64bits processa em um ciclo de clock, o que um processador de 32bits leva dois ciclos para concluir.

Estes processadores aumentam o desempenho e a escalabilidade, processando mais dados, endereçando mais memória e executando cálculos numéricos mais rápido. São ideais para cargas elevadas de processamento e uso de memória. Grandes conjuntos de dados podem ser carregados inteiramente na memória sem a necessidade de tabelas de referência, como as usadas com o PAE usado nos sistemas x86 para endereçamento acima de 4GB de memória RAM.

A arquitetura Windows de 64-bits permite redução do custo total de propriedade (TCO), oferecendo uma plataforma de 64-bits que se integra com o ambiente de 32-bits, aproveitando o conhecimento dos profissionais sobre Windows e permitindo que as aplicações 32-bits sejam executadas no sistema de 64-bits, e possibilitando também que novas demandas de 64-bits sejam atendidas com o cenário de 32-bits.

A família Windows Server 2003 suporta duas arquiteturas de 64-bits diferentes, atualmente disponíveis no mercado. A primeira arquitetura suportada é chamada EPIC (Explicitly Parallel Instruction Computing) desenvolvida pela Intel e implementada no processador Intel Itanium (IA64). Esta arquitetura oferece suporte nativo para aplicações 64-bits

A segunda arquitetura de 64-bits suportada pela família Windows Server 2003 é a baseada em extensões 64-bits do conjunto de instruções x86. Conhecida como arquitetura x64 ela potencializa o uso das aplicações Windows de 32-bits, enquanto permite o uso da tecnologia de 64-bits com excelente relação custo x benefício. A arquitetura x86 está disponível no mercado através dos processadores AMD64 e Intel com Extended Memory 64 Technology (EM64T) (Intel IA-32e).

Dentre os produtos Windows Server 2003 de 64bits temos;

  • Windows Server 2003 para sistemas 64bits baseados em Intel Itanium
    • Windows Server 2003, Enterprise Edition
      Até 8 processadores Intel Itanium 2
      Até 64GB de memória RAM
    • Windows Server 2003, Datacenter Edition
      Até 64 processadores Intel Itanium 2
      Até 512GB de memória RAM
  • Windows Server 2003 versão x64 (disponível no primeiro semestre de 2005)
    • Windows Server 2003 Standard x64 Edition
      Até 4 processadores (AMD Opteron, Intel Xeon EM64T e Intel Pentium EM64T)
      Até 32GB de memória RAM
    • Windows Server 2003 Enterprise x64 Edition
      Até 8 processadores (AMD Opteron, Intel Xeon EM64T e Intel Pentium EM64T)
      Até 1TB de memória RAM

Windows 64-bits: hardware e drivers

Devido as diferenças de hardware, o IA64 e o x64 necessitam de versões binárias diferentes do sistema operacional, desta forma a Microsoft disponibiliza duas versões diferentes de Windows, uma para cada sistema.

Outra característica importante se deve aos drivers. Drivers escritos para x64 são compatíveis com implementações AMD64 e Intel EM64T. O quadro abaixo ilustra a interoperabilidade entre hardware e drivers.

Cc668472.ConhecendoWinServer2003_01(pt-br,TechNet.10).gif

Como podemos ver no quadro, o uso de drivers de 32-bits no Windows Server instalado em hardwares x64 só é possível se este Windows for uma versão também 32-bits. Quando são utilizadas versões 64-bits do Windows Server em sistemas x64, deve se utilizar também drivers escritos em 64-bits.

Na arquitetura x64 é possível executar versões 32-bits ou 64-bits do Windows Server através da carga de uma BIOS de 32-bits, tornando esta uma arquitetura que favorece a transição de um ambiente 32-bits para a tecnologia 64-bits. O diagrama abaixo demonstra esta funcionalidade.

Cc668472.ConhecendoWinServer2003_02(pt-br,TechNet.10).gif

Trabalhando com aplicações 32-bits no Windows 64-bits

Apesar do desempenho e funcionalidade da arquitetura 64-bits a maioria das aplicações disponíveis foram escritas para as plataformas de 32-bits (processadores e sistemas operacionais).

Para permitir uma transição simplificada do ambiente 32-bits para o 64-bits, Microsoft, AMD e Intel desenvolveram produtos que suportam a execução de ambas as arquiteturas, com desempenho igual ou superior aos sistemas executados sem emulação e total confiabilidade.

Para possibilitar o uso de aplicações 32-bits no Windows 64-bits é necessário o uso de uma camada de emulação x86, conhecida como WOW64 (Windows-On-Windows64). O sistema isola por completo as aplicações 32 bits e 64 bits, para que não ocorram colisões entre arquivos ou no registro do Windows. Entretanto é importante considerar que aplicações 16 bits não são suportadas nos sistemas com versões Windows 64-bits, pois não podem ser emulados pela WOW64.

É comum que ao se trabalhar com emulação através de software exista uma degradação de desempenho, entretanto, com o uso da arquitetura Windows Server 64-bits é possível se utilizar melhor a memória RAM disponível no sistema. Como descrito no artigo “Endereçando além de 4GB com sistemas operacionais Windows de 32bits“, disponível no Microsoft Technet Brasil, a arquitetura de 32-bits endereça diretamente até 4GB de memória RAM, sendo o restante da memória endereçada através da tecnologia PAE disponível em processadores x86.

Na arquitetura de 64-bits as versões Windows de 64-bits endereçam a memória RAM de maneira diferente. O sistema operacional é executado em endereços de memória acima de 32-bits (havendo memória RAM suficiente), permitindo que grandes blocos de memória RAM sejam disponibilizados para as aplicações sem a necessidade de compartilhamento do uso de memória.

Cc668472.ConhecendoWinServer2003_03(pt-br,TechNet.10).gif

Com esta arquitetura as aplicações podem receber blocos de 4GB de memória para endereçamento direto, reduzindo a paginação e permitindo que o desempenho das aplicações de 32-bits seja até superior nos sistemas x64 com Windows 64-bit, uma vez que além do melhor uso da memória RAM, o núcleo dos processadores x64 também executam instruções x86 diretamente.

WOW64: Detalhes de Implementação
(fonte: Microsoft MSDN)

O emulador WOW64 é executado em modo usuário (User Mode), disponibilizando uma interface entre a versão x86 do Ntdll.dll e o kernel (núcleo) do processador; interceptando as chamadas ao kernel. O emulador consiste das seguintes bibliotecas de vínculos dinâmicos:

  • Wow64.dll; prove o núcleo da infra-estrutura de emulação e as chamadas para as funções de entrada do Ntoskrnl.exe.
  • Wow64win.dll; prove as chamadas para as funções de entrada do Win32k.sys.
  • Wow64cpu.dll; prove emulação para as instruções x86 em processadores Itanium. Executa o chaveamento de instruções no processador. Esta DLL não é necessária em processadores x64 porque eles executam instruções x86-32bits diretamente.

Em conjunto com a versão 64-bits do Ntdll.dll, estes são os únicos binários de 64-bits para carga de processos de 32-bits.

Na inicialização do sistema, o Wow64.dll carrega a versão x86 do Ntdll.dll executando seu código de inicialização e carregando todas as DLLs de 32-bits necessárias. Praticamente todas as DLLs são cópias sem modificação dos binários disponíveis no Windows 32-bits. Entretanto, algumas destas DLLs são escritas para se comportar de maneira diferente com o WOW64, geralmente porque compartilham memória com processos de 64-bits.

Ao invés de usar a seqüência x86 de chamadas de serviço, os binários 32-bit que fazem as chamadas são reconstruídos para usarem uma seqüência de chamadas padronizada. Esta nova seqüência é interceptada pelo WOW64, que é mantido em User Mode. Quando uma nova seqüência de chamadas é detectada, o WOW64 CPU reverte para o modo 64-bit nativo, e chama a DLL Wow64.dll. As chamadas ao Wow64.dll são realizadas em User Mode para reduzir o impacto sobre o kernel do sistema operacional, e para reduzir que o risco de que algum bug nas chamadas cause corrupção de dados, brechas na segurança ou falhas do modo kernel. Desta forma, são extraídos argumentos da pilha 32-bits, estes são estendidos para 64-bits e então é realizada uma chamada nativa ao sistema.

Características não suportadas pelo Windows Server 2003 (versões 64-bit)

As versões 64 bits do Windows Server 2003, incluindo a Datacenter Edition e a Enterprise Edition não possuem algumas funcionalidades disponíveis nas versões 32 bits.

Estas características não estão disponíveis devido a características de arquitetura entre as duas plataformas, ou devido a estas características não serem apropriadas em ambientes onde as versões 64 bits do Windows Server 2003 são implantadas.

  • Subsistema 16-bit e subsistema baseado em DOS
  • ACPI 2.0 (ACPI 2.0 64-bit é suportado)
  • ASP .NET State Service
  • Pastas compactadas (zipadas)
  • DirectMusic
  • Reprodução de vídeo em DVD
  • Enterprise Memory Architecture
  • Troca rápida de usuário
  • Fax support
  • Adição de memória a “quente” (hot add memory)
  • Suporte a áudio IEEE 1394
  • Internet Connection Sharing (ICS)
  • Internet Connection Firewall (ICF)
  • Internet Locator Service (ILS)
  • IPX/SPX LAN e WAN
  • Client Service for NetWare
  • Services for Macintosh
  • NetBIOS
  • Open Shortest Path First (OSPF)
  • Simple Network Management Protocol (SNMP) sobre IPX/SPX
  • .NET Framework
  • NetMeeting
  • Network Bridge
  • Network Setup Wizard
  • Recovery Console (instalado como uma opção de inicialização). O Recovery Console pode ser acessado através do CD do produto.
  • Remote Assistance
  • Server Appliance Kit (SAK)
  • Reconhecimento de voz
  • Temas
  • Windows Media Player
  • Windows Media Services
  • Windows Product Activation

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s