gerência de memória ram em computadores com mais de 4gb · não são grandes as alterações a...

8
Gerência de M O sistema Windows x86 (3 que 3,X GB de RAM, a não Extension). Contudo, esta processador x86 e do siste ativar o PAE, o sistema não Endereçando além de 4 Nos últimos anos uma série corporativo, com suporte p ou mais megabytes de mem são desenhados para ender O subsistema memória RAM os softwares são executado armazenados nos discos ríg dados na memória, ele usa identifica a posição de mem Apesar de vermos equipam fato é que nos sistemas de memória até 4GB, ou 2^32 quantidades de memória sã Windows de 32bits. Nota: Cada vez mais é com instalada de equipamentos que estão, ou poderão pass Esta é a razão para este art Quanta memória RAM pod Os sistemas 32bits baseado RAM, com o uso das instruç O PAE é uma extensão do b em plataformas IA-32 (Pen permitem aos processador www.cdcbrasil.com.br/ncomputing Memória RAM em Computad Mais de 4GB 32bits) não tem capacidade de reconhecer, f o ser que seja ativado, manualmente, o PAE ativação só poderá ser executada dependen ema operacional Windows que estiver sendo o sabe que há recurso a sua disposição 4GB com sistemas operacionais Wind e de sistemas foi colocada no mercado, princ para quantidades muito além de 4GB, como 8 mória RAM. A pergunta é como, uma vez que reçar apenas 32bits de endereço de memóri M é fundamental na arquitetura dos comput os, sendo normalmente carregados a partir d gidos. Para o processador acessar a determin a um barramento de endereçamento (Addres mória onde este conjunto de dados está arm mentos com muitos gibabytes de capacidade 32bits o processador deveria apenas conhec 2 bits. A seguir podemos entender então com ão endereçadas por processadores de 32bits mum processadores de 64bits no mercado, ma s com tecnologia de hardware e Windows de sar a estar, com mais do que 4GB de memóri tigo. de ser endereçada? os na arquitetura IA-32 podem endereçar até ções Physical Address Extensions-PAE contid barramento de endereços de memória, desen ntium Pro e superiores; a AMD possui recurso res aumentar o número de bits utilizados par dores com fisicamente, mais (Physical Addess ndo do tipo de o utilizado. Sem dows de 32bits cipalmente 8GB, 12GB, 16GB e os processadores a. tadores, é lá onde dos dados nado conjunto de ss Bus) que mazenado. além dos 4GB, o cer os endereços de mo grandes s com versões de as existe uma base e 32bits grande e ia RAM instalada. é 64GB de memória das no processador. nhado pela Intel o similar) que ra o endereçamento

Upload: phamdang

Post on 11-Nov-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Gerência de Memória RAM em Computadores com Mais de 4GB · não são grandes as alterações a serem realizadas no desenho destas aplicações. O Windows considera que toda a memória

Gerência de Memória RAM em Computadores com

O sistema Windows x86 (32bits) não tem capacidade de reconhecer, fisicamente, mais

que 3,X GB de RAM, a não ser que seja ativado, manualmente, o PAE (Physical Addess

Extension). Contudo, esta ativação só poderá ser executada dependendo do tipo de

processador x86 e do sistema operacional Windows que estiver sendo utilizado. Sem

ativar o PAE, o sistema não sabe que há recurso a sua disposição

Endereçando além de 4GB coNos últimos anos uma série de sistemas foi colocada no mercado, principalmente

corporativo, com suporte para quantidades muito além de 4GB, como 8GB, 12GB, 16GB

ou mais megabytes de memória RAM. A pergunta é como

são desenhados para endereçar apenas 32bits de endereço de memória.

O subsistema memória RAM é fundamental na arquitetura dos computadores, é lá onde

os softwares são executados, sendo normalmente carregados a partir dos dado

armazenados nos discos rígidos. Para o processador acessar a determinado conjunto de

dados na memória, ele usa um barramento de endereçamento (Address Bus) que

identifica a posição de memória onde este conjunto de dados está armazenado.

Apesar de vermos equipamentos com muitos gibabytes de capacidade além dos 4GB, o

fato é que nos sistemas de 32bits o processador deveria apenas conhecer os endereços de

memória até 4GB, ou 2^32 bits. A seguir podemos entender então como grandes

quantidades de memória são e

Windows de 32bits. Nota: Cada vez mais é comum processadores de 64bits no mercado, mas existe uma base

instalada de equipamentos com tecnologia de hardware e Windows de 32bits grande e

que estão, ou poderão passar a estar, com mais do que 4GB de memória RAM instalada.

Esta é a razão para este artigo.

Quanta memória RAM pode ser endereçada?

Os sistemas 32bits baseados na arquitetura IA

RAM, com o uso das instruções P

O PAE é uma extensão do barramento de endereços de memória, desenhado pela Intel

em plataformas IA-32 (Pentium Pro e superiores; a AMD possui recurso similar) que

permitem aos processadores aumentar o

www.cdcbrasil.com.br/ncomputing

Gerência de Memória RAM em Computadores com

Mais de 4GB

O sistema Windows x86 (32bits) não tem capacidade de reconhecer, fisicamente, mais

que 3,X GB de RAM, a não ser que seja ativado, manualmente, o PAE (Physical Addess

Extension). Contudo, esta ativação só poderá ser executada dependendo do tipo de

processador x86 e do sistema operacional Windows que estiver sendo utilizado. Sem

ativar o PAE, o sistema não sabe que há recurso a sua disposição

Endereçando além de 4GB com sistemas operacionais Windows de 32bitsNos últimos anos uma série de sistemas foi colocada no mercado, principalmente

corporativo, com suporte para quantidades muito além de 4GB, como 8GB, 12GB, 16GB

ou mais megabytes de memória RAM. A pergunta é como, uma vez que os processadores

são desenhados para endereçar apenas 32bits de endereço de memória.

O subsistema memória RAM é fundamental na arquitetura dos computadores, é lá onde

os softwares são executados, sendo normalmente carregados a partir dos dado

armazenados nos discos rígidos. Para o processador acessar a determinado conjunto de

dados na memória, ele usa um barramento de endereçamento (Address Bus) que

identifica a posição de memória onde este conjunto de dados está armazenado.

equipamentos com muitos gibabytes de capacidade além dos 4GB, o

fato é que nos sistemas de 32bits o processador deveria apenas conhecer os endereços de

memória até 4GB, ou 2^32 bits. A seguir podemos entender então como grandes

quantidades de memória são endereçadas por processadores de 32bits com versões de

Nota: Cada vez mais é comum processadores de 64bits no mercado, mas existe uma base

instalada de equipamentos com tecnologia de hardware e Windows de 32bits grande e

erão passar a estar, com mais do que 4GB de memória RAM instalada.

Esta é a razão para este artigo.

Quanta memória RAM pode ser endereçada?

Os sistemas 32bits baseados na arquitetura IA-32 podem endereçar até 64GB de memória

RAM, com o uso das instruções Physical Address Extensions-PAE contidas no processador.

O PAE é uma extensão do barramento de endereços de memória, desenhado pela Intel

32 (Pentium Pro e superiores; a AMD possui recurso similar) que

permitem aos processadores aumentar o número de bits utilizados para o endereçamento

Gerência de Memória RAM em Computadores com

O sistema Windows x86 (32bits) não tem capacidade de reconhecer, fisicamente, mais

que 3,X GB de RAM, a não ser que seja ativado, manualmente, o PAE (Physical Addess

Extension). Contudo, esta ativação só poderá ser executada dependendo do tipo de

processador x86 e do sistema operacional Windows que estiver sendo utilizado. Sem

m sistemas operacionais Windows de 32bits Nos últimos anos uma série de sistemas foi colocada no mercado, principalmente

corporativo, com suporte para quantidades muito além de 4GB, como 8GB, 12GB, 16GB

, uma vez que os processadores

são desenhados para endereçar apenas 32bits de endereço de memória.

O subsistema memória RAM é fundamental na arquitetura dos computadores, é lá onde

os softwares são executados, sendo normalmente carregados a partir dos dados

armazenados nos discos rígidos. Para o processador acessar a determinado conjunto de

dados na memória, ele usa um barramento de endereçamento (Address Bus) que

identifica a posição de memória onde este conjunto de dados está armazenado. equipamentos com muitos gibabytes de capacidade além dos 4GB, o

fato é que nos sistemas de 32bits o processador deveria apenas conhecer os endereços de

memória até 4GB, ou 2^32 bits. A seguir podemos entender então como grandes

ndereçadas por processadores de 32bits com versões de

Nota: Cada vez mais é comum processadores de 64bits no mercado, mas existe uma base

instalada de equipamentos com tecnologia de hardware e Windows de 32bits grande e

erão passar a estar, com mais do que 4GB de memória RAM instalada.

32 podem endereçar até 64GB de memória

PAE contidas no processador.

O PAE é uma extensão do barramento de endereços de memória, desenhado pela Intel

32 (Pentium Pro e superiores; a AMD possui recurso similar) que

número de bits utilizados para o endereçamento

Page 2: Gerência de Memória RAM em Computadores com Mais de 4GB · não são grandes as alterações a serem realizadas no desenho destas aplicações. O Windows considera que toda a memória

de memória de 32bits para 36bits, (2^36 bits = 64GB). A ativação do PAE no Windows é

possível em versões específicas do sistema operacional como veremos a seguir.

Vale aqui lembrar que processador de 32bits é

dados (data bus) de 32bits, processado blocos de dados de 32bits. O barramento

responsável pelo endereçamento de memória é o barramento de endereços (address

bus), este é o barramento que foi estendido para 36bits, sim

processador de 16bits com um barramento de endereçamento de 24bits, possibilitando

endereçar até 16MB.

As versões Windows Server 2003 Datacenter Edition de 32bits permitem o endereçamento de até 37bits, ou seja, 128GB

em hardwares que suportem este limite.

Suporte a Memória nos Sistem

Os sistemas operacionais baseados na tecnologia Microsoft Windows NT sempre

permitiram acesso direto a memória às aplicações que usam endereçamento de 32bits

(4GB). O PAE x86, disponível nas versões Windows Server 2003 Enterprise Ed

Windows Server 2003 Datacenter Edition (e também em versões anteriores do Windows

Server), permite que o modo de endereçamento seja alterado de 32bits para 64bits

possibilitando que o sistema operacional, drivers de dispositivos e aplicações endere

memória adicional, endereços acima de 4GB. O acesso direto aos endereços acima de 4GB

www.cdcbrasil.com.br/ncomputing

de memória de 32bits para 36bits, (2^36 bits = 64GB). A ativação do PAE no Windows é

possível em versões específicas do sistema operacional como veremos a seguir.

Vale aqui lembrar que processador de 32bits é aquele processador com barramento de

dados (data bus) de 32bits, processado blocos de dados de 32bits. O barramento

responsável pelo endereçamento de memória é o barramento de endereços (address

bus), este é o barramento que foi estendido para 36bits, similar ao Intel 8086, que era um

processador de 16bits com um barramento de endereçamento de 24bits, possibilitando

As versões Windows Server 2003 Datacenter Edition de 32bits permitem o endereçamento de até 37bits, ou seja, 128GB

em hardwares que suportem este limite.

Suporte a Memória nos Sistemas Operacionais Windows

Os sistemas operacionais baseados na tecnologia Microsoft Windows NT sempre

permitiram acesso direto a memória às aplicações que usam endereçamento de 32bits

(4GB). O PAE x86, disponível nas versões Windows Server 2003 Enterprise Ed

Windows Server 2003 Datacenter Edition (e também em versões anteriores do Windows

Server), permite que o modo de endereçamento seja alterado de 32bits para 64bits

possibilitando que o sistema operacional, drivers de dispositivos e aplicações endere

memória adicional, endereços acima de 4GB. O acesso direto aos endereços acima de 4GB

de memória de 32bits para 36bits, (2^36 bits = 64GB). A ativação do PAE no Windows é

possível em versões específicas do sistema operacional como veremos a seguir. aquele processador com barramento de

dados (data bus) de 32bits, processado blocos de dados de 32bits. O barramento

responsável pelo endereçamento de memória é o barramento de endereços (address

ilar ao Intel 8086, que era um

processador de 16bits com um barramento de endereçamento de 24bits, possibilitando

As versões Windows Server 2003 Datacenter Edition de 32bits permitem o endereçamento de até 37bits, ou seja, 128GB

Os sistemas operacionais baseados na tecnologia Microsoft Windows NT sempre

permitiram acesso direto a memória às aplicações que usam endereçamento de 32bits

(4GB). O PAE x86, disponível nas versões Windows Server 2003 Enterprise Edition e

Windows Server 2003 Datacenter Edition (e também em versões anteriores do Windows

Server), permite que o modo de endereçamento seja alterado de 32bits para 64bits

possibilitando que o sistema operacional, drivers de dispositivos e aplicações enderecem a

memória adicional, endereços acima de 4GB. O acesso direto aos endereços acima de 4GB

Page 3: Gerência de Memória RAM em Computadores com Mais de 4GB · não são grandes as alterações a serem realizadas no desenho destas aplicações. O Windows considera que toda a memória

pelas aplicações é realizado através de uma API específica do Windows, denominada

Address Windowing Extensions (AWE).

Quando o PAE é habilitado no sistema, toda a m

uso geral (general purpose memory). O sistema operacional passa a utilizar esta memória

para o gerenciamento de memória virtual sem maiores alterações. Como as apenas as

aplicações que realmente utilizam grandes quant

não são grandes as alterações a serem realizadas no desenho destas aplicações.

O Windows considera que toda a memória é memória virtual, seja ela RAM ou o arquivo

de paginação, oferecendo área de alocação para as aplica

dados serão armazenados.

Ao se habilitar o PAE, através da entrada /PAE no arquivo boot.ini nas versões Windows

Server 2003 Enterprise Edition e Windows Server 2003 Datacenter Edition, é habilitado a

versão Ntkrnlpa.exe do kernel

versão do kernel para uso com o PAE é copiada por padrão durante a instalação do

sistema operacional.

Com o uso do PAE x86, é possível fazer com que o software executivo do Windows

(também conhecido como Kernel) seja capaz de utilizar toda a memória física disponível

entre 4GB e 64GB (apesar de endereçar até 64bits, ainda persistem os 36bits de

endereçamento máximo do processador), podendo reduzir as operações de paginação e

permitindo o aumento de dese

em um mesmo computador, como em casos de consolidação ou quando aplicações

intensivas no uso de memória estão em execução.

Tecnologias relacionadas ao PAE x86

Para compreender o funcionamento do PA

funcionamento de algumas outras tecnologias como o Memory Manager, Page Table, 4

gigabyte tuning (4GT) e o Application Windowing Extensions (AWE).

Memory Manager

O Memory Manager é o componente que traduz os endereço

utilizados pelo sistema operacional e aplicações em localizações reais de memória. A

tradução da memória real para a virtual é transparente para as aplicações. Processos em

execução no User Mode não possuem acesso direto a memória real

realmente o dado reside. Um processo em User Mode pode solicitar um bloco de

memória para escrever, mas o dado pode ser gravado em um espaço na memória RAM ou

no arquivo de paginação (paging file, também conhecido como arquivo de swap).

arquivo de paginação é um arquivo no disco rígido que é usado pelo Memory Manager

www.cdcbrasil.com.br/ncomputing

pelas aplicações é realizado através de uma API específica do Windows, denominada

Address Windowing Extensions (AWE).

Quando o PAE é habilitado no sistema, toda a memória física é considerada memória de

uso geral (general purpose memory). O sistema operacional passa a utilizar esta memória

para o gerenciamento de memória virtual sem maiores alterações. Como as apenas as

aplicações que realmente utilizam grandes quantidades de memória necessitam do AWE,

não são grandes as alterações a serem realizadas no desenho destas aplicações.

O Windows considera que toda a memória é memória virtual, seja ela RAM ou o arquivo

de paginação, oferecendo área de alocação para as aplicações e gerenciando onde os

dados serão armazenados.

Ao se habilitar o PAE, através da entrada /PAE no arquivo boot.ini nas versões Windows

Server 2003 Enterprise Edition e Windows Server 2003 Datacenter Edition, é habilitado a

versão Ntkrnlpa.exe do kernel (ou o Ntkrnlpamp.exe em sistemas multiprocessados). A

versão do kernel para uso com o PAE é copiada por padrão durante a instalação do

Com o uso do PAE x86, é possível fazer com que o software executivo do Windows

mo Kernel) seja capaz de utilizar toda a memória física disponível

entre 4GB e 64GB (apesar de endereçar até 64bits, ainda persistem os 36bits de

endereçamento máximo do processador), podendo reduzir as operações de paginação e

permitindo o aumento de desempenho em cenários onde várias aplicações estão alocadas

em um mesmo computador, como em casos de consolidação ou quando aplicações

intensivas no uso de memória estão em execução.

Tecnologias relacionadas ao PAE x86

Para compreender o funcionamento do PAE x86, é importante conhecer também o

funcionamento de algumas outras tecnologias como o Memory Manager, Page Table, 4

gigabyte tuning (4GT) e o Application Windowing Extensions (AWE).

O Memory Manager é o componente que traduz os endereços de memória virtual

utilizados pelo sistema operacional e aplicações em localizações reais de memória. A

tradução da memória real para a virtual é transparente para as aplicações. Processos em

execução no User Mode não possuem acesso direto a memória real, e não sabem onde

realmente o dado reside. Um processo em User Mode pode solicitar um bloco de

memória para escrever, mas o dado pode ser gravado em um espaço na memória RAM ou

no arquivo de paginação (paging file, também conhecido como arquivo de swap).

arquivo de paginação é um arquivo no disco rígido que é usado pelo Memory Manager

pelas aplicações é realizado através de uma API específica do Windows, denominada

emória física é considerada memória de

uso geral (general purpose memory). O sistema operacional passa a utilizar esta memória

para o gerenciamento de memória virtual sem maiores alterações. Como as apenas as

idades de memória necessitam do AWE,

não são grandes as alterações a serem realizadas no desenho destas aplicações.

O Windows considera que toda a memória é memória virtual, seja ela RAM ou o arquivo

ções e gerenciando onde os

Ao se habilitar o PAE, através da entrada /PAE no arquivo boot.ini nas versões Windows

Server 2003 Enterprise Edition e Windows Server 2003 Datacenter Edition, é habilitado a

(ou o Ntkrnlpamp.exe em sistemas multiprocessados). A

versão do kernel para uso com o PAE é copiada por padrão durante a instalação do

Com o uso do PAE x86, é possível fazer com que o software executivo do Windows

mo Kernel) seja capaz de utilizar toda a memória física disponível

entre 4GB e 64GB (apesar de endereçar até 64bits, ainda persistem os 36bits de

endereçamento máximo do processador), podendo reduzir as operações de paginação e

mpenho em cenários onde várias aplicações estão alocadas

em um mesmo computador, como em casos de consolidação ou quando aplicações

E x86, é importante conhecer também o

funcionamento de algumas outras tecnologias como o Memory Manager, Page Table, 4-

s de memória virtual

utilizados pelo sistema operacional e aplicações em localizações reais de memória. A

tradução da memória real para a virtual é transparente para as aplicações. Processos em

, e não sabem onde

realmente o dado reside. Um processo em User Mode pode solicitar um bloco de

memória para escrever, mas o dado pode ser gravado em um espaço na memória RAM ou

no arquivo de paginação (paging file, também conhecido como arquivo de swap). O

arquivo de paginação é um arquivo no disco rígido que é usado pelo Memory Manager

Page 4: Gerência de Memória RAM em Computadores com Mais de 4GB · não são grandes as alterações a serem realizadas no desenho destas aplicações. O Windows considera que toda a memória

para armazenar dados que não cabem na memória real, movendo blocos da memória real

para a virtual, assim como o contrário, sempre que necessário.

Mesmo em sistemas com grandes quantidades de memória onde o PAE x86 está

habilitado, caso ocorra falta de memória, o Memory Manager irá alocar no arquivo de

paginação os dados que não puderem ser alocados em memória física. Com a ativação do

PAE x86, os sistemas operacionais passam endereçar dados sob o formato de endereços

de 64bits com limite máximo de 36bits (ou 64GB), devido a quantidade de bits disponíveis

pela arquitetura x86.

Page Table Entries

Sendo o Memory Manager responsável pela tradução, rast

e virtual, tanto para aplicações quanto para o kernel do Windows, é necessário que estas operações

sejam indexadas, assim o Memory Manager pode saber se determinado dado está na memória

física ou virtual. Quando este dado é solicitado, o Memory Manager verifica no índice (ou Page Table)

buscando uma entrada (Page Table Entry) que aponte o local onde este dado está ou deve ser

armazenado.

Esta tabela de índices usada pelo Memory Manager é carregada no espaço de memória

alocado pelo kernel durante a carga do sistema operacional. Na prática o Memory

Manager usa a Page Table para criar um mapa de endereços de 64bits, endereçando

diretamente os endereços até 4GB e consultando esta tabela de referência para os

ponteiros de endereços entre 4GB e 64GB.

Application Windowing Extensions (AWE)

Devido ao espaço de endereços virtuais de uma aplicação se estender a apenas 2GB (3GB

com o modo 4GT habilitado) nos ambiente 32bits, para aumentar o desempenho das

aplicações que necessitam de um método para mapear grandes porções de dados e

mantê-los em memória física por todo o tempo, foi desenvolvido um modo de acesso para

até 64GB de memória não paginada (física) através de uma API denominada Application

Windowing Extensions (AWE).

Com o AWE, as aplicações podem reservar seções da memória física que não podem ser

paginadas, exceto pela por solicitação da própria aplicação. O AWE mantém os dados

alocados permanentemente na memória sem que esta seja paginada uma vez que o

Memory Manager não gerencia esta memória, apenas executando as solicitações da API

AWE.

Diferente do PAE, que deve ser habilitado no boot.ini, o AWE não necessita de ativação,

estando disponível para o uso por aplicações desenhadas para este fim.

www.cdcbrasil.com.br/ncomputing

para armazenar dados que não cabem na memória real, movendo blocos da memória real

para a virtual, assim como o contrário, sempre que necessário.

Mesmo em sistemas com grandes quantidades de memória onde o PAE x86 está

habilitado, caso ocorra falta de memória, o Memory Manager irá alocar no arquivo de

paginação os dados que não puderem ser alocados em memória física. Com a ativação do

stemas operacionais passam endereçar dados sob o formato de endereços

de 64bits com limite máximo de 36bits (ou 64GB), devido a quantidade de bits disponíveis

Sendo o Memory Manager responsável pela tradução, rastreamento, e organização da memória real

e virtual, tanto para aplicações quanto para o kernel do Windows, é necessário que estas operações

sejam indexadas, assim o Memory Manager pode saber se determinado dado está na memória

dado é solicitado, o Memory Manager verifica no índice (ou Page Table)

buscando uma entrada (Page Table Entry) que aponte o local onde este dado está ou deve ser

Esta tabela de índices usada pelo Memory Manager é carregada no espaço de memória

alocado pelo kernel durante a carga do sistema operacional. Na prática o Memory

Manager usa a Page Table para criar um mapa de endereços de 64bits, endereçando

diretamente os endereços até 4GB e consultando esta tabela de referência para os

ndereços entre 4GB e 64GB.

Application Windowing Extensions (AWE)

Devido ao espaço de endereços virtuais de uma aplicação se estender a apenas 2GB (3GB

com o modo 4GT habilitado) nos ambiente 32bits, para aumentar o desempenho das

am de um método para mapear grandes porções de dados e

los em memória física por todo o tempo, foi desenvolvido um modo de acesso para

até 64GB de memória não paginada (física) através de uma API denominada Application

Windowing Extensions (AWE).

o AWE, as aplicações podem reservar seções da memória física que não podem ser

paginadas, exceto pela por solicitação da própria aplicação. O AWE mantém os dados

alocados permanentemente na memória sem que esta seja paginada uma vez que o

ão gerencia esta memória, apenas executando as solicitações da API

Diferente do PAE, que deve ser habilitado no boot.ini, o AWE não necessita de ativação,

estando disponível para o uso por aplicações desenhadas para este fim.

para armazenar dados que não cabem na memória real, movendo blocos da memória real

Mesmo em sistemas com grandes quantidades de memória onde o PAE x86 está

habilitado, caso ocorra falta de memória, o Memory Manager irá alocar no arquivo de

paginação os dados que não puderem ser alocados em memória física. Com a ativação do

stemas operacionais passam endereçar dados sob o formato de endereços

de 64bits com limite máximo de 36bits (ou 64GB), devido a quantidade de bits disponíveis

reamento, e organização da memória real

e virtual, tanto para aplicações quanto para o kernel do Windows, é necessário que estas operações

sejam indexadas, assim o Memory Manager pode saber se determinado dado está na memória

dado é solicitado, o Memory Manager verifica no índice (ou Page Table)

buscando uma entrada (Page Table Entry) que aponte o local onde este dado está ou deve ser

Esta tabela de índices usada pelo Memory Manager é carregada no espaço de memória

alocado pelo kernel durante a carga do sistema operacional. Na prática o Memory

Manager usa a Page Table para criar um mapa de endereços de 64bits, endereçando

diretamente os endereços até 4GB e consultando esta tabela de referência para os

Devido ao espaço de endereços virtuais de uma aplicação se estender a apenas 2GB (3GB

com o modo 4GT habilitado) nos ambiente 32bits, para aumentar o desempenho das

am de um método para mapear grandes porções de dados e

los em memória física por todo o tempo, foi desenvolvido um modo de acesso para

até 64GB de memória não paginada (física) através de uma API denominada Application

o AWE, as aplicações podem reservar seções da memória física que não podem ser

paginadas, exceto pela por solicitação da própria aplicação. O AWE mantém os dados

alocados permanentemente na memória sem que esta seja paginada uma vez que o

ão gerencia esta memória, apenas executando as solicitações da API

Diferente do PAE, que deve ser habilitado no boot.ini, o AWE não necessita de ativação,

estando disponível para o uso por aplicações desenhadas para este fim.

Page 5: Gerência de Memória RAM em Computadores com Mais de 4GB · não são grandes as alterações a serem realizadas no desenho destas aplicações. O Windows considera que toda a memória

4-gigabyte Tunning (4GT)

O 4-gigabyte Tunnig (também conhecido como 4GT, memory tunning ou /3GB) é uma das

tecnologias que permitem aumentar a quantidade de memória disponível para aplicações

(User Mode).

O 4GT permite que aplicações que utilizem memória RAM de maneira intensiva

versões 32bits do Microsoft Windows Server 2003 Enterprise Edition ou Windows Server

2003 Datacenter Edition usem 50% a mais de memória virtual, tornando disponível para o

Kernel Mode (ou Windows Executive Mode) menos memória do que o padrão.

Nota: O 4GT não é necessário em sistemas Windows de 64bits.

Entretanto existem algumas limitações de cenários para o uso do 4GT, como pode ser

visto a seguir;

· Processador baseado na arquitetura x86 (Intel EM64T e AMD64 são processadores

x64).

· 2GB ou mais de memória RAM (existem cenários onde a partir de 1GB recomenda

a ativação do 4GT).

· Microsoft Windows Server 2003 Enterprise Edition ou Windows Server 2003

Datacenter Edition.

· PAE habilitado em equipamentos com mais de 16

· Necessidade de suportar aplicações ou serviços que utilizem mais de 1GB de

memória para o Kernel, por exemplo, manter determinado número de conexões

simultâneas ao sistema.

O 4GT altera a forma como o Memory Manager aloca a memória virtual no

figura abaixo ilustra esta arquitetura em um equipamento com 4GB ou mais de memória

RAM.

www.cdcbrasil.com.br/ncomputing

gigabyte Tunnig (também conhecido como 4GT, memory tunning ou /3GB) é uma das

tecnologias que permitem aumentar a quantidade de memória disponível para aplicações

O 4GT permite que aplicações que utilizem memória RAM de maneira intensiva

versões 32bits do Microsoft Windows Server 2003 Enterprise Edition ou Windows Server

2003 Datacenter Edition usem 50% a mais de memória virtual, tornando disponível para o

Kernel Mode (ou Windows Executive Mode) menos memória do que o padrão.

GT não é necessário em sistemas Windows de 64bits.

Entretanto existem algumas limitações de cenários para o uso do 4GT, como pode ser

Processador baseado na arquitetura x86 (Intel EM64T e AMD64 são processadores

2GB ou mais de memória RAM (existem cenários onde a partir de 1GB recomenda

Microsoft Windows Server 2003 Enterprise Edition ou Windows Server 2003

PAE habilitado em equipamentos com mais de 16GB.

Necessidade de suportar aplicações ou serviços que utilizem mais de 1GB de

memória para o Kernel, por exemplo, manter determinado número de conexões

O 4GT altera a forma como o Memory Manager aloca a memória virtual no

figura abaixo ilustra esta arquitetura em um equipamento com 4GB ou mais de memória

gigabyte Tunnig (também conhecido como 4GT, memory tunning ou /3GB) é uma das

tecnologias que permitem aumentar a quantidade de memória disponível para aplicações

O 4GT permite que aplicações que utilizem memória RAM de maneira intensiva em

versões 32bits do Microsoft Windows Server 2003 Enterprise Edition ou Windows Server

2003 Datacenter Edition usem 50% a mais de memória virtual, tornando disponível para o

Kernel Mode (ou Windows Executive Mode) menos memória do que o padrão.

Entretanto existem algumas limitações de cenários para o uso do 4GT, como pode ser

Processador baseado na arquitetura x86 (Intel EM64T e AMD64 são processadores

2GB ou mais de memória RAM (existem cenários onde a partir de 1GB recomenda-se

Microsoft Windows Server 2003 Enterprise Edition ou Windows Server 2003

Necessidade de suportar aplicações ou serviços que utilizem mais de 1GB de

memória para o Kernel, por exemplo, manter determinado número de conexões

O 4GT altera a forma como o Memory Manager aloca a memória virtual no sistema, a

figura abaixo ilustra esta arquitetura em um equipamento com 4GB ou mais de memória

Page 6: Gerência de Memória RAM em Computadores com Mais de 4GB · não são grandes as alterações a serem realizadas no desenho destas aplicações. O Windows considera que toda a memória

Ao invés de dividir os 4GB de memória RAM disponíveis (supondo que o sistema possui

4GB de RAM ou mais e o 4GT habilitado) igualmente entre o Kernel Mode e o User Mode

(2GB para cada), o 4GT disponibiliza 1GB a menos de memóri

liberando assim, 1GB de memória RAM a mais para as aplicações.

www.cdcbrasil.com.br/ncomputing

Ao invés de dividir os 4GB de memória RAM disponíveis (supondo que o sistema possui

4GB de RAM ou mais e o 4GT habilitado) igualmente entre o Kernel Mode e o User Mode

(2GB para cada), o 4GT disponibiliza 1GB a menos de memória RAM para o kernel,

liberando assim, 1GB de memória RAM a mais para as aplicações.

Ao invés de dividir os 4GB de memória RAM disponíveis (supondo que o sistema possui

4GB de RAM ou mais e o 4GT habilitado) igualmente entre o Kernel Mode e o User Mode

a RAM para o kernel,

Page 7: Gerência de Memória RAM em Computadores com Mais de 4GB · não são grandes as alterações a serem realizadas no desenho destas aplicações. O Windows considera que toda a memória

O uso do 4GT nos sistemas Windows 2003 não é habilitado por padrão, ficando facultado

ao engenheiro de sistemas responsável sua ativação em virtude do cenário e

principalmente dos testes com as aplicações. Para habilitar o 4GT, deve

entrada /3GB no arquivo boot.ini. Esta chave altera a alocação de espaços em memória

para o kernel do sistema e para aplicações. Ao iniciar uma aplicação o sistema operacional

examina o cabeçalho do arquivo, se houver o flag

"IMAGE_FILE_LARGE_ADDRESS

tem acesso ao espaço de memória liberado pelo 4GT.

Apenas as versões Microsoft Windows Server 2003 Enterprise Edition ou Windows Server

2003 Datacenter Edition podem usar o 4GT, outras versões, como o Wi

Standard Edition permitem que a chave seja ativada, porém apesar da aparência, os

endereços de memória restringidos pela chave (entre 2GB e 3GB) não ficam indisponíveis

para uso das aplicações.

Em alguns casos, restringir o uso de memória

problemático. Para endereçar as necessidades de quantidades intermediárias entre 2GB e

3GB, o Windows Server 2003 conta com um parâmetro auxiliar ao /3GB, também

configurado no boot.ini, que permite ajustes. Este pa

quantidade de memória expressa em MB seja informada ao sistema operacional durante a

carga, ajustando assim a quantidade de memória para uso do kernel do sistema. A

quantidade de memória deve ser expressa calculando a dif

para as aplicações do 4GT (3072MB) e a memória adicional necessária ao kernel. Por

exemplo, caso se deseje permitir mais 512MB para o kernel, deve

ou seja, 2560 e adicionar ao boot.ini "/3GB /Userva=2

www.cdcbrasil.com.br/ncomputing

O uso do 4GT nos sistemas Windows 2003 não é habilitado por padrão, ficando facultado

ao engenheiro de sistemas responsável sua ativação em virtude do cenário e

principalmente dos testes com as aplicações. Para habilitar o 4GT, deve

entrada /3GB no arquivo boot.ini. Esta chave altera a alocação de espaços em memória

para o kernel do sistema e para aplicações. Ao iniciar uma aplicação o sistema operacional

examina o cabeçalho do arquivo, se houver o flag

"IMAGE_FILE_LARGE_ADDRESS_AWARE" e o /3GB está sendo usado, então a aplicação

tem acesso ao espaço de memória liberado pelo 4GT.

Apenas as versões Microsoft Windows Server 2003 Enterprise Edition ou Windows Server

2003 Datacenter Edition podem usar o 4GT, outras versões, como o Wi

Standard Edition permitem que a chave seja ativada, porém apesar da aparência, os

endereços de memória restringidos pela chave (entre 2GB e 3GB) não ficam indisponíveis

Em alguns casos, restringir o uso de memória em no máximo 1GB para o kernel pode ser

problemático. Para endereçar as necessidades de quantidades intermediárias entre 2GB e

3GB, o Windows Server 2003 conta com um parâmetro auxiliar ao /3GB, também

configurado no boot.ini, que permite ajustes. Este parâmetro, o /Userva permite que uma

quantidade de memória expressa em MB seja informada ao sistema operacional durante a

carga, ajustando assim a quantidade de memória para uso do kernel do sistema. A

quantidade de memória deve ser expressa calculando a diferença entre a alocação padrão

para as aplicações do 4GT (3072MB) e a memória adicional necessária ao kernel. Por

exemplo, caso se deseje permitir mais 512MB para o kernel, deve-se subtrair 512 de 3072,

ou seja, 2560 e adicionar ao boot.ini "/3GB /Userva=2560". Esta memória RAM adicional é

O uso do 4GT nos sistemas Windows 2003 não é habilitado por padrão, ficando facultado

ao engenheiro de sistemas responsável sua ativação em virtude do cenário e

principalmente dos testes com as aplicações. Para habilitar o 4GT, deve-se incluir uma

entrada /3GB no arquivo boot.ini. Esta chave altera a alocação de espaços em memória

para o kernel do sistema e para aplicações. Ao iniciar uma aplicação o sistema operacional

_AWARE" e o /3GB está sendo usado, então a aplicação

Apenas as versões Microsoft Windows Server 2003 Enterprise Edition ou Windows Server

2003 Datacenter Edition podem usar o 4GT, outras versões, como o Windows Server 2003

Standard Edition permitem que a chave seja ativada, porém apesar da aparência, os

endereços de memória restringidos pela chave (entre 2GB e 3GB) não ficam indisponíveis

em no máximo 1GB para o kernel pode ser

problemático. Para endereçar as necessidades de quantidades intermediárias entre 2GB e

3GB, o Windows Server 2003 conta com um parâmetro auxiliar ao /3GB, também

râmetro, o /Userva permite que uma

quantidade de memória expressa em MB seja informada ao sistema operacional durante a

carga, ajustando assim a quantidade de memória para uso do kernel do sistema. A

erença entre a alocação padrão

para as aplicações do 4GT (3072MB) e a memória adicional necessária ao kernel. Por

se subtrair 512 de 3072,

560". Esta memória RAM adicional é

Page 8: Gerência de Memória RAM em Computadores com Mais de 4GB · não são grandes as alterações a serem realizadas no desenho destas aplicações. O Windows considera que toda a memória

reservada como espaço adicional para as entradas na tabela de paginação, mas o sistema

não faz nenhuma alocação deste espaço até que seja necessário.

Outro ponto importante em sistemas

haver espaço suficiente para armazenar um arquivo de despejo de memória de 2GB

(despejo de memória do kernel) em sistemas com 4GB ou mais de memória RAM.

Usando o 4GT e o Physical Address Extensions no

Em sistemas com 4GB ou mais de memória, o Memory Manager divide os quatro

primeiros gigabytes em dois blocos de 2GB, um para Kernel Mode e outro para o User

Mode. Desta forma, dependendo da quantidade de memória instalada além dos 4GB,

ativar o PAE pode não significar que a aplicação realmente possa fazer uso desta memória.

Considerando um equipamento com 6GB RAM como exemplo, uma aplicação que precise de 5GB

irá ter paginado pelo Memory Manager ao menos 1GB, além disto, podem ocorrer casos on

sistema operacional, apesar de ter alocado, não está realmente utilizando os 2GB.

Uma forma de permitir que uma quantidade maior de memória seja utilizada pelas

aplicações é ativar o PAE e o 4GT no sistema ao mesmo tempo, restringindo o acesso a

apenas 1GB pelo kernel.

Entretanto, devido ao 4GT restringir o acesso do kernel a memória, o espaço disponível

para o Page Table fica restrito (reduzindo a quantidade de memória não

256MB para 128MB), permitindo entradas (Page Table Entries) até o

16GB de endereçamento de memória, mesmo que o sistema possua, por exemplo, 32GB

de memória RAM instalada. Além disso, é importante testar as aplicações com carga

(simulando acesso real) ao usar o 4GT, uma vez que o consumo de memória do mo

kernel para manter as conexões com os clientes pode ser insuficiente, exigindo um ajuste

mais apurado através do /Userva.

Conclusão

Apesar do lançamento e consolidação de arquiteturas de 64bits, a quantidade de sistemas de 32bits

ainda é grande, e é preciso compreender o funcionamento do subsistema de memória para tirar

melhor proveito dos recursos, aumentando a confiabilidade e o desempenho dos sistemas atuais.

Para mais informações de como usar os ajustes avançados de memória nos sistemas

operacionais Windows, consulte o Microsoft Technet e Knowledge Base e o Help do

Windows Server 2003.

www.cdcbrasil.com.br/ncomputing

reservada como espaço adicional para as entradas na tabela de paginação, mas o sistema

não faz nenhuma alocação deste espaço até que seja necessário.

Outro ponto importante em sistemas com grandes quantidades de memória, é que deve

haver espaço suficiente para armazenar um arquivo de despejo de memória de 2GB

(despejo de memória do kernel) em sistemas com 4GB ou mais de memória RAM.

Usando o 4GT e o Physical Address Extensions no mesmo sistema

Em sistemas com 4GB ou mais de memória, o Memory Manager divide os quatro

primeiros gigabytes em dois blocos de 2GB, um para Kernel Mode e outro para o User

Mode. Desta forma, dependendo da quantidade de memória instalada além dos 4GB,

o PAE pode não significar que a aplicação realmente possa fazer uso desta memória.

Considerando um equipamento com 6GB RAM como exemplo, uma aplicação que precise de 5GB

irá ter paginado pelo Memory Manager ao menos 1GB, além disto, podem ocorrer casos on

sistema operacional, apesar de ter alocado, não está realmente utilizando os 2GB.

Uma forma de permitir que uma quantidade maior de memória seja utilizada pelas

aplicações é ativar o PAE e o 4GT no sistema ao mesmo tempo, restringindo o acesso a

Entretanto, devido ao 4GT restringir o acesso do kernel a memória, o espaço disponível

para o Page Table fica restrito (reduzindo a quantidade de memória não

256MB para 128MB), permitindo entradas (Page Table Entries) até o limite máximo de

16GB de endereçamento de memória, mesmo que o sistema possua, por exemplo, 32GB

de memória RAM instalada. Além disso, é importante testar as aplicações com carga

(simulando acesso real) ao usar o 4GT, uma vez que o consumo de memória do mo

kernel para manter as conexões com os clientes pode ser insuficiente, exigindo um ajuste

mais apurado através do /Userva.

Apesar do lançamento e consolidação de arquiteturas de 64bits, a quantidade de sistemas de 32bits

reciso compreender o funcionamento do subsistema de memória para tirar

melhor proveito dos recursos, aumentando a confiabilidade e o desempenho dos sistemas atuais.

Para mais informações de como usar os ajustes avançados de memória nos sistemas

s Windows, consulte o Microsoft Technet e Knowledge Base e o Help do

reservada como espaço adicional para as entradas na tabela de paginação, mas o sistema

com grandes quantidades de memória, é que deve

haver espaço suficiente para armazenar um arquivo de despejo de memória de 2GB

(despejo de memória do kernel) em sistemas com 4GB ou mais de memória RAM.

Em sistemas com 4GB ou mais de memória, o Memory Manager divide os quatro

primeiros gigabytes em dois blocos de 2GB, um para Kernel Mode e outro para o User

Mode. Desta forma, dependendo da quantidade de memória instalada além dos 4GB,

o PAE pode não significar que a aplicação realmente possa fazer uso desta memória.

Considerando um equipamento com 6GB RAM como exemplo, uma aplicação que precise de 5GB

irá ter paginado pelo Memory Manager ao menos 1GB, além disto, podem ocorrer casos onde o

sistema operacional, apesar de ter alocado, não está realmente utilizando os 2GB.

Uma forma de permitir que uma quantidade maior de memória seja utilizada pelas

aplicações é ativar o PAE e o 4GT no sistema ao mesmo tempo, restringindo o acesso a

Entretanto, devido ao 4GT restringir o acesso do kernel a memória, o espaço disponível

para o Page Table fica restrito (reduzindo a quantidade de memória não-paginável de

limite máximo de

16GB de endereçamento de memória, mesmo que o sistema possua, por exemplo, 32GB

de memória RAM instalada. Além disso, é importante testar as aplicações com carga

(simulando acesso real) ao usar o 4GT, uma vez que o consumo de memória do modo

kernel para manter as conexões com os clientes pode ser insuficiente, exigindo um ajuste

Apesar do lançamento e consolidação de arquiteturas de 64bits, a quantidade de sistemas de 32bits

reciso compreender o funcionamento do subsistema de memória para tirar

melhor proveito dos recursos, aumentando a confiabilidade e o desempenho dos sistemas atuais.

Para mais informações de como usar os ajustes avançados de memória nos sistemas

s Windows, consulte o Microsoft Technet e Knowledge Base e o Help do