Tmpfs

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2018. július 1-jén felülvizsgált verziótól ; az ellenőrzések 4 szerkesztést igényelnek .

A Tmpfs  ideiglenes fájltároló számos Unix-szerű operációs rendszerben. Fájlrendszer csatlakoztatására tervezték , de fizikai lemez helyett a RAM -ban található. Az ilyen felépítés hasonló a RAM lemezhez .

Szemantika

A Tmpfs összes adata ideiglenes, abban az értelemben, hogy nem jön létre fájl a merevlemezen . Újraindítás után a Tmpfs-ben tárolt összes adat elveszik.

A Tmpfs-hez használt memória mérete a hozzárendelt fájlok számától függően változik, és swap -tal bővíthető . Sok Unix disztribúció alapértelmezés szerint Tmpfs-t használ a /tmp elhelyezéshez vagy a memóriamegosztáshoz. Ez látható a df parancs kimenetében , például:

Fájlrendszer Használt méret Elérhetőség Felhasználás % Felszerelve tmpfs 256M 688K 256M 1% /tmp

Megvalósítások

SunOS/Solaris

A SunOS 4 tartalmazta a Tmpfs korai fejlesztéseit; először a SunOS 4.0-ban jelent meg 1987 végén, egy új ortogonális címtér-kezeléssel együtt, amely lehetővé teszi bármely objektum memóriába helyezését. [1] [2]

A Solaris rendszeren a /tmp a Tmpfs-ben volt tárolva, amely az 1994 novemberében kiadott Solaris 2.1-ben szabványossá vált. A Solaris df parancsának kimenete a swap -ot bármely Tmpfs partíció fájlrendszereként mutatta :

# df -k A fájlrendszer felhasznált kbyte kapacitása Fel van szerelve csere 601592 0 601592 0% /tmp/teszt

Linux

A Tmpfs-t a Linux a 2.4-es verzió óta támogatja. [3] A Tmpfs (más néven shmfs ) abban különbözik a Linux RAM -lemezétől, hogy dinamikusan lefoglalja a memóriát és áthelyezi a nem használt oldalakat a swapba . A RAMfs viszont nem használ swapot (ez lehet előny és hátrány is). Ráadásul az MFS és néhány régebbi RAMf-verzió sem változtatta meg dinamikusan a méretét, hanem a felhelyezésükkel megegyező méretű maradt.

Például a Tmpfs használata:

mount -t tmpfs -o size=1G,nr_inodes=10k,mode=0700tmpfs /space

amely 1 GiB -ra nő 10240 inode-val a RAM/swap-ban, és csak a /space könyvtár tulajdonosa számára érhető el . A fájlrendszer maximális mérete menet közben módosítható, például:

mount -o remount,size=2G /space

A Tmpfs tartalmazhat bármilyen ideiglenes adatokat tároló könyvtárat, amely a rendszer újraindításakor törlődik: /var/lock, /var/run, /tmp stb. Ezen kívül a lemezműveletek számának csökkentése érdekében (a rendszer teljesítményének maximalizálása érdekében vagy mentse az erőforrás-SSD-ket) A Tmpfs néha tartalmaz olyan könyvtárakat, amelyek általában adatokat tárolnak az újraindítások között, mint például a /var/tmp (ez a könyvtár gyakran törlődik, bár nem ajánlott ezt megtenni [4] ) vagy egyes programok gyorsítótárazott könyvtárai (internetes böngészők ).

BSD

A Tmpfs-t a NetBSD 4.0-s verziójában 2005. szeptember 10-én implementálták [5] . A FreeBSD 7.0 bevezette a NetBSD -ről portolt Tmpfs-t . [6] A DragonFly BSD a 2.5.1-es verzió óta rendelkezik a Tmpfs portolt megvalósításával a NetBSD -ről is.

Microsoft Windows

A Windows a Tmpfs hozzávetőleges analógjával rendelkezik "ideiglenes fájlok" formájában. A FILE_ATTRIBUTE_TEMPORARY attribútummal és a FILE_FLAG_DELETE_ON_CLOSE jelzővel létrehozott fájlok a RAM -ba kerülnek, és csak akkor íródnak a merevlemezre , ha a rendszerből kifogy a RAM. Így az "ideiglenes fájlok" hasonlóak a Tmpfs-hez, azzal a különbséggel, hogy ha kifogy a memóriából, akkor a létrehozásukkor megadott elérési útra íródnak, nem pedig a swap fájlba. Ezt a módszert gyakran használják a TransmitFile kiszolgálókon a tartalom előkészítésére és pufferelésére, mielőtt elküldené az ügyfélnek.

Jegyzetek

  1. Peter Snyder. tmpfs: Virtuális memóriafájlrendszer (PDF). Letöltve: 2010. július 2. Az eredetiből archiválva : 2012. május 1..
  2. Hal L. Stern. SunOS 4.1 Performance Tuning ( GZipped PostScript). Letöltve: 2010. július 2. Az eredetiből archiválva : 2012. május 1..
  3. Daniel Robbins. Fejlett fájlrendszer-megvalósító útmutató (2001. szeptember 1.). Letöltve: 2010. július 2. Az eredetiből archiválva : 2012. május 1.. A Linuxban való megvalósítást leíró cikk
  4. Fájlrendszer-hierarchia szabvány . Letöltve: 2012. november 10. Az eredetiből archiválva : 2013. január 3..
  5. Julio M. Merino Vidal. NetBSD-SoC: Hatékony memória fájlrendszer (2006. február 24.). Letöltve: 2010. július 2. Az eredetiből archiválva : 2012. május 1..
  6. Derek Morr. FreeBSD tmpfs kézikönyv (2008. december 2.). Letöltve: 2010. július 2. Az eredetiből archiválva : 2012. május 1..

Linkek