Como o Windows 8 irá consumir menos memória

Como o Windows 8 irá consumir menos memória

Durante toda a sua história, o Windows foi sempre um sistema desenvolvido para uso exclusivo em desktops e notebooks. Mesmo os tablets conversíveis que a Microsoft tentou incentivar a partir do início da década passada nada mais eram do que notebooks conversíveis, que rodavam uma versão padrão do Windows, com alguns poucos extras para tornar possível o uso em modo tablet. Não é preciso muita imaginação para entender por que estes modelos nunca fizeram muito sucesso, muito embora tenham permanecido no mercado por quase uma década.

lifebook t3010

Com o crescimento dos tablets e dos processadores ARM, a Microsoft anunciou o que antes parecia impensável: não apenas o Windows 8 seria otimizado para uso em tablets, mas também passaria a rodar também em processadores ARM, duas enormes mudanças de paradigma implementadas de uma vez só!

O uso em tablets e outros dispositivos com processadores ARM trás uma série de problemas, especialmente em relação às restrições em relação à memória RAM, já que muitos dispositivos utilizam apenas 512 ou mesmo 256 MB de RAM, assim como PCs da década passada.

windows

Ao longo da evolução do Windows a Microsoft sempre se acomodou em relação ao consumo de memória, sempre contanto que os PCs da geração seguinte trariam mais memória RAM e assim adicionando serviços e camadas adicionais a cada nova versão do Windows, tornando o sistema cada vez mais inchado. Entretanto, com o aparecimento dos netbooks e agora dos tablets essa tendência se reverteu, obrigando a Microsoft a voltar para a prancheta e pela primeira ver se ver obrigada a projetar uma versão do Windows com o objetivo de consumir menos memória que a antecessora.

Estas melhorias são destinadas a aliviar a pegada do sistema principalmente nos tablets, mas ela é uma boa notícia também para os usuários de PCs, já que um sistema mais enxuto é sempre bem-vindo.

A primeira mudança é o conceito de start on demand para serviços de sistema, que complementa o start-delay introduzido no Windows 7. Em resumo, qualquer sistema operacional moderno depende da execução de um grande número de serviços, que monitoram conexões de rede, dispositivos USB, conexões remotas e assim por diante. No Windows 7 a Microsoft introduziu o strat-delay, que permite que serviços não essenciais sejam iniciados no final do boot, depois que o desktop já está disponível, o que reduz o tempo de boot, mas não faz nada em relação ao consumo de memória. No Windows 8 a Microsoft foi forçada a adotar um sistema de start on demand, que permite que serviços sejam iniciados em momentos específicos, façam o que precisam fazer e depois sejam novamente descarregados da memória. Exemplos de serviços que rodarão dentro deste novo modo são o Windows Update e o Plug-and-Play.

Usuários do Linux podem achar estranho que a Microsoft tenha introduzido este tipo de função apenas agora, sendo que os sistemas Unix oferecem a função de executar tarefas e serviços sob demanda desde os primórdios com o Cron, mas de qualquer forma, antes tarde do que nunca.

Outro componente que pode ser carregado sob demanda é a própria interface clássica do Windows, que passa agora a rodar em um nível mais alto, quase como um aplicativo e se torna opcional. Ao ser inicializado, o Windows carrega apenas a interface metro, que é minimalista por natureza e carrega o desktop clássico apenas caso configurado.

win8

A interface Metro consome consideravelmente menos memória que o desktop c?ássico do Windows, já que oferece um visual mais simples, baseado no uso de atalhos e de um aplicativo de cada vez. A interface metro foi desenvolvida com os tablets em mente, oferecendo um ambiente otimizado para o uso por toque. Ela também pode ser usada em um desktop com teclado e mouse, mas a experiência de uso é um pouco estranha.

Segundo a Microsoft, a interface Metro consome cerca de 23 MB de memória a menos. Considerando que a maioria dos usuários do Windows são avessos à mudanças (este é um dos motivos de estarem usando o Windows em primeiro lugar), é provável que a grande maioria dos usuários vá preferir reverter ao desktop padrão, abrindo mão do ganho. Nos tablets por outro lado o Metro tende a fazer sucesso.

Uma mudança ainda mais fundamental foi feita em relação ao gerenciamento da memória virtual. Muito embora “memória virtual” seja normalmente visto como sinonimo de memória swap, nos sistemas operacionais modernos a coisa é um pouco mais complicada do que isso.

Em poucas palavras, memória virtual engloba a forma como o sistema manipula os endereços de memória, combinando a memória física, o arquivo de troca, endereços virtuais (como a memória de diferentes dispositivos) e até mesmo arquivos no HD, mapeados como áreas de memória. O sistema gerencia todos estes diferentes recursos, lidando com toda a complexidade, e apresenta um conjunto de setores contínuos para o uso dos aplicativos, geralmente dividido em páginas de 4 KB.

Um aplicativo pode solicitar a gravação de determinados componentes e bibliotecas para a memória, mas é o sistema quem tem a última palavra sobre o que vai realmente ser carregado na memória física, o que vai para o swap e até mesmo arquivos no HD que podem ser mapeados como áreas de memória, como no caso de DDLs e outras bibliotecas de sistema.

No Windows 8, o sistema inclui um algoritmo para identificar páginas de memória com conteúdo duplicado, permitindo que uma única cópia permaneça carregada na memória e seja compartilhada entre os diferentes aplicativos. No caso de bibliotecas DLL por exemplo, não é necessário que as bibliotecas sejam idênticas, mas apenas que tenham o conteúdo parecido o suficiente para resultar em trechos de 4 KB repetidos. Como é comum que múltiplas versões das mesmas bibliotecas sejam carregadas (com diferenças muito pequenas), este sistema pode resultar em ganhos perceptíveis no uso geral, embora não seja nenhuma panacéia.

mouse charm menu

Entretanto, a área em que o benefício será maior é em relação à virtualização, já que com várias máquinas virtuais ativas simultâneamente (especialmente se rodando o mesmo sistema operacional) o volume de informações repetidas será muito grande.

Outra área que está recebendo melhorias é a organização das estruturas de dados do sistema. Um efeito negativo de dividir a memória em páginas de 4 KB (e não em blocos menores) é o fato de que se o sistema precisa de apenas alguns poucos bytes de dados, a página inteira precisa ser lida. Este é um problema especialmente no caso da memória swap, já que alguns poucos kbytes espalhados em várias páginas em diferentes áreas do disco podem resultar em um tempo de leitura de vários segundos. A Microsoft está tentando atacar este problema usando algoritmos que permitem ao sistema organizar os dados da memória em ordem de prioridade, mantendo as informações mais frequentemente usadas separadas das usadas infrequentemente. Com isso, quando surge a necessidade de liberar mais memória, o sistema pode simplesmente mover as áreas do fim da fila, que conterá as informações mais redundantes, já organizadas de forma a facilitar o arquivamento. Este novo sistema permite que o sistema seja mais agressivo na eliminação de dados da memória, o que segundo a Microsoft resulta em uma ecnomia da ordem de “dezenas de megabytes” por máquina.

Por enquanto, o Windows 8 ainda está disponível apenas como um preview, por isso é ainda impossível medir o impacto prático destas mudanças, tudo que escrevi é baseado em informações prévias sobre o sistema e alguns detalhes podem mudar até a versão final.

Sobre o Autor

Avatar de Carlos E. Morimoto
Redes Sociais:

Deixe seu comentário

X