maanantai 16. kesäkuuta 2014

RAMFS vs TMPFS

Ramfs ja Tmpfs (Unix) tiedosto systeemi.
Väliaikaisia tiedostoja jotka ovat tietokoneen kiintolevyn sijaan tietokoneen keskusmuistilla (ram muistilla), ja niitä käytetään aivan samalla lailla kuin muitakin tiedostoja.
Normaaliin kiintolevyyn verrattuna tiedostojen luku ja kirjoitus selvästi nopeutuu (jos liikutetaan paljon dataa) näitä käyttäessä etenkin jos kiintolevynä on esim. SD kortti. SD muistille kirjoittamista kannattaa muutenkin säästellä sen rajallisen ominaisuuden takia.

Kuitenkin nämä molemmat (ramfs ja tmpfs) muistit "haihtuu” tietokoneen sammuttaessa, joten tässä suhteessa ne ei voi korvata massamuistille kirjoittamista, vaan ne on ennemminkin tiedon väliaikaiseen varastoimiseen. Millä tapaa sitten ramfs ja tmpfs sitten eroaa toisistaan, jos kerran molemmat käyttää tietokoneen keskusmuistia ? Lähinnä siinä että tmpfs ei anna kirjoittaa ennalta määrättyä muistin koon yli, vaan antaa tästä virheilmoituksen, lisäksi tmpfs käyttää swap:pia …
Ramfs voi siis kirjoitaa vaikka koko keskusmuistin täyteen, tämän mukaan olisi siis parempi käyttää tmpfs.

Tehdään aluksi ramlevy, nimetään se esim. ”ramdisk”



 # mkdir -p /mnt/ramdisk

TMPFS luodaan

# mount -t tmpfs -o size=10m tmpfs /mnt/ramdisk

RAMFS luodaan näin

# mount -t ramfs -o size=10m ramfs /mnt/ramdisk

Nämä eroaa siis lähinnä mount käskyllä, (esimerkissä koko on 10 megaa)

mount -t [TYPE] -o size=[SIZE] [FSTYPE] [MOUNTPOINT]

Sitten kokeilemaan, aluksi kirjoitetaan vaikka 'hello' tiedostoon note

echo 'hello' > /mnt/ramdisk/note

ja luetaan

cat /mnt/ramdisk/note

***
Koska mounttaus joudutaan tekemään joka kerta kun tietokone käynnistetään,
kannatta tiedostoon  /etc/fstab lisätä rivi (alla joitakin esimerkkejä)

tmpfs  /mnt/ramdisk tmpfs size=10M 0 0
tai
tmpfs  /mnt/ramdisk tmpfs size=10M,mode=0777 0 0
tai
tmpfs  /mnt/ramdisk tmpfs nodev,nosuid,noexec,nodiratime,size=10M  0 0

Ei kommentteja:

Lähetä kommentti