Lokirakenteinen tiedostojärjestelmä

Lokirakenteinen tiedostojärjestelmä tarkoittaa tiedostojärjestelmää, joka käyttää massamuistia rengaspuskurina ja uudet lohkot aina kirjoitetaan loppuun.[1][2] Rengaspuskurin tapaan kirjoittaminen on nopeampaa mutta lukeminen on hitaampaa.[2] Lokirakenteisia tiedostojärjestelmiä käytetään usein flash-muistin kanssa koska ne tekevät luontaisesti kulutuksen tasaamista.[2][3]

Menetelmä muokkaa

Lokirakenteinen tiedostojärjestelmä kerää kirjoitettavan tiedon segmentiksi tietokoneen muistiin mukaan lukien tiedostojen metatiedon joka kirjoitetaan kokonaisuudessaan kerralla yhtenä operaationa.[1] Lokirakenteinen tiedostojärjestelmä ei ylikirjoita tallennettua tietoa vaan kirjoittaa aina vapaaseen sijaintiin.[1]

Toteutukset muokkaa

Lokirakenteisen tiedostojärjestelmän kehittivät John Ousterhout ja Mendel Rosenblum Berkeleyssä.[1] Heidän prototyyppinsä oli Sprite LFS.[4]

Margo Seltzerin BSD:lle kehittämä BSD-LFS erosi prototyypistä joiltakin osin.[5][6] Myöhempiä ovat muun muassa Linuxille on kehitetty NILFS (lyhenne sanoista New Implementation of a Log-structured Filesystem).[2][7][8]

Muita tämän tyyppisiä ovat muun muassa NOVA, joka on suunniteltu haihtuvan ja haihtumattoman muistin yhdistelmille.[9]

Lähteet muokkaa

  1. a b c d Arpaci-Dusseau, Remzi H. & Arpaci-Dusseau, Andrea C.: Log-structured File Systems pages.cs.wisc.edu. Viitattu 16.2.2017.
  2. a b c d btrfs and NILFS lwn.net. Viitattu 19.4.2020. (englanniksi)
  3. Don’t stack your Log on my Log (PDF) usenix.org. Viitattu 12.7.2020. (englanniksi)
  4. The Design and Implementation of a Log-Structured File System (PDF) people.eecs.berkeley.edu. Viitattu 12.7.2020. (englanniksi)
  5. LFS hhhh.org. Viitattu 12.7.2020. (englanniksi)
  6. An Implementation of a Log-Structured File System for UNIX (PDF) citeseerx.ist.psu.edu. Viitattu 12.7.2020. (englanniksi)
  7. NILFS version 2 now available lwn.net. Viitattu 19.4.2020. (englanniksi)
  8. the Nilfs version 1: overview (PDF) nilfs.sourceforge.io. Viitattu 19.4.2020. (englanniksi)
  9. NOVA: A Log-structured File System for Hybrid Volatile/Non-volatile Main Memories (PDF) usenix.org. Viitattu 12.7.2020. (englanniksi)