segunda-feira, 14 de julho de 2008

Memória RAM




Se o processador é o principal componente de qualquer computador, a memória RAM é a sua principal ferramenta de trabalho. Desde uma calculadora xing-ling, até um grande mainframe, não existe nenhum tipo que computador que não utilize memória RAM. O processador utiliza a memória RAM para armazenar programas e dados que estão em uso e fica impossibilitado de trabalhar sem ter pelo menos uma quantidade mínima dela. Aliás, nos computadores atuais, a velocidade de acesso à memória RAM é um dos principais determinantes da performance, daí a vital importância do uso da memória cache.A sigla "RAM" significa "Ramdom Access Memory" ou "memória de acesso aleatório". Este nome é mais do que adequado, pois a principal característica da memória RAM é a capacidade de fornecer dados anteriormente gravados, com um tempo de resposta e uma velocidade de transferência centenas de vezes superior à dos dispositivos de memória de massa, como o disco rígido.Mais uma característica marcante da memória RAM é o fato dela ser volátil: precisa ser constantemente reenergizada para conservar os dados gravados. Como numa calculadora, perdemos todos os dados nela armazenados quando desligamos o micro. Se, por exemplo, você estiver escrevendo uma carta no Word e, de repente, houver um pico de tensão e o micro reinicializar, sem lhe dar tempo de salvar a carta no disco rígido, você perderá todo seu trabalho.Existem claro, tipos de memória RAM não voláteis, como por exemplo as memórias Flash, que são utilizadas nos Palm Pilots e em outros computadores de mão, celulares, etc. O problema das memórias Flash é o preço. Enquanto escrevo, é possível comprar um módulo de memória SDRAM de 256 MB por R$ 200, com o dólar nas cucuias como está, isso corresponde a menos de 80 dólares, a preços de Brasil. Isso dá pouco mais de 30 centavos por megabyte. As memória Flash já são bem mais caras que isso, custam entre 5 e 10 dólares por megabyte, dependendo da aplicação. Isso sem contar o fato delas serem bem mais lentas.Na verdade, pode ser que no futuro algum tipo de memória não volátil venha a definitivamente substituir a memória RAM. A IBM por exemplo vem desenvolvendo as memórias MRAM, que armazenam dados na forma de sinais magnéticos. A promessa é que além de conservarem os dados gravados por anos a fio, elas sejam tão rápidas e baratas quanto as memórias atuais. Normalmente as promessas dos fabricantes são tão confiáveis quanto as promessas dos políticos em campanha, mas sempre existe uma esperança :-)Já que vamos continuar usando memória RAM volátil durante mais alguns (ou vários) anos, que tal estudarmos sua história e as tecnologias se memória disponíveis atualmente? Puxe uma cadeira e seja meu convidado.

Preço x quantidade
Antigamente, os módulos de memória RAM custavam muito caro. Há poucos anos atrás, pagávamos mais de 40 dólares por megabyte. Em pleno início da década de 90, o preço da memória chegou a bater a marca dos 100 dólares por megabyte.Com a memória custando este fortuna, é compreensível que a grande maioria dos PCs 386 e 486 viessem equipados com apenas 8 ou mesmo 4 MB de memória, sendo que o recomendável para rodar sistemas gráficos como o Windows 95, ou mesmo o XFree86 do Linux seriam pelo menos 16.Felizmente, tivemos nos últimos anos uma queda vertiginosa no preço das memórias. Assim como os processadores evoluem, incorporando mais transístores, operando a frequências maiores e ainda assim custando cada vez mais baratos, com o passar do tempo os fabricantes de memória conseguem produzir chips de memória com transístores cada vez menores. Com isto, é possível aumentar a quantidade de memória em cada chip e o preço por megabyte despenca.Voltando ao ramo dos processadores, um 486 tinha apenas 1.200.000 transístores, enquanto um Athlon Thunderbird tem 37 milhões. Mesmo assim, um Athlon custa hoje bem menos que um 486 custava na época em que era novidade. A chave para este salto é a miniaturização dos transístores.Na memória RAM, cada transístor representa um bit de dados. Um módulo de memória com 64 MB é formado por cerca de 512 milhões de transístores. Conforme os fabricantes desenvolvem novas tecnologias, passam a ser capazes de produzir transístores menores. Com isso é possível incluir mais transístores, e consequentemente mais memória em cada chip. Os primeiros chips de memória RAM tinham apenas 1 Kb (um Kbit e não um Kbyte, preste atenção no B minúsculo :-), enquanto atualmente a moda é produzir chips com 128 Mb (megabits). Juntando 8 chips temos um pente de memória com 128 MB, juntando 16 temos um módulo de 256 MB e assim por diante. Chegamos assim aos 30 centavos por megabyte.Os módulos de memória ainda não dão em árvore, mas estão perto disso, pelo menos em termos de preço.O baixo preço atual, justifica o uso de 128 ou mesmo 256 MB de memória. Alguns usuários de aplicativos mais pesados já vão mais além, definindo 512 MB como o ideal. A quantidade e velocidade das memórias são mais importantes que a própria velocidade do processador, principalmente para quem costuma trabalhar com vários aplicativos abertos ao mesmo tempo, ou trabalha com arquivos pesados, imagens, vídeo, etc..A equação é simples. Qualquer programa ou arquivo em uso precisa ser armazenado na memória. O processador começa a usar a memória RAM que é razoavelmente rápida, o suficiente para que (com a ajuda do cache) o processador possa usar todo o seu potencial. Mas, e quando a memória RAM se esgota? Bem, o que você prefere, ver uma mensagem de "não há memória suficiente", ou ver o aplicativo rodando, mesmo que lentamente? Se você ficou com a segunda opção, agradeça ao engenheiro da Intel que trabalhou para incluir o recurso de memória virtual a partir 386.A memória virtual é só um quebra galho. Serve para permitir que o processador simule mais memória RAM criando um arquivo no disco rígido e armazenando nele os dados que não couberam na memória. O problema é que o processador processa bilhões de instruções por segundo, enquanto um HD rápido tem tempos de acesso em torno de 10 milésimos de segundo.Como o processador não pode fazer nada se não tiver dados para processar, precisa esperar até que o disco rígido possa lhe entregar o trabalho a ser feito. De nada adianta ter um processador muito rápido, se por falta de memória RAM ele é subtilizado devido ao uso de memória virtual, ficando limitado à performance do disco rígido.Para você ter uma idéia do quanto a quantidade de memória RAM é importante, um simples 486DX4-100, com uma quantidade razoável de memória RAM (32 MB ou mais) é capaz de rodar o Windows 95/98 e a maioria dos aplicativos mais rápido do que um Pentium III de 1 GHz equipado com apenas 8 MB de memória. Afinal, o que é mais rápido, um processador 486, ou o disco rígido usado no Pentium III? Claro que o ideal é sempre termos um sistema equilibrado; não adianta também querer instalar 64 MB de memória RAM em um 386.

Como funciona
Os chips de memória RAM possuem uma estrutura extremamente simples. Para cada bit 1 ou 0 a ser armazenado, temos um minúsculo capacitor; quando o capacitor está carregado eletricamente temos um bit 1 e quando ele está descarregado temos um bit 0. Para cada capacitor temos um transístor, encarregado de ler o bit armazenado em seu interior e transmiti-lo ao controlador de memória. A memória RAM é volátil justamente devido ao capacitor perder sua carga muito rapidamente, depois de poucos milésimos de segundo.A produção de chips de memória é similar ao de processadores: também utilizamos um waffer de silício como base e um laser para marcá-lo. A diferença é que os chips de memória são compostos basicamente de apenas uma estrutura básica: o conjunto capacitor/transístor, que é repetida alguns milhões de vezes, enquanto os processadores são formados por estruturas muito mais complexas. Devido a esta simplicidade, um chip de memória é muito mais barato de se produzir do que um processador. Um módulo de 128 MB tem pouco mais de 1 bilhão de transístores, quase 40 vezes mais que um processador Pentium III Coppermine. Apesar disso, o módulo de memória é mais barato.

Acesso a dados
Para ler e gravar dados na memória, assim como controlar todo o trânsito de dados entre a memória e os demais componentes do micro, é usado mais um circuito, chamado controlador de memória, que faz parte do chipset localizado na placa mãe.Para facilitar o acesso a dados, dividimos os módulos de memória em linhas e colunas. Para acessar um determinado transístor (seja para gravar ou ler dados), o controlador de memória primeiro gera o valor RAS (Row Address Strobe), ou o número da linha da qual o transístor faz parte, sendo gerado em seguida o valor CAS (Collum Address Strobe), que corresponde à coluna.


Formato

Os chips de memória são frágeis placas de silício, que precisam ser encapsulados em alguma estrutura mais resistente antes de serem transportados e encaixados na placa mãe. Assim como temos vários tipos de encapsulamento diferentes para processadores, (SEPP e PPGA por exemplo) temos vários formatos de módulos de memória. Inicialmente os chips são encapsulados em módulos DIP, que os protegem e facilitam a dissipação do calor gerado pelos chips. Estes por sua vez são soldados em placas de circuito, formando os módulos de memória. Existem atualmente 3 tipos de módulos de memória: os módulos SIMM de 30 vias, os módulos SIMM de 72 vias e, finalmente, os módulos DIMM de 168 vias.


Módulos DIP

Os módulos DIP são encapsulamentos de plástico ou cerâmica, que protegem os chips de memória, facilitam a dissipação do calor gerado durante seu funcionamento, e tornam mais acessíveis seus terminais, facilitando o encaixe ou a soldagem. O encapsulamento DIP também é usado em vários outros tipos de componentes.Em PCs antigos, principalmente XTs, 286s e os primeiros 386s, os módulos DIP eram soldados diretamente à placa mãe, ou em alguns casos, encaixados individualmente em soquetes disponíveis na placa. Este era um sistema antiquado, que trazia várias desvantagens, por dificultar upgrades de memória ou a substituição de módulos com defeito. Imagine você, fazendo um upgrade de memória numa placa como a da foto abaixo:





Liberando memória RAM




Download



O Windows tem o péssimo hábito de não liberar memória RAM após o seu uso. Isto é, com o tempo a memória RAM vai acumulando restos não usados de dados e programas.

O resultado é que, após horas de uso, o micro fica com parte de sua memória RAM ocupada com "lixo", fazendo com que o micro fique mais lento e mais propenso a falhas.

Se você está acostumado a usar programas pesados como o Photoshop, Page Maker e Corel Draw sabe muito bem do que estamos falando: freqüentemente temos de reiniciar o micro para que a memória fique liberada novamente e o micro volte a obter um bom desempenho.

A boa notícia é que existe um pequeno programa grátis que resolve esse problema com um simples clique de mouse. Trata-se do Rambooster, que pode ser baixado na Internet.

Após instalar e executar o programa, basta você clicar na caixa Optimize para liberar a memória RAM. Além disso, o programa apresenta gráficos para você ir acompanhando o uso da memória RAM e do nível de utilização do processador da máquina. Você pode ainda clicar em Send to Tray para "jogar" o programa para a barra de ferramentas do Windows, ao lado do relógio.

Através do campo "Memory Control" você configura quanto de memória RAM você precisa livre. Clicando em Optimize após alterar esse valor, o programa tentará liberar o máximo de memória RAM possível até atingir o mais próximo do valor configurado. Esse recurso é excelente se você tem o costume de jogar jogos 3D "devoradores" de memória RAM, isto é, que necessitam de muita memória RAM livre para obterem um bom desempenho.

O programa possui ainda uma opção para acionar um alarme quando houver pouca memória RAM livre. O valor padrão desse alarme é de 3 MB (esse valor pode ser alterado a seu critério), isto é, quando houver menos memória do que isso disponível, o programa é acionado e limpa a memória RAM automaticamente para que exista mais memória disponível. Para essa opção funcionar, o programa precisa estar minimizado.

Como o Rambooster ocupa pouca memória RAM, recomendamos que ele seja executado toda a vez em que o Windows é carregado. Para isso, basta habilitar a caixa "Launch automatically at startup" existente na opção Preferences do menu Edit. Você também pode habilitar a caixa "Start minimized" existente na mesma tela para o programa ser iniciado minimizado.


fonte: Clube do hardware

sábado, 12 de julho de 2008

Cientista vislumbra download de hardware e computadores que mudam de forma


O Dr. Roel Vertegaal ficou famoso ao inventar um cubículo de atenção, um local onde o trabalhador poderia desempenhar suas funções sem se distrair.

Uma fama sem qualquer admiração, é bom que se diga, pelo menos por parte dos trabalhadores, muitos dos quais correram para afirmar que não precisam ficar "fechados numa cela" para serem produtivos. Talvez não tenham entendido bem, porque o cubículo de atenção se torna totalmente transparente ao desejo do "encarcerado."

Interface orgânica

Agora o Dr. Vertegaal vem com algo mais cativante, na verdade uma tendência da indústria eletrônica à medida que se aprimoram as técnicas para fabricação de circuitos flexíveis e transparentes.

O pesquisador está construindo o que ele chama de "computadores não-planares." Muito além de telas e teclados flexíveis, o que ele está difundindo é um conceito de "interface orgânica," um computador capaz até mesmo de mudar de forma para facilitar a interação do usuário.

Imagine uma lata de refrigerantes com navegadores de Internet mostrando feeds RSS ou acompanhando pelo Twitter o que os seus amigos andam fazendo. Ou traillers do filme aparecendo em brinquedos temáticos.

Revolução na interação humano-computador

"Nós estamos falando de nada menos do que uma revolução na interação humano-computador," afirma Vertegaal. Ele compara nossos atuais computadores com telas planas ao povo do romance Flatland (mundo plano), que vive em apenas duas dimensões e, como resultado, tem uma visão estreita e deturpada da realidade.

A sua Interface Orgânica Cinética permite que os computadores ajustem seu formato de acordo com a necessidade que ele vai atender ou segundo as interações com o usuário. O conceito é muito parecido com a Argilotrônica, que permitirá que os computadores não apenas mostrem imagens, mas objetos físicos em três dimensões.

Download de hardware

Por enquanto as experiências estão limitadas pelo avanço da tecnologia, mas o laboratório do Dr. Vertegaal já está unindo o papel eletrônico, a tecnologia de multitoque e os circuitos eletrônicos flexíveis para construir engenhocas como uma caneca de café capaz de mostrar traillers de filmes ou qualquer outra coisa que possa ser vista pela Internet. Ou a bancada de desenvolvimento de gadgets, que pode ser vista no filme.

Mas os sonhos de Vertegaal vão bem além: ele quer construir um sistema que permita o download de hardware, a partir de uma loja de peças computacionais individuais, evitando o desperdício que representa a compra de novos átomos.

"Esta será a fronteira final no projeto de interfaces de computadores que transformem o mundo natural em software, e o software em um mundo natural," vislumbra ele.

Mais um passo rumo ao computador quântico


Uma equipe de físicos da Universidade de Maryland (Estados Unidos), liderados pelo Dr. Fred Wellstood, deu mais um passo rumo à computação quântica, demonstrando a existência de estados entrelaçados ("entangled states") entre dois qubits (bits quânticos), cada um criado com um tipo de circuito de estado sólido conhecido como junção Josephson. A pesquisa, publicada no último número da revista Science, representa o último avanço no esforço dos cientistas para a aplicação das propriedades da física quântica na criação de computadores mais poderosos do que os atuais supercomputadores.
Estado entrelaçado ("entangled state") é um efeito de mecânica quântica que torna difusa a distinção entre partículas individuais, de tal forma que é impossível descrever as duas partículas separadamente, não importando a distância pela qual as duas estejam fisicamente separadas. Esta propriedade é chave para o imenso poder da computação quântica porque ela permite ao computador verificar cada resposta possível para um problema de uma única vez.

O que é computador quântico?
Um bit é a menor unidade de dado em um computador. Nos computadores eletrônicos atuais, o bit está sempre em um de dois estados possíveis. É por isto que se convencionou dizer que o bit pode ser 0 ou 1. Mas com o entrelaçamento de partículas, um bit quântico, ou qubit, poderá ter não apenas seu valor individual (0 ou 1), mas também poderá ter infinitos valores de seus estados entrelaçados com cada um dos outros qubits. Dois bits podem representar ou armazenar apenas duas informações, mas dois qubits podem armazenar quatro dados ao mesmo tempo, os seus próprios e os resultantes de seu entrelaçamento. Esta vantagem quântica aumenta exponencialmente à medida em que o número de qubits aumenta. Por exemplo, seis bits podem representar seis dados diferentes, enquanto seis qubits podem representar 2^6=64 dados.

Dois enfoques da computação quântica
As pesquisas atuais para criar um computador quântico podem ser agrupadas em duas categorias:
A primeira categoria consiste de pesquisadores trabalhando com partículas atômicas ou sub-atômicas, tais como átomos e elétrons, para os quais a natureza quântica e os estados entrelaçados são inerentes. O principal desafio para esses pesquisadores é como passar da manipulação dessas partículas individualmente ou em pequeno número, para uma manipulação em larga escala que permita a construção de um computador quântico real.
A segunda categoria, na qual o Dr. Wellstood se enquadra, consiste de pesquisadores trabalhando com dispositivos eletrônicos de estado sólido, ao invés de partículas sub-atômicas. A distância que separa esses dispositivos de um computador quântico real é teoricamente muito mais fácil de se percorrer. O maior desafio desse enfoque de pesquisas é alcançar, em nível macroscópico, os estados quânticos naturalmente presentes no nível atômico. Esse é exatamente o significado da atual descoberta: o experimento mostra evidências importantes de que o comportamento quântico necessário está presente no nível macroscópico das junções Josephson.
A junção Josephson utilizada nesta pesquisa é feita de dois supercondutores separados por uma camada isolante tão fina que os elétrons conseguem atravessá-la. A mecânica quântica permite que elétrons fluam através da camada isolante, um efeito não "aceitável" dentro dos parâmetros da física tradicional.
Estas junções são construídas com as mesmas técnicas utilizadas na fabricação de circuitos integrados, sendo possível, portanto, passar da experiência atual para uma que englobe milhares ou mais junções, necessárias para se construir um computador quântico real.