2014/10/10

Como criar um RAM Disk no Windows para acessos ultra-rápidos


Já todos estarão familiarizados com as vantagens que os SSDs têm sobre os discos convencionais; mas... e se vos disser que em poucos minutos podem adicionar ao vosso computador um disco ainda mais rápido e de acesso instantâneo... e que o poderão fazer sem gastar um cêntimo? Bem vindo ao mundo dos RAM Disks.

Os RAM Disks

Os RAM Disks ou RAM Drives não são nenhuma novidade, mas tornam-se mais interessantes hoje em dia graças ao baixo custo da memória RAM que nos permite ter computadores com 8, 16 ou mais gigabytes de memória.

O que vamos fazer é usar parte dessa memória para criar um disco virtual, em tudo semelhante a qualquer outro disco ou SSD que tenham no vosso computador, mas com a "pequena" diferença de que este RAM Disk funcionará a velocidades ainda mais alucinantes que um SSD, Isto acontece porque a memória RAM está quase directamente ligada ao CPU, enquanto que o acesso a um SSD tem que passar por vários interfaces e controladores, onde cada um dos quais limitará ainda mais as suas velocidades.

Antes de avançarmos para "como criar um RAM Disk" comecemos por responder a uma questão incontornável: não é estúpido estar a usar preciosa memória RAM para criar um disco virtual?

Não necessariamente. Isto pressupondo que: 1) tem memória suficiente para o poderem fazer; 2) estão conscientes das suas vantagens e limitações.


Como criar um RAM Disk no Windows?


Embora existam diversos softwares pagos que permitem criar RAM disks, felizmente existem também alternativas gratuitas e open-source como é o caso do ImDisk. O ImDisk é uma ferramenta que permite inúmeras coisas, como montar imagens virtuais e até discos remotos de máquinas que não arranquem o Windows, mas poderá ser um pouco assustador de usar devido ao recurso à linha de comandos. Por isso torna-se aconselhável optarem pelo ImDisk Toolkit que vos apresentará um interface mais fácil de usar.

Com esta ferramenta poderão criar um RAM Disk, definindo o tamanho da memória que lhe pretendem aplicar, qual a letra que lhe será atribuída, e também se o querem inicializar copiando os conteúdos de uma pasta ou de um "image file". Por agora, deixem as opções avançadas de lado e escolham apenas o tamanho, letra do drive (habitualmente usa-se o "R"), a criação de uma pasta temporária e que deverá arrancar no início do Windows.

O tamanho do mesmo deverá ser escolhido em função da memória do vosso computador e da função que pretendem dar ao RAM Disk, (A título de exemplo, no meu computador com 24GB estou a usar 4GB para um disco de memória.)

E agora deverão ver no vosso computador um novo disco "R:"


A velocidade...

Os gráficos que se seguem demonstram bem a escala completamente diferente a que os RAM Disks pertencem:


Se a nível de leitura os 300-400MBps de um SSD envergonham os 140MBps de um disco convencional; o RAM Disk eclipsa-os completamente com velocidades que se aproximam dos 7000MBps. Memso nos casos mais extremos em que discos e SSDs reduzem drasticamente as prestações (leitura de blocos aleatórios de 4KB) para valores de 26MBps, o RAM Disk continua a debitar cerca de 750MBps.



Na escrita as diferenças são igualmente astronómicas, com o RAM Disk a superar os 10GBps (sim, gigabytes!)


Para que serve então o RAM Disk?

Como se costuma dizer, as possibilidades são infinitas. Se necessitam de fazer tarefas que obriguem a acessos constantes aos discos (por exemplo, injectar áudio em ficheiros de vídeo, usar ficheiros como lookup tables, etc.) a velocidade acrescida de um RAM Disk pode fazer com que algo que demorasse horas passe a poder ser feito em minutos ou segundos (assumindo que o factor de atraso são os tempos e velocidade de acesso aos dados, e não o processamento).

Para aqueles que gostam de poupar o SSD, um RAM Disk torna-se também num candidato perfeito para ser usado como disco onde se guardem os ficheiros temporários de browsers e todo o tipo de programas.

Mas...


Os perigos do RAM Disk

Uma coisa que importa sempre ter bem presente é que ao contrário de um SSD ou disco convencional, em caso de falha de energia ou um crash do sistema, irão perder todos os conteúdos que lá tiverem. Por isso mesmo o RAM Disk só é recomendável para guardarem coisas temporárias (como a cache do browser), ou ficheiros de trabalhos que beneficiem da sua velocidade mas que de seguida sejam copiados para um disco "permanente".


Como criar um RAM Disk persistente entre reboots

Falando de discos "permanentes". Usando-se a função de carregar uma "imagem" no arranque do sistema é possível fazer com que os conteúdos do RAM Disk sobrevivam a um reboot, gravando tudo o que lá está para um disco convencional quando fazem shutdown, e carreguem essa imagem no arranque seguinte. Isso é algo que os programas de RAM Disk pagos oferecem de origem, mas que no caso do ImDisk obriga a usar utilitários na linha de comando e a agendar tarefas a fazer no shutdown.

Novamente, ter atenção que isto só funcionará no caso de shutdowns bem sucedidos - se houver um crash ficam apenas com os dados gravados no último shutdown correcto. (Se tiverem uma máquina estável - como será recomendável! - não será problema com que tenham que se preocupar... Eu pessoalmente nunca tive um "crash" do sistema no meu Windows 7.)



Agora aproveita e espreita o restante top 10 das dicas para descobrires outras coisas úteis. :)

6 comentários:

  1. No Commodore Amiga (há muitos muitos anos:) podia-se criar uma RAD: (Ram Disk Drive) que podíamos tratar como se fosse uma disquete sector por sector, inclusivamente o sector de arranque ao ponto de fazer-mos um reset ao computador e ele arrancava sozinho de lá sem ter nenhum disco fisico inserido (nem disquetes), claro que era muito mais rápido e silencioso.
    https://www.youtube.com/watch?v=hBMPHfiiLRo
    Infelizmente o Amiga foi eliminado das opções dos consumidores por forças misteriosas... se não certamente hoje não estávamos tão agarrados aos legados do DOS/Windows95 e estaríamos a usar uma variante de Linux-Amiga OS.

    ResponderEliminar
    Respostas
    1. Exactamente. Se não me engano, a versão 1.3 do AmigaOS já tinha a RAM Disk no Workbench por default. Usávamos aquilo até mais não; por exemplo, ao descarregar arquivos LHA da Aminet, descomprimia-os quase sempre para a RAM para experimentar (era mais rápido).

      Muitas coisas correram mal ao Amiga como plataforma, mas a maior parte delas foi política. A plataforma em si (e a comunidade que tinha) era fabulosa e baseada na creatividade.

      Ainfa hoje tenho um A1200 com o qual os meus miúdos se divertem.

      Eliminar
  2. Faz lembrar os tempos do Amstrad 1512. Nessa altura copiava-se o "command.com" para o RAM-Disk e alterava-se a variável COMSPEC...

    ResponderEliminar
  3. Imaginemos :-) :
    PC com Win 7 x86 com 16 Gb Ram, teoricamente será possivel usar qq coisa como 12 Gb de RAM Disk ?

    ResponderEliminar
  4. Eu uso um ramdisk de 4GB (free) p/ cache do chrome e do time4popcorn! ;0)

    http://memory.dataram.com/products-and-services/software/ramdisk

    ResponderEliminar