Tal como descrito previamente quando explicamos a diferença entre O que é o CPU e o GPU?, um computador é composto por uma série de elementos que trabalham em sintonia de forma a que todo o seu funcionamento seja fluído e uma boa experiência para o utilizador.
A RAM e a ROM são também dois dos elementos principais de um computador. A diferença entre estes dois componentes prende-se principalmente na facilidade com que é possível ler e escrever informação.
Existem diferentes tipos de memória, sendo que as mais conhecidas são a voltátil e não volátil. A memória volátil significa que a informação é guardada mas desaparece completamente quando o dispositivo é desligado, por outro lado a memória não volátil guarda a informação permanentemente, mesmo depois do dispositivo ter sido desligado.
O que é a RAM?
A RAM (Random Access Memory) é memória volátil. Permite armazenar e ler informação de forma bastante rápida, mas toda essa informação é perdida quando o computador é desligado.
O principal objetivo da RAM é permitir que a informação seja rapidamente acedida pelo CPU.
Podes estar a perguntar-te “mas então porque é que o CPU não vai buscar a informação diretamente à ROM ou ao disco duro?”. Isso seria possível, sim, mas o acesso aos dados seria tão lento que a utilização do computador seria uma autêntica dor de cabeça. Desta forma, quando o CPU necessita de informação, guarda essa informação na RAM de forma a que possa ser rapidamente acedida quando necessário.
É por esta razão que a informação é perdida quando estamos, por exemplo, a escrever num documento do Office e o computador crasha sem gravarmos o progresso. A informação deste documento estava guardada na RAM para que o acesso fosse rápido, e como tal não é possível recuperar a informação após o computador se ter desligado.
E a ROM?
Ao contrário da RAM, a ROM (Read-Only Memory) é memória não volátil. Tem evoluído ao longo dos anos, mas na sua forma original, a ROM armazenava informação diretamente nos circuitos. Ou seja, os dados estavam registados fisicamente, tal como quando guardamos dados num CD, em que o próprio CD é alterado fisicamente e como tal não é possível alterar mais esta informação.
Com o passar dos anos, também esta foi sofrendo atualizações, e é atualmente EEPROM (Electrically Erasable Programmable ROM), que não é exatamente apenas de leitura, sendo que é possível alterar os dados presentes nesta memória utilizando cargas elétricas com uma voltagem específica. (ainda que não seja algo que acontece com frequência)
A ROM (ou EEPROM) é maioritariamente utilizada para registar informações do sistema que não serão atualizados com frequência, como o firmware utilizado pela BIOS, sendo que seria mais demorado alterar dados neste tipo de memória.
Qual é a diferença entre a RAM e a ROM?
Uma das minhas analogias preferidas para esta comparação é pensando numa caneta e num lápis.
A RAM é muito como um lápis, em que a grafite (informação) fica pousada no papel (armazenamento) e é possível passar uma borracha e facilmente tirar a informação registada no papel. (o que acontece quando se desliga o computador)
Já a ROM é como uma caneta, em que a tinta (informação) seca no papel (armazenamento) e é bastante complicado remover esta tinta.
Com a evolução dos componentes e a introdução da memória Flash, a distinção entre estes dois elementos tem ficado mais ténue, sendo que a memória ROM tem ficado mais rápida (ainda assim continua bastante mais lenta que a RAM) e têm até surgido possibilidades de tornar a memória RAM não-volátil.