Menu

22 juni 2011

Een ramdisk aanmaken onder OS X Terminal

Wanneer je Mac is voorzien van flink wat RAM geheugen, dan kun je een deel van dit geheugen gebruiken als ramdisk. Een ramdisk is een virtuele harddisk die je creëert in het RAM geheugen van je Mac. Doordat je gebruik maakt van het RAM geheugen is deze virtuele harddisk supersnel, je kunt deze vergelijken met een SSD.

Een ramdisk kun je inzetten voor applicaties die swapgeheugen gebruiken of voor het testen van volumes. Een andere toepassing kan het converteren van videobestanden zijn. Bij het converteren van avi (divx) naar M4V zul je merken dat dit aanmerkelijk sneller zal gaan dan dat je hiervoor de harddisk voor gebruikt.

Met behulp van OS X Terminal (Programma’s ▸ Hulpprogramma’s) is het vrij eenvoudig om een ramdisk aan te maken. We gebruiken hiervoor het diskutil commando.

diskutil erasevolume HFS+ "ramdisk" `hdiutil attach -nomount ram://xxxx`

Vervang xxxx door het aantal MB’s * 2048. Wanneer je een 1GB ramdisk wilt aanmaken gebruik je 2097152 (1024*2048). Het complete commando komt er dan als volgt uit te zien:

diskutil erasevolume HFS+ "ramdisk" `hdiutil attach -nomount ram://2097152`

Na het uitvoeren van het commando verschijnt het volume ‘ramdisk’ in OS X Finder en op het Bureaublad. Je kunt de ramdisk weer verwijderen door deze simpelweg naar de prullenbak te slepen of deze op een andere manier te unmounten.




Gerelateerde tips:




Reacties


  • Maxim 22 juni 2011 om 9:41

    Dus stel dat je 16GB ram hebt, kan je dan bevoorbeeld een ramdisk maken van 10GB om hier het OS op te zetten? Zodat het net als bij SSD veel sneller gaat…

  • Tim 22 juni 2011 om 9:45

    “Een andere toepassing kan het converteren van videobestanden zijn. Bij het converteren van avi (divx) naar M4V zul je merken dat dit aanmerkelijk sneller zal gaan dan dat je hiervoor de harddisk voor gebruikt.”

    Stel je wil gebruik maken van de extra snelheid, zet je je source dan op de ramdisk of destination naar de ramdisk?

  • Richard IJzermans 22 juni 2011 om 10:05

    Tim ▸ Inderdaad het snelst gaat het wanneer je zowel het origineel als het resultaat in de ramdisk plaatst.

  • Tim 22 juni 2011 om 10:08

    @Richard: helaas heb ik ‘maar’ 8gb geheugen, dat wordt dus een beetje krap…

  • Génicus 22 juni 2011 om 10:29

    Als je een video converteert/rendered zal je cpu de bottleneck zijn en niet je schijf

  • Nils Breunese 22 juni 2011 om 10:45

    Bedenk dat gegevens op een RAM-disk niet bewaard worden als je de computer afsluit, dus je OS op een RAM-disk zetten lijkt me niet zo handig.

  • Eddy 22 juni 2011 om 13:02

    Na een reboot ben je alle info in die ramdisk weer kwijt… Dus OS erop kan niet.

    Wat wel heel mooi werkt is de cache van firefox of safari erop te zetten. Dit kan prima en je hebt nog nooit zo snel gesurfd. Alleen het werkt bij mij nooit zo goed omdat symlink niet goed opgepakt wordt door safari… hier zou nog wel eens een goeie tip over mogen komen :)

  • Sander 22 juni 2011 om 13:58

    Zojuist even getest: 3 x MP4 geconverteerd naar ProRes LT. Harde schijf = 00:01:03. Via de ramdisk: 00:00:50. Scheelt dus 13 seconden.

  • Mausy 22 juni 2011 om 17:43

    De grootte die je voor de RAMdisk kiest is overigens niet gelimiteerd door de hoeveelheid fysieke RAM die je hebt geinstalleerd. OSX swapt het teveel gewoon weer naar disk.
    Vette tip. Kan ik zeker iets mee. Bedankt!

  • Bom 22 juni 2011 om 20:22

    Zijn er ook native apps die hier iets mee kunnen? Kan ik iets van tijdelijke OS X systeembestanden hier naar laten schrijven? Misschien handig om daar iets meer over uit te leggen?

    Zoals het voorbeeld van Safari hierboven…

  • Stephan 23 juni 2011 om 20:08

    Je kunt wellicht een Apple script schrijven die bij login de ramdisk aanmaakt.
    Misschien dat Safari hem dan blijft zien.

    Er is ook een manier om hem te verbergen. Dmv setfile

  • Kris 10 juli 2011 om 11:28

    is dit ev ook zinvol als maar 4Gb RAM hebt?

  • Daan Lemmen 19 november 2011 om 21:15

    Je kan met Automator er een programmaatje van maken. Super handig!

Een reactie toevoegen: