sistemas de 32 bits vs. 64 bits

219

Quais são as diferenças entre os sistemas de 32 e 64 bits?

Se você usou os dois, que tipo de diferenças acentuadas você já experimentou?

Seria um problema usar programas de 32 bits em sistemas de 64 bits em alguns casos?

    
por Mehper C. Palavuzlar 17.10.2009 / 13:14

19 respostas

262

Observação: essas respostas se aplicam a CPUs de PC padrão baseadas em x86 (Intel e AMD) e Windows (normalmente configuradas para usuários finais). Outros chips de 32 ou 64 bits, outros sistemas operacionais e outras configurações do sistema operacional podem ter diferentes compensações.

De uma perspectiva técnica, um sistema operacional de 64 bits oferece:

  • Permite que processos individuais abordem mais de 4 GB de RAM cada (na prática, a maioria dos sistemas operacionais de 32 bits, mas não todos, também limitam a RAM total do sistema utilizável a menos de 4 GB, não apenas o máximo por aplicativo ).

  • Todos os ponteiros levam 8 bytes em vez de 4 bytes. O efeito sobre o uso de RAM é mínimo (porque você provavelmente não terá um aplicativo cheio de gigabytes de ponteiros), mas no pior dos casos teóricos, isso pode fazer com que o cache da CPU consiga armazenar mais de 1/2 ponteiros (tornando seja efetivamente 1/2 do tamanho). Para a maioria das aplicações, isso não é um grande problema.

  • Existem muitos registradores de CPU de propósito geral no modo de 64 bits. Registradores são a memória mais rápida em todo o seu sistema. Há apenas 8 no modo de 32 bits e 16 registradores de propósito geral no modo de 64 bits. Em aplicativos de computação científica que eu escrevi, eu vi um aumento de desempenho de até 30% recompilando no modo de 64 bits (meu aplicativo realmente poderia usar os registros extras).

  • A maioria dos sistemas operacionais de 32 bits realmente permite que aplicativos individuais usem 2 GB de RAM, mesmo que você tenha 4 GB instalados. Isso ocorre porque os outros 2 GB de espaço de endereço são reservados para o compartilhamento de dados entre aplicativos, com o sistema operacional e para a comunicação com os drivers. O Windows e o Linux permitirão que você ajuste essa troca para 3 GB para aplicativos e 1 GB para o compartilhamento, mas isso pode causar problemas para alguns aplicativos que não esperam a alteração. Eu também estou supondo que pode prejudicar uma placa gráfica que tem 1 GB de RAM (mas não tenho certeza). Um sistema operacional de 64 bits pode fornecer aplicativos individuais de 32 bits mais próximos dos 4 GB completos para uso.

Da perspectiva de um usuário:

  • A velocidade do aplicativo geralmente é mais rápida para um aplicativo de 64 bits em um sistema operacional de 64 bits em comparação com a versão de 32 bits do aplicativo em um sistema operacional de 32 bits, mas a maioria dos usuários não vê essa velocidade acima. A maioria dos aplicativos para usuários normais realmente não aproveitam os registros extras ou os benefícios são compensados por ponteiros maiores que preenchem o cache.

  • Se você tiver algum aplicativo de memória (como editores de fotos, processamento de vídeo, computação científica, etc.), se tiver (ou puder comprar) mais de 3 GB de RAM e conseguir 64- versão de bit do aplicativo, a escolha é fácil: use o sistema operacional de 64 bits.

  • Alguns hardwares não possuem drivers de 64 bits. Verifique sua placa-mãe, todos os cartões plug-in e todos os dispositivos USB antes de fazer a troca. Observe que, nos primeiros dias do Windows Vista, havia muitos problemas com drivers. Hoje em dia as coisas são geralmente melhores.

  • Se você executar tantos aplicativos ao mesmo tempo que você está ficando sem RAM (geralmente você pode dizer isso porque seu computador começa a ficar muito lento e você ouve o processamento da unidade de disco rígido), então você quer um sistema operacional de 64 bits (e RAM suficiente).

  • Você pode executar aplicativos de 32 bits (mas não drivers) no Windows de 64 bits sem problemas. A pior lentidão que medi para um aplicativo de 32 bits no Windows de 64 bits é cerca de 5% (o que significa que, se levar 60 segundos para fazer algo no Windows de 32 bits, ele levaria no máximo 60 * 1,05 = 65 segundos o mesmo aplicativo de 32 bits no Windows de 64 bits).

O que 32 bits versus 64 bits não não implica:

Em sistemas x86, 32 bits versus 64 bits diretamente refere-se ao tamanho dos ponteiros. Isso é tudo.

  • Não se refere ao tamanho do tipo C int . Isso é decidido pela implementação específica do compilador, e a maioria dos compiladores populares escolhe int de 32 bits em sistemas de 64 bits.

  • Não diretamente refere-se ao tamanho dos registradores normais sem ponteiro. No entanto, o uso de registros aritméticos de 64 bits requer que o aplicativo e o sistema operacional também sejam executados no modo de ponteiro de 64 bits.

  • Não diretamente refere-se ao tamanho do barramento de endereço físico. Por exemplo, um sistema com linhas de cache de 64 bits e um máximo de 512GiB de memória precisa apenas de 33 bits em seu barramento de endereços (por exemplo, log2(512*1024**3) - log2(64) = 33 ).

  • Não se refere ao tamanho do barramento de dados físico: está mais relacionado aos custos de fabricação (número de pinos no soquete da CPU) e aos tamanhos das linhas de cache.

por 17.10.2009 / 15:11
107

Basicamente, você pode fazer tudo em uma escala maior:

  1. RAM por sistema operacional: limite de RAM de 4 GB em x86 para o sistema operacional (na maioria das vezes)
  2. RAM por processo: Limite de RAM de 4 GB em x86 para processos (sempre). Se você acha que isso não é importante, tente executar um enorme aplicativo de banco de dados MSSQL. Ele usará > 4GB se você tiver disponível e correr muito melhor.
  3. Endereços: Os endereços são 64bits em vez de 32bits, permitindo que você tenha programas "maiores" que usam mais memória.
  4. Identificadores disponíveis para programas: Você pode criar mais identificadores de arquivo, processos ... Exemplo no Windows x64 você pode criar > 2000 threads por processo, mas no x86 mais próximo de algumas centenas.
  5. Programas mais amplos disponíveis: A partir de um x64, você pode executar os programas x86 e x64. (Janelas de exemplo: wow64, windows32 na emulação windows64)
  6. Opções de emulação: Em um x64, você pode executar VMs x86 e x64.
  7. Mais rápido: Alguns cálculos são mais rápidos em uma CPU de 64 bits
  8. Dividindo vários recursos do sistema: Muita memória RAM é muito importante quando você deseja executar pelo menos uma VM, o que divide os recursos do sistema.
  9. Programas exclusivos disponíveis: Vários novos programas suportam apenas x64. Exemplo do Exchange 2007.
  10. Futuro x86 obsoleto?: Com o tempo, mais e mais 64 bits serão usados e mais e mais x86 não serão usados. Assim, os fornecedores suportarão apenas mais de 64 bits.

Os dois grandes tipos de arquiteturas de 64 bits são arquiteturas x64 e IA64. Mas x64 é o mais popular de longe.

x64 pode executar comandos x86, bem como comandos x64. O IA64 executa comandos x86 também, mas não faz extensões SSE. Há hardware dedicado no Itanium para executar instruções x86; é um emulador, mas em hardware.

Como o @Phil mencionou, você pode ter uma visão mais detalhada de como ele funciona aqui .

    
por 25.09.2008 / 14:19
46

O maior impacto que as pessoas notarão no momento é que um PC de 32 bits só pode endereçar um máximo de 4 GB de memória. Quando você tira a memória alocada para outros usos pelo sistema operacional, seu PC provavelmente mostrará apenas cerca de 3,25 GB de memória utilizável. Mover para 64 bits e esse limite desaparece.

Se você está fazendo um desenvolvimento sério, isso pode ser muito importante. Tente executar várias máquinas virtuais e você logo ficará sem memória. É mais provável que os servidores precisem da memória extra e, assim, você descobrirá que o uso de 64 bits é muito maior em servidores do que em desktops. A lei de Moore garante que teremos cada vez mais memória nas máquinas e, portanto, em alguns pontos, os desktops também mudarão para 64 bits como padrão.

Para uma descrição muito mais detalhada das diferenças entre os processadores, confira este excelente artigo de ArsTechnica .

    
por 25.09.2008 / 14:16
31

Nada é gratuito: embora os aplicativos de 64 bits possam acessar mais memória que os aplicativos de 32 bits, a desvantagem é que eles precisam de mais memória . Todos esses ponteiros que costumavam precisar de 4 bytes, agora eles precisam de 8. Por exemplo, o requisito padrão no Emacs é 60% mais memória quando é construído para uma arquitetura de 64 bits. Essa pegada extra prejudica o desempenho em todos os níveis da hierarquia de memória: executáveis maiores demoram mais para carregar do disco, conjuntos de trabalho maiores causam mais paginação e objetos maiores significam menos ajuste nos caches do processador. Se você pensar em uma CPU com um cache L1 de 16K, um aplicativo de 32 bits pode trabalhar com 4096 ponteiros antes de perder e acessar o cache L2, mas um aplicativo de 64 bits precisa acessar o cache L2 após 2048 ponteiros. / p>

No x64, isso é mitigado pelas outras melhorias arquitetônicas, como mais registros, mas no PowerPC, se o seu aplicativo não puder usar o > 4G, ele provavelmente rodará mais rápido em "ppc" do que em "ppc64". Mesmo na Intel existem cargas de trabalho que rodam mais rápido no x86, e poucas rodam mais de 5% mais rápido em x64 do que x86.

    
por 13.10.2008 / 12:45
19

Um sistema operacional de 64 bits pode usar mais memória RAM. É sobre isso, na prática. O Vista / 7 de 64 bits usa recursos de segurança mais sofisticados para onde eles colocam componentes vitais na RAM, mas isso não é realmente "perceptível" como tal.

De ChrisInEdmonton:

A 32-bit operating system on an ix86 system with PAE can address up to 64 GB of RAM. A 64-bit operating system on x86-64 can access up to 256 TB of virtual address space, though this may be raised in subsequent processors, up to 16 EB. Note that some operating systems limit the address space further, and most motherboards will have additional restrictions.

    
por 17.10.2009 / 13:24
14

Não tenho certeza se posso responder a todas as suas perguntas sem escrever uma redação inteira (há sempre o Google ...), mas você não precisa projetar seus aplicativos de maneira diferente para 64 bits. Eu acho que o que está sendo referido é que você tem que estar ciente de coisas como tamanhos de ponteiro não são mais do mesmo tamanho que ints. E você tem toda uma carga de problemas potenciais com hipóteses embutidas em certos tipos de dados que têm quatro bytes de comprimento que podem não ser mais verdadeiros.

É provável que isso atrapalhe todos os tipos de coisas em seu aplicativo - desde salvar / carregar de um arquivo, iterar dados, alinhar dados até operações bit-a-bit em dados. Se você tem uma base de código existente que está tentando migrar ou trabalhar em ambas as partes, é provável que você tenha muitas coisinhas para resolver.

Acho que isso é um problema de implementação, e não de design. Ou seja Eu acho que o "design" de dizer, um pacote de edição de fotos será o mesmo, seja qual for o tamanho da letra. Nós escrevemos códigos que compilam para versões de 32 e 64 bits, e o design certamente não difere entre os dois - é a mesma base de código.

O "grande negócio" fundamental em 64 bits é que você ganha acesso a um espaço de endereçamento de memória muito maior que 32 bits. Isso significa que você pode realmente colocar mais de 4Gb de memória em seu computador e realmente fazer a diferença.

Tenho certeza de que outras respostas entrarão nos detalhes e se beneficiarão mais do que eu.

Em termos de detectar a diferença, programaticamente, você apenas verifica o tamanho de um ponteiro (por exemplo, sizeof (void *)). A resposta de 4 significa seus 32 bits e 8 significa que você está executando em um ambiente de 64 bits.

    
por 25.09.2008 / 14:29
10

Um processo de 32 bits possui um espaço de endereços virtual de 4 GB; isso pode ser muito pouco para alguns aplicativos. Um aplicativo de 64 bits tem um espaço de endereçamento virtualmente ilimitado (claro que é limitado, mas você provavelmente não atingirá esse limite).

No OSX, existem outras vantagens. Veja o artigo a seguir , por que ter o kernel sendo executado em um espaço de endereço de 64 Bits (independentemente se seu aplicativo é executado 64 ou 32) ou ter seu aplicativo executado no espaço de endereço de 64 bits (enquanto o kernel ainda é 32 bits) leva a um desempenho muito melhor. Para resumir: Se qualquer um é de 64 bits (kernel ou aplicativo, ou ambos), o TLB ("buffer de tradução lookaside") não precisa ser liberado sempre que você mudar do kernel para usar espaço e voltar acesso à RAM).

Além disso, você tem ganhos de desempenho ao trabalhar com variáveis "long long int" (variáveis de 64 bits, como uint64_t). Uma CPU de 32 bits pode adicionar / dividir / subtrair / multiplicar dois valores de 64 bits, mas não em uma única operação de hardware. Em vez disso, ele precisa dividir essa operação em duas (ou mais) operações de 32 bits. Portanto, um aplicativo que funcione muito com números de 64 bits terá um ganho de velocidade de poder fazer matemática de 64 bits diretamente no hardware.

Por último, mas não menos importante, a arquitetura x86-64 oferece mais registros do que as arquiteturas clássicas x86. Trabalhar com registradores é muito mais rápido do que trabalhar com RAM e quanto mais registros a CPU tiver, menor será a necessidade de trocar valores de registradores para RAM e voltar a registrá-los.

Para descobrir se a sua CPU pode funcionar no modo de 64 bits, você pode olhar para várias variáveis de sysctl. Por exemplo. abra um terminal e digite

sysctl machdep.cpu.extfeatures

Se ele listar EM64T, sua CPU suporta espaço de endereçamento de 64 Bits de acordo com o padrão x86-64. Você também pode procurar por

sysctl hw.optional.x86_64

Se ele diz 1 (true / enabled), sua CPU suporta o modo x86-64 Bit, se ele diz 0 (false / disabled), isso não acontece. Se a configuração não for encontrada, considere-a falsa.

Nota: Você também pode buscar variáveis sysctl de dentro de um aplicativo C nativo, sem necessidade de usar a ferramenta de linha de comando. Veja

man 3 sysctl
    
por 25.09.2008 / 14:34
9

Observe que o espaço de endereço pode ser usado para mais de memória (real). Também é possível mapear grandes arquivos de memória, o que pode melhorar o desempenho em padrões de acesso mais estranhos, porque o cache de nível de VM mais potente e eficiente entra em ação. Também é mais seguro alocar grandes blocos de memória em 64 bits, pois o gerenciador de heap é menor provavelmente encontrará fragmentação do espaço de endereço que não permitirá alocar um grande bloco.

Algumas das coisas ditas neste tópico (como a duplicação de # registros) só se aplicam a x86- > x86_64, não para 64 bits em geral. Assim como o fato de que, sob x86_64, uma garantia tem SSE2, 686 opcodes e uma maneira barata de fazer PIC. Esses recursos não são estritamente de 64 bits, mas de cortar legado e remediar limitações conhecidas do x86

Além disso, muitas vezes as pessoas apontam para a duplicação de registros como a causa do aumento de velocidade, enquanto é mais provável que o uso padrão do SSE2 faça o truque (acelerando o memcpy e funções similares). Se você ativar o mesmo conjunto para x86, a diferença será muito menor. (*) (***)

Tenha também em mente que muitas vezes há uma penalidade inicial envolvida, porque a estrutura de dados média aumentará simplesmente porque o tamanho de um ponteiro é maior. Isso também tem efeitos de cache, mas é mais significativo no fato de que o memcpy médio () (ou qualquer equivalente para cópia de memória está no seu idioma) levará mais tempo. Isso é apenas na magnitude de alguns por cento, mas os speedups citados acima também estão nessa magnitude.

Normalmente, a sobrecarga de alinhamento também é maior em arquiteturas de 64 bits (registros anteriormente de 32 bits geralmente se tornam uma combinação de valores de 32 bits e 64 bits), ampliando ainda mais as estruturas.

No geral, meus testes simples indicam que eles se cancelam uns aos outros, se os drivers e as bibliotecas de tempo de execução estiverem totalmente adaptados, não dando diferença significativa de velocidade para o aplicativo médio. No entanto, alguns aplicativos podem ficar mais rápidos de repente (por exemplo, quando dependem de AES) ou mais lentos (a estrutura de dados crucial é constantemente movida / digitalizada / percorrida e contém muitos indicadores). No entanto, os testes estavam no Windows e, portanto, a otimização do PIC não foi comparada.

Observe que a maioria das linguagens JIT-VM (Java, .NET) usa significativamente mais ponteiros em média (internamente) do que, por exemplo, C ++. Provavelmente, seu uso de memória aumenta mais do que o programa médio, mas não me atrevo a equiparar isso diretamente a efeitos de desaceleração (já que eles são realmente complexos e funky e freqüentemente difíceis de prever sem medir)

(*) um fato pouco conhecido é que o número de registradores SSE também dobra no modo de 64 bits

(**) O Dr. Dobbs teve um bom artigo sobre isso há alguns anos.

    
por 01.05.2009 / 23:19
8
Além dos óbvios problemas de memorowos que a maioria das pessoas está mencionando aqui, eu acho que vale a pena olhar para a noção de "computação em larga escala" que Knuth (entre outros) tem falado ultimamente. Há muita eficiência a ser obtida com a manipulação de bits, e operações bit a bit em uma palavra de 64 bits vão muito além de uma palavra de 32 bits. Em suma, você pode fazer mais operações nos registradores sem ter que bater na memória, e do ponto de vista do desempenho, essa é uma grande vitória.

Dê uma olhada no Volume 4, pré-fascículo 1A para alguns exemplos dos truques legais que estou falando.

    
por 25.09.2008 / 14:36
7

Além da capacidade de endereçar mais memória, o x86_64 também possui mais registros, permitindo que o compilador gere um código mais eficiente. A melhoria de desempenho normalmente será bem pequena.

A arquitetura x86_64 é compatível com versões anteriores do x86. É possível executar sistemas operacionais de 32 bits não modificados. Também é possível executar software de 32 bits não modificado a partir de um sistema operacional de 64 bits. Isso exigirá todas as bibliotecas usuais de 32 bits. Eles podem precisar ser instalados separadamente.

    
por 17.10.2009 / 13:29
6

Esse segmento já é muito longo, mas ...

A maioria das respostas se concentra no fato de que você tem um espaço de endereçamento maior de 64 bits, para poder endereçar mais memória. Para cerca de 99% de todas as aplicações, isso é totalmente irrelevante. Grande grito.

A razão real de 64 bits é boa não porque os registros são maiores, mas há o dobro deles! Isso significa que o compilador pode manter mais de seus valores em registro, em vez de colocá-los na memória e carregá-los de volta em algumas instruções posteriores. Se e quando um compilador otimizador estiver desenrolando seus loops para você, ele poderá desenrolá-los aproximadamente o dobro, o que pode realmente ajudar no desempenho.

Além disso, as convenções chamador / receptoras de sub-rotina para 64 bits foram definidas para manter a maioria dos parâmetros passados nos registradores, em vez de o chamador empurrá-los para a pilha e o participante sair deles.

Assim, um aplicativo C / C ++ "típico" obterá uma melhoria de desempenho de 10% ou 15% apenas recompilando para 64 bits. (Supondo que alguma parte do aplicativo foi computar ligado. Claro, isso não é garantido; Todos os computadores aguardam a mesma velocidade. Sua milhagem pode variar.)

    
por 25.11.2008 / 21:35
5

Com uma máquina de 32 bits, você tem apenas 4.294.967.295 bytes de memória para endereçar. Com uma máquina de 64 bits, você tem 1,84467441 × 10 ^ 19 bytes de memória.

Wikipedia diz isso

64-bit processors calculate particular tasks (such as factorials of large figures) twice as fast as working in 32-bit environments (given example is derived from comparison between 32-bit and 64-bit Windows Calculator; noticeable for factorial of say 100 000). This gives a general feeling of theoretical possibilities of 64-bit optimized applications.

While 64-bit architectures indisputably make working with large data sets in applications such as digital video, scientific computing, and large databases easier, there has been considerable debate as to whether they or their 32-bit compatibility modes will be faster than comparably-priced 32-bit systems for other tasks. In x86-64 architecture (AMD64), the majority of the 32-bit operating systems and applications are able to run smoothly on the 64-bit hardware.

Sun's 64-bit Java virtual machines are slower to start up than their 32-bit virtual machines because Sun has only implemented the "server" JIT compiler (C2) for 64-bit platforms.[9] The "client" JIT compiler (C1), which produces less efficient code but compiles much faster, is unavailable on 64-bit platforms.

It should be noted that speed is not the only factor to consider in a comparison of 32-bit and 64-bit processors. Applications such as multi-tasking, stress testing, and clustering (for high-performance computing), HPC, may be more suited to a 64-bit architecture given the correct deployment. 64-bit clusters have been widely deployed in large organizations such as IBM, HP and Microsoft, for this reason.

    
por 25.09.2008 / 14:17
5

Além das vantagens já mencionadas, aqui estão algumas mais sobre segurança:

  • x86_64 cpus tem o bit não executado em suas tabelas de páginas. Ou seja isso pode impedir que falhas de segurança sejam causadas por saturações de buffer. Os processadores x86 de 32 bits suportam apenas esse recurso no modo PAE.
  • Maior espaço de endereçamento permite melhor randomização de layout de espaço de endereçamento (ASLR), o que dificulta a exploração de saturações de buffer.
  • x86_64 código independente da posição do recurso cpus, ou seja, acesso a dados relativo ao registrador de ponteiro de instrução (RIP).

Outra vantagem que vem à mente é que a quantidade de memória virtual contígua alocada com vmalloc() no kernel do Linux pode ser maior no modo de 64 bits.

    
por 03.05.2009 / 17:05
5

Cotação do Microsoft.com:

In the following table, the increased maximum resources of computers that are based on 64-bit versions of Windows and the 64-bit Intel processor are compared with existing 32-bit resource maximums.

    
por 30.10.2009 / 11:11
4

Kristof e Poshi afirmaram que as principais diferenças técnicas entre os sistemas operacionais de 32 e 64 bits são a experiência do usuário geralmente muito diferente da teoria. As versões de consumidor de 64 bits do Windows até o momento (XP e Vista) apresentam grandes lacunas no suporte ao driver. Eu tive muitas impressoras, scanners e outros dispositivos externos flat out não funcionam com as versões de 64 bits que funcionam bem com versões de 32 bits. Estes são dispositivos que tinham drivers de 64 bits e ainda não funcionavam. Neste ponto, eu recomendo que você fique longe de qualquer consumidor que seja de 64 bits da Microsoft até ouvir falar sobre como o Windows 7 lida com isso, com usuários finais reais, não apenas com os geeks que atualmente têm acesso a ele. Dê pelo menos 6 meses e veja o que as pessoas estão experimentando. Pessoalmente, vou instalar o sabor de 32 bits do Windows 7, já que minhas versões de 64 bits do Vista são um peso de papel caro que deixei de usar há muitos anos e voltei para o XP de 32 bits.

    
por 17.10.2009 / 13:57
2

Alguns programas de jogo usam uma representação tabuleiro de bits . Xadrez, damas e othello, por exemplo, têm um tabuleiro de 8x8, ou seja, 64 quadrados, então ter pelo menos 64 bits em uma palavra de máquina ajuda significativamente no desempenho.

Eu me lembro de ler sobre um programa de xadrez cuja compilação de 64 bits era quase duas vezes mais rápida que a versão de 32 bits.

    
por 26.09.2008 / 09:22
2

O termo 32 bits e 64 bits refere-se à maneira como um processador de computador (também chamado de CPU) lida com informações. As versões de 64 bits do Windows manipulam grandes quantidades de memória de acesso aleatório (RAM) mais efetivamente do que os sistemas de 32 bits.

a velocidade pode ser diferente na minha opinião

    
por 27.06.2012 / 04:17
1

Outro ponto para isso em relação ao Microsoft Windows é que há muitos anos tem havido a API do Win32 que é destinada a sistemas operacionais de 32 bits e não é otimizada para compilação de 64 bits. Quando eu escrevo algumas DLLs para meus aplicativos, eu geralmente compilo no Win32, que não é a versão de 64 bits das coisas. Antes do Vista, não havia muitas versões de 64 bits bem-sucedidas do Windows. Acredito que, onde eu trabalho, minha nova máquina tem 4 GB de RAM, mas ainda estou usando o Windows XP Pro de 32 bits, já que S em relação ao XP64 ou Vista.

Eu acho que você pode querer também olhar para trás quando houve a mudança de 16 bits para 32 bits para mais alguns detalhes sobre por que a mudança pode ser um grande negócio para algumas pessoas. Os aplicativos essenciais que uma empresa pode executar em uma área de trabalho, por exemplo, pequenos pacotes de contabilidade, podem não ser executados em um sistema operacional de 64 bits e, portanto, há a necessidade de manter uma máquina legada ao redor, virtual ou real.

Alterar o tamanho de um endereço pode ter grandes ramificações e repercussões.

    
por 25.09.2008 / 20:07
1

Para fins práticos, você provavelmente não notará a diferença.

Você deve ter uma CPU de 64 bits (a maioria das CPUs nos últimos anos) para instalar um sistema operacional de 64 bits.

Existem algumas vantagens em um sistema operacional de 64 bits:

  • Ele permitirá que você execute mais de 4 GB de RAM (o número máximo que você pode endereçar em um sistema operacional de 32 bits é 2 ^ 32 = 4 GB)
  • É útil para trabalhar com grandes conjuntos de dados (por exemplo, no Excel) e determinadas tarefas intensivas em computação (por exemplo, Photoshop e arquivos grandes)
  • Você só pode executar um programa de 64 bits em um sistema operacional de 64 bits, mas pode executar um programa de 32 bits em ambos (lembre-se de que muitos programas vêm como ambos, portanto, não há muitos 64 programas de apenas bits).

Na maioria dos cenários, os programas de 64 bits usam um pouco mais de memória, mas, para um computador pessoal, isso geralmente não é percebido.

    
por 09.07.2011 / 21:21