přejít na obsah přejít na navigaci

Linux E X P R E S, Ramdisk: Paměť místo disku

Ramdisk: Paměť místo disku

memory.jpg

Linux je přímo proslulý svým přístupem k operační paměti počítače. Při každém přístupu k souborům či programům dochází ke kešování nahrávaných souborů, soubory jsou při něm uloženy do paměti a jejich příští spuštění je tak mnohem rychlejší. V následujícím textu se podíváme na použití tzv. ramdisku, který vám umožní pracovat s pamětí jako s diskovým prostorem.


Instalace a nastavení

O instalaci se postará linuxové jádro. Pro kontrolu se můžete podívat na to, jaké "ramdisky" máte k dispozici.

ls /dev/ram*

A jaká je jejich velikost, např. pomocí příkazu:

fdisk -l /dev/ram0

K ramdisku přitom přistupujeme jako k určitému obrazu části operační paměti. Je to disk, který je fyzicky umístěn právě v operační paměti počítače. Velikost ramdisku je přednastavena jádrem operačního systému a je ji možno měnit pouze nastavením příslušného parametru předávaného linuxovému jádru právě při startu počítače.

V operačním systému Debian GNU/Linux je velikost ramdisku nastavena na 8MB.

Jak se tato změna provádí? Pokud používáte dnes nejpoužívanější zavaděč GRUB, provedete změnu velikosti ramdisku (lépe řečeno všech ramdisků) přidáním parametru ramdisk_size následovaným požadovanou velikostí jádru operačního systému. Pro nastavení velikosti ramdisku na 256 MB bude odpovídající řádek v souboru /boot/grub/menu.lst vypadat třeba takto:

kernel		/boot/vmlinuz-2.6.30-1-amd64 root=/dev/sda1 ro ramdisk_size=256000

Po restartu počítače se nastaví všechna zařízení /dev/ram* na velikost 256MB.

Ilustrační obrázek, zdroj wikipedia.orgIlustrační obrázek, zdroj wikipedia.org

Formátování a připojení

Formátování ramdisku se provádí klasicky, např. na ext3 zadáním příkazu:

mkfs.ext3 /dev/ram0

A jeho připojení pak zcela standardně:

mount /dev/ram0 /mnt/disk

Je to zajímavé, ale při formátování ramdisku mi při jeho připojení fungoval souborový systém ext2 resp. žurnálovací ext3, ale souborový systém JFS se později nepodařilo připojit. Další souborové systémy jsem nezkoušel.

Nevýhody

Po odpojení ramdisku zůstává oblast v paměti stále využita a tak snad jedinou možností, jak uvolnit paměť obsazenou právě pomocí ramdisku je restartovat počítač. S ramdiskem tedy pracujte opatrně a s rozmyslem.

Protože jsou data umístěna v operační paměti počítače, pak, pokud nepoužíváte nějakou tu záložní baterii nebo UPS, v případě selhání dodávek elektrické energie přijdete i o obsah ramdisku. Proto byste do něj měli umísťovat raději data, která se nemění (třeba statickou webovou galerii) než důležitou databázi s účetnictvím.

Výhody

Zrychlení. Data jsou uložena v operační paměti a tak je přístup k nim opravdu rychlý. S ramdiskem jsem se prakticky setkal např. v systému HAVP, což je antivirová proxy, tedy proxy testující soubory stahované z internetu na přítomnost škodlivých virů. Tady je potřeba opravdu rychle rozhodnout o tom, zda je či není soubor infikován.

K čemu ramdisk?

Má smysl používat ramdisk, nebo ne? I když operační systém provádí kešování v průběhu práce s počítačem za nás, někdy je třeba něco "předkešovat" nebo naopak předem připravit na intenzivní nápor, který bude na aplikaci nebo data kladen. A přesně to vám umožní ramdisk, pracovat s daty ne na disku počítače, ale přímo v operační paměti. O tom, že operační paměť počítače je výrazně rychlejší než paměť disková, snad nepochybuje nikdo.

Nahoru

Odkazy

Příspěvky

Ramdisk: Paměť místo disku
MOJE 10. 09. 2009, 08:36:40
Odpovědět  Odkaz 
Jestli ono nebude lepsi misto pevneho ramdisku pouzit tmpfs, kde je daleko mene omezeni a je navrzene presne na to, k cemu autor clanku musel ohybat ramdisk.
Martin Šín Re:Ramdisk: Paměť místo disku
Martin Šín 10. 09. 2009, 09:19:33
Odpovědět  Odkaz 
Vše má své výhody a omezení, tak jen záleží na tom co si nakonec vyberete. Pěkné povídání o ramfs a tmpfs najdete zde: http://www.thegeekstuff.com/2008/11/overview-of-ramfs-and-tmpfs-on-linux/ . Ramdisk vytváří disk, který se také tak více či méně chová. Ramfs a tmpfs jsou proti tomu okénka do operační paměti, tmpfs vám navíc může vletět do swapu, pokud ho používáte.
Ramdisk: Paměť místo disku
Firzen 10. 09. 2009, 14:16:10
Odpovědět  Odkaz 
Nechci rýpat, ale nemělo by být místo 256000MiB spíš 262144MiB? :-)
Martin Šín Re:Ramdisk: Paměť místo disku
Martin Šín 10. 09. 2009, 14:41:02
Odpovědět  Odkaz 
Nemělo.
fdisk -l /dev/ram0

Disk /dev/ram0: 262 MB, 262144000 bytes
255 heads, 63 sectors/track, 31 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x00000000
Re:Ramdisk: Paměť místo disku
Jakub L 10. 09. 2009, 17:19:50
Odpovědět  Odkaz 
No, má to správně...
256000 = 256 MB

To co jste napsal vy, je 256MiB

Více viz: http://cs.wikipedia.org/wiki/MiB#N.C3.A1sobky_a_u.C5.BE.C3.ADvan.C3.A9_p.C5.99edpony
Ramdisk: Paměť místo disku
Habo 21. 02. 2010, 15:05:52
Odpovědět  Odkaz 
Hmm v Ubuntu (a mozno aj v inych distrach) je akysi predpripraveny RAMdisk - najdete ho v /dev/shm prava su rovnake ako /tmp takze tam kludne mozete zapisovat, par krat som to uz pouzil...
Re: Ramdisk: Paměť místo disku
teeo 5. 12. 2012, 01:18:06
Odpovědět  Odkaz 
No tak to je naprosta bomba, diky..

Přidat názor

Nejsou podporovány žádné značky, komentáře jsou jen čistě textové. Více o diskuzích a pravidlech najdete v nápovědě.
Diskuzi můžete sledovat pomocí RSS kanálu rss



 
 

Top články z OpenOffice.cz