Endereço do Windows Server de 32 bits> 4 GB de RAM - Como?


8

Isso é novidade para mim. Eu sempre tive a impressão de que o SO de 32 bits só podia endereçar 2 ^ 32, ou seja, 4 GB de RAM. Período.

Mas o que é isso - http://www.crucial.com/uk/kb/answer.aspx?qid=3743&click=true ?

Como isso é possível? E isso ainda significa> 4 GB por processo? ou seja, se eu tiver o IIS, o ASP.NET pode ser alocado com mais de 4 GB?

Edit: Obrigado pelas respostas. Para colocar isso em contexto, isso é para desenvolvimento web. Portanto, parece que o w3wp.exe (processo de trabalho do ASP.NET) ainda estará limitado a 4 GB? Isso é verdade?

Obrigado Duncan


Um pouco de pesquisa no Google pode gerar citações razoáveis, afirmando que o IIS não oferece suporte ao AWE, então acho que é bastante seguro supor que você não pode alocar mais de 3 GB (4 GB - sobrecarga do sistema) nele.
ConcernedOfTunbridgeWells

Respostas:


14

A MMU em alguns processadores de 32 bits pode realmente suportar mais de 4 GB de RAM física, embora um único processo possa ver apenas 4 GB por vez em seu espaço de endereço virtual. Uma CPU desse tipo pode ser equipada com mais de 4 GB de RAM e pode suportar vários processos usando mais de 4 GB de RAM no total. No entanto, um único processo pode usar apenas 4 GB de RAM (menos algumas despesas gerais do sistema operacional) a qualquer momento.

No Xeon, esse recurso é conhecido como PAE ( Extensão de Endereço Físico ) e alguns sistemas operacionais possuem APIs que permitem que um processo manipule a MMU para trocar a memória física dentro e fora do espaço de endereço virtual do processo. No Windows, essa API é conhecida como AWE ( Address Windowing Extensions ), mas não está disponível em todas as versões do Windows. Linux e outras espécies de Unix suportam um mecanismo semelhante.

Para usar esse recurso, o programa deve ser explicitamente projetado para apoiá-lo - o AWE não expande automaticamente o espaço de endereço virtual do processo. Por exemplo, certas versões do SQL Server suportam, embora eu não esteja ciente do IIS fazendo isso.

EDIT: Aqui vamos nós. Encontrei. Esta publicação no Stackoverflow fornece links para mais detalhes sobre a mecânica do PAE.

Edit 2: Se esta mensagem do fórum é para ser acreditado, em seguida, o IIS não tem suporte para AWE.



2

Apenas para anotar aqui, as versões mais avançadas do Windows 2003 (Enterprise e Data Center) funcionam com> 4 GB. Eu tinha um HP DL380 com 14GB de RAM e o W2K3 EE viu todos os 14GB. O VMWare Server conseguiu usar mais de 4 GB. Substituímos o W2K3 pelo ESXi 3.5 U3 e ele pode usar todos os 14 GB.

Pela minha leitura, a Microsoft tentou habilitá-lo em outras versões do Windows (como XP) e descobriu que muitos drivers tinham problemas quando a memória era> 4 GB. Pelo menos parte do problema era DMA (os endereços de memória do hardware seriam truncados para 32 bits e começariam a corromper a memória). Portanto, houve um SP que se livrou do PAE para a maioria das versões mais antigas do Windows para evitar problemas de estabilidade.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.