Por que o Windows coloca arquivos de sistema de 64 bits no System32 e arquivos de 32 bits no SysWOW64?

📅 2026-10-20

Resumo:

No Windows 11, há um design que há muito confunde os usuários: em um sistema de 64 bits, C:WindowsSystem32 na verdade armazena arquivos de sistema de 64 bits, enquanto o diretório C:WindowsSysWOW64 com "64" no nome armazena arquivos de 32 bits. Para usuários que não conhecem a história do Windows, esse esquema de nomenclatura pode parecer completamente invertido.

Os engenheiros da Microsoft explicaram recentemente novamente as razões por trás desse design. A resposta não é que a Microsoft simplesmente inverteu os nomes dos diretórios, mas sim para evitar quebrar muitos softwares que dependiam dos caminhos antigos. Quando o Windows migrou de uma arquitetura de 32 bits para uma arquitetura de 64 bits, ele optou por manter o já amplamente usado nome de diretório System32 e, em seguida, usou o mecanismo de redirecionamento do sistema de arquivos para permitir que programas de 32 bits acessassem automaticamente outro conjunto de arquivos do sistema.

O Windows Latest publicou um artigo em 20 de outubro de 2026, que apresentou esse problema e explicou o mecanismo relevante em conjunto com os documentos técnicos oficiais da Microsoft. O relatório apontou que este design reflete totalmente a insistência de longo prazo do Windows na compatibilidade de software: mesmo que o antigo método de nomenclatura não seja mais intuitivo, desde que modificações precipitadas possam impedir a execução de um grande número de programas, a Microsoft tende a manter a estrutura original e resolver o problema por meio da camada de compatibilidade.

Para entender esse design, você precisa voltar aos primórdios do Windows.

Na era do Windows de 16 bits, os arquivos do sistema eram armazenados principalmente no diretório C:WindowsSystem. Quando a Microsoft lançou o Windows de 32 bits, o sistema precisava de um novo diretório para acomodar os arquivos do sistema de 32 bits, então C:WindowsSystem32 foi usado. O "32" está de fato relacionado à arquitetura do sistema de 32 bits da época.

Mas quando o Windows de 64 bits foi lançado, as coisas ficaram complicadas. Um grande número de softwares programaram o System32 no código do programa e usam esse caminho diretamente para acessar os arquivos do sistema, em vez de obter dinamicamente o diretório correto do sistema por meio da interface do sistema fornecida pelo Windows.

Se a Microsoft renomear diretamente System32 para System64 ao iniciar o Windows de 64 bits, muitos programas, instaladores e scripts em lote antigos poderão não conseguir encontrar os arquivos de sistema necessários. Mesmo que os desenvolvedores recompilem o software, eles podem não conseguir corrigir todos os caminhos codificados a tempo.

O que é ainda mais problemático é que alguns softwares ainda lêem os componentes do sistema correspondentes do System32 por padrão após serem atualizados para uma versão de 64 bits. Se a Microsoft alterar o System32 para armazenar apenas arquivos de 32 bits, esses programas de 64 bits não conseguirão carregar normalmente as bibliotecas de vínculo dinâmico necessárias.

Portanto, a Microsoft finalmente decidiu manter o nome histórico System32 e deixá-lo armazenar arquivos que correspondam à arquitetura nativa do sistema operacional no Windows de 64 bits. Para a versão x64 principal do Windows 11, isso significa que o System32 armazena a versão de 64 bits dos componentes do sistema, enquanto a versão de 32 bits é colocada em outro diretório.

Este diretório é SysWOW64.

WOW64 é a abreviatura de "Windows de 32 bits no Windows de 64 bits", que é um mecanismo de compatibilidade para executar aplicativos do Windows de 32 bits no Windows de 64 bits. O "64" no SysWOW64 refere-se ao ambiente Windows de 64 bits em que se encontra, não que o arquivo em si seja de 64 bits. Em outras palavras, o nome descreve a plataforma que o mecanismo de compatibilidade tem como alvo, não o número de bits no binário no diretório.

O engenheiro sênior da Microsoft, Raymond Chen, explicou certa vez em um artigo técnico que o "32" no System32 gradualmente se tornou um nome legado histórico, assim como alguns nomes de marcas, mesmo que não reflitam mais totalmente o significado original, ainda serão mantidos devido ao uso a longo prazo.

Se todo o sistema puder ser redesenhado, ele acredita que um nome de diretório mais ideal pode ser algo como SysExec, que é usado para armazenar arquivos executáveis ​​que correspondam à arquitetura atual do sistema. Mas o Windows existe há décadas e o System32 é há muito tempo um caminho fixo do qual dependem inúmeros programas, portanto, os riscos potenciais de alterar o nome superam em muito os benefícios da nomenclatura.

Além da nomenclatura de diretórios, o Windows de 64 bits também precisa resolver um problema mais prático: programas de 32 bits não podem carregar diretamente bibliotecas de link dinâmico de 64 bits e programas de 64 bits não podem carregar diretamente bibliotecas de link dinâmico de 32 bits.

Por exemplo, kernel32.dll é um importante componente do sistema do Windows. Arquivos com o mesmo nome podem ser encontrados no System32 e SysWOW64, mas são compilados para arquiteturas diferentes e não podem ser simplesmente trocados. Quando o Windows Latest verificou esses dois diretórios no sistema Windows 11 26H2, também encontrou diferenças no tamanho dos arquivos correspondentes.

Se um programa de 32 bits carregar diretamente a versão de 64 bits no System32, ele poderá não ser executado devido à arquitetura binária incompatível. Para evitar esta situação, o Windows introduziu o redirecionador do sistema de arquivos WOW64.

No Windows de 64 bits, quando um programa de 32 bits tenta acessar C:WindowsSystem32, o sistema geralmente redireciona automaticamente a solicitação de acesso para C:WindowsSysWOW64. Este processo é basicamente transparente para o próprio programa, ele ainda pensa que está acessando o System32 e o sistema operacional encontra o arquivo de 32 bits correto nos bastidores.

A documentação oficial da Microsoft afirma claramente que o diretório System32 no Windows de 64 bits é reservado para aplicativos de 64 bits, e o WOW64 é responsável por redirecionar o acesso dos programas de 32 bits a alguns caminhos do sistema para os diretórios de 32 bits correspondentes.

Esse mecanismo não envolve apenas a biblioteca de vínculo dinâmico do sistema, mas também afeta algumas ferramentas do sistema. Por exemplo, quando um programa de 32 bits acessa determinadas ferramentas no diretório do Windows, ele pode ser redirecionado para a versão correspondente no SysWOW64. Isso evita que programas de 32 bits utilizem indevidamente ferramentas de 64 bits ou executem operações incorretas se a arquitetura do sistema operacional não corresponder.

Task-Manager-shows- which-Command-Prompt-runs-as-a-32-bit-process.jpg

WOW64 também lida com problemas de compatibilidade, como acesso ao registro e caminhos de instalação de programas. Para aplicativos de 32 bits, o Windows pode fornecer uma visualização de registro separada; um local típico é HKEY_LOCAL_MACHINESoftwareWow6432Node. O sistema também geralmente aponta o caminho dos Arquivos de Programas de programas de 32 bits para C:Arquivos de Programas (x86), para que softwares de diferentes arquiteturas possam ser gerenciados separadamente, tanto quanto possível.

Juntos, esses mecanismos fazem parte do sistema de compatibilidade do Windows, permitindo que um grande número de softwares escritos para os primeiros Windows de 32 bits ainda sejam executados no Windows 11 de 64 bits, sem que os desenvolvedores tenham que reescrever todo o código de cada programa antigo.

No entanto, o redirecionamento do sistema de arquivos também pode causar algumas situações que podem facilmente confundir os desenvolvedores.

Por exemplo, um prompt de comando de 32 bits e um prompt de comando de 64 bits, mesmo que usem o caminho aparentemente idêntico para acessar C:WindowsSystem32kernel32.dll, os arquivos reais obtidos podem ser diferentes. O primeiro geralmente é redirecionado para SysWOW64, enquanto o segundo acessa diretamente o System32.

Matt Pitrek, ex-membro da equipe do Microsoft Visual Studio, mencionou em um artigo técnico que também gastou tempo solucionando o problema porque obteve resultados confusos quando o prompt de comando de 32 bits listou arquivos com o mesmo nome em dois diretórios. Isso mostra que, embora o redirecionamento do sistema de arquivos possa manter a compatibilidade do software, ele também torna o trabalho de depuração e desenvolvimento do sistema mais complicado.

Para resolver algumas situações especiais, a Microsoft também fornece um caminho virtual chamado Sysnative. Se um programa de 32 bits realmente precisar acessar o diretório System32 nativo do Windows de 64 bits, ele poderá usar C:WindowsSysnative para ignorar o redirecionamento normal do sistema de arquivos.

Deve-se notar que Sysnative não é uma pasta real no disco, mas um alias de caminho especialmente fornecido pelo Windows. Os aplicativos de 64 bits não podem usar esse alias como os programas de 32 bits; portanto, quando os usuários procuram Sysnative diretamente no File Explorer, eles podem descobrir que o sistema avisa que o caminho não existe.

32-bit-apps-get-their-own-registry-view-under-WOW6432Node-on-Windows-11.jpg

A Microsoft também lista vários subdiretórios System32 que não são afetados pelo redirecionamento regular do sistema de arquivos, incluindo:

C:WindowsSystem32catroot

C:WindowsSystem32catroot2

C:WindowsSystem32driverstore

C:WindowsSystem32driversetc

C:Arquivos de log do WindowsSystem32

C:WindowsSystem32spool

Esses diretórios envolvem funções como diretórios de componentes do sistema, armazenamento de drivers, arquivos de configuração de rede, registro e impressão. A documentação da Microsoft lista claramente esses caminhos de exceção, mas não fornece uma explicação unificada dos motivos de design específicos de cada exceção. O Windows Latest acredita que alguns desses diretórios podem conter dados que precisam ser acessados ​​​​em conjunto por programas com arquiteturas diferentes, como o arquivo hosts em drivers, etc.

Além da plataforma x64, o mecanismo de compatibilidade do Windows na arquitetura Arm também teve um design semelhante de vários diretórios.

Em alguns sistemas Windows on Arm anteriores, os programas x86 de 32 bits usam o SysWOW64, enquanto os programas Arm de 32 bits podem acessar os componentes do sistema correspondentes por meio do SysArm32. Como a plataforma Arm precisa lidar com problemas de compatibilidade entre diferentes arquiteturas de conjuntos de instruções, o Windows também usa mecanismos de simulação e conversão correspondentes.

No entanto, a documentação de desenvolvimento Arm mais recente da Microsoft declarou que o Windows on Arm não suportará mais aplicativos Arm de 32 bits e os binários do sistema relacionados também serão removidos do diretório SysArm32. Ao mesmo tempo, aplicativos x86 comuns ainda podem ser executados por meio do mecanismo de compatibilidade, e alguns programas x86 são suportados pela tecnologia de emulação Prism.

Sysnative-only-works-for-32-bit-apps-so-64-bit-File-Explorer-cant-find-it.jpg

Isso também mostra que o sistema de compatibilidade do Windows não é completamente estático. À medida que as plataformas de hardware e os ecossistemas de software mudam, a Microsoft ainda eliminará gradualmente o suporte para algumas arquiteturas antigas, mas para aplicativos que ainda são amplamente utilizados, a empresa tentará manter a compatibilidade tanto quanto possível.

Do ponto de vista técnico, a nomenclatura de System32 e SysWOW64 não é intuitiva o suficiente. Para usuários comuns, é natural pensar que os arquivos de 64 bits são armazenados no diretório quando veem “64”. Mas no Windows, os nomes dos diretórios refletem a história, em vez de um conjunto de regras projetadas desde o início para seguir a intuição.

O principal motivo pelo qual a Microsoft simplesmente não renomeou os dois diretórios foi a compatibilidade. O Windows precisa executar muitos softwares históricos, e esses programas podem contar com caminhos fixos, interfaces de sistema herdadas e layouts de arquivos binários específicos. A modificação imprudente dessas infraestruturas pode causar falhas na instalação de software, anormalidades nas ferramentas do sistema e até mesmo afetar processos de negócios que dependem de componentes antigos.

Portanto, a Microsoft optou por resolver o problema por meio de mecanismos como redirecionamento de sistema de arquivos, redirecionamento de registro e caminhos virtuais, em vez de reconstruir completamente o sistema de nomenclatura de diretórios.

Esse design não é perfeito, mas reflete uma diferença importante no caminho de desenvolvimento do Windows e de outros sistemas operacionais: o Windows sempre precisa encontrar um equilíbrio entre modernização contínua e compatibilidade com software de décadas atrás. A nomenclatura aparentemente invertida de System32 e SysWOW64 é um traço típico deixado por esta estratégia de compatibilidade de longo prazo.

Tags relacionadas

Artigos relacionados

Comentários

0/500
Captcha (click to refresh)
Sem comentários