neděle 13. září 2009

Hledal jsem ramdisk, našel /dev/shm/


Při psaní skriptů jsem narazil na potřebu uložit někde soubory, které si pak jiný program vyzvedne. Někdy je to potřeba dělat poměrně často a paměť RAM je pro tuto činnost daleko vhodnější, než pevný disk.  Na netboocích, používajících  laciné SSD disky, má každý neprovedený zápis na disk ještě větší hodnotu. Proto jsem hledal jak zprovoznit v Ubuntu ramdisk, kam bych dočasné soubory odkládal. Při té příležitosti jsem zjistil, že linuxové systémy provozují již v základu složku /dev/shm/, s virtuálním souborovým systémem tmpfs, pro sdílení dat mezi aplikacemi, jejíž obsah se ukládá právě do paměti RAM. Standardně je její maximální velikost rovna polovině RAM, ale aktuální velikost se dynamicky mění podle obsahu. Pokud se RAM přeplní, přeteče obsah do SWAPu, pokud nějaký je, čímž se ta výhoda, o kterou nám jde může ztratit - to se u ramdisku nestane. Složka je pro uživatele běžně přístupná pro čtení i zápis a tak je to nejjednodušší způsob, jak zrychlit práci s dočasnými soubory. Samozřejmě do té doby, než se začne swapovat. O něco více můžete nalézt třeba zde, v češtině jsem toho zatím moc nenašel.

Zajímavý článek, který s tématem souvisí je na Linuxexpresu.