Os aplicativos x86 usam endereços de 64 bits em sistemas operacionais x64?

1

Eu queria saber ... 64bits OSs podem rodar aplicativos de 32bits, certo? O Windows usa o WoW64 para conseguir isso?

Minha pergunta é, quando esses aplicativos são executados, eles usam endereços de 64bits ou 32bits? Eu queria saber isso por causa do uso de memória ...

    
por Zequez 16.08.2011 / 04:51

3 respostas

4
Internamente, cada programa vê cerca de 2 GB de espaço de memória (há um sinalizador pode ser configurado para obter 3 GB) e, portanto, nunca precisa de ponteiros de 64 bits (os ponteiros de 32 bits funcionarão bem). O sistema operacional pode lidar com todo o gerenciamento de memória real de 64 bits.

Não tenho certeza do que isso tem a ver com o uso da memória.

    
por 16.08.2011 / 04:56
3

Aplicativos de 32 bits só podem ver endereços de 32 bits. O WoW64 simula o ambiente de 32 bits dentro do espaço de memória de 64 bits para aplicativos de 32 bits.

    
por 16.08.2011 / 05:06
0

Sua pergunta não é muito específica, já que você não faz distinção entre endereços de memória virtual e endereços de memória física.

Sim, os programas x86 usarão mais memória e recursos. Eles terão um espaço de endereço virtual de 32 bits, mas abaixo dele, o Gerenciador de Memória (MM ou MMM) usará ponteiros x64. Não é assim que isso exige muito esforço.

De longe, o maior custo de recursos são os drivers. Houve algumas mudanças substanciais no kernel, muitas devido à segurança, que exigiram que grandes partes dos drivers fossem reescritas.

Internally, every program sees about 2GB of memory space (there is flag one can set to get 3GB) and therefore never has to need 64-bit pointers (32-bit pointers will work fine). The OS can handle all the 64-bit real memory management under the hood.

Eu acredito que isso seja falso. Todo programa vê 4 GB (espaço de endereço virtual de 32 bits), mas o kernel divide o espaço de endereço físico pela metade. Os dois 2 GB com os quais você está familiarizado referem-se ao endereço da memória física.

    
por 16.08.2011 / 07:43