Tmpfs är temporär fillagring i många Unix-liknande operativsystem. Designad för att montera ett filsystem , men ligger i RAM istället för en fysisk disk. En sådan konstruktion liknar en RAM-disk .
All data i Tmpfs är tillfällig, i den meningen att ingen fil kommer att skapas på hårddisken . Efter en omstart kommer all data som finns i Tmpfs att gå förlorad.
Minnet som används för Tmpfs varierar i storlek beroende på antalet filer som tilldelats det och kan utökas med swap . Många Unix - distributioner använder Tmpfs som standard för /tmp- placering eller minnesdelning. Detta kan ses i utgången av kommandot df , till exempel:
Filsystem Storlek använd Tillgänglig användning% monterad på tmpfs 256M 688K 256M 1% /tmpSunOS 4 inkluderade tidiga utvecklingar av Tmpfs; det dök upp för första gången i SunOS 4.0 i slutet av 1987, tillsammans med en ny ortogonal adressrymdshantering som gör att alla objekt kan placeras i minnet. [1] [2]
På Solaris var /tmp värd i Tmpfs, som blev standard i Solaris 2.1, som släpptes i november 1994. Utdata från kommandot df på Solaris visade swap som filsystem för valfri Tmpfs-partition:
# df -k Filsystem kbyte använd tillgänglig kapacitet Monterad på swap 601592 0 601592 0% /tmp/testTmpfs har stöds av Linux sedan version 2.4. [3] Tmpfs (även känd som shmfs ) skiljer sig från Linux RAM-disken genom att dynamiskt allokera minne och flytta oanvända sidor för att byta . RAMfs, å andra sidan, använder inte swap (detta kan vara både en fördel och en nackdel). Dessutom ändrade inte MFS , och vissa äldre versioner av RAMfs, sin storlek dynamiskt, utan förblev samma storlek som de monterades.
Använda Tmpfs till exempel:
montera -t tmpfs -o storlek=1G,nr_inodes=10k,mode=0700 tmpfs /mellanslagsom kommer att växa till 1 GiB med 10240 inoder i RAM/swap och endast tillgängligt för ägaren av katalogen /space . Den maximala filsystemets storlek kan ändras direkt, till exempel:
mount -o remount,size=2G /spaceTmpfs kan innehålla alla kataloger som lagrar temporär data som raderas när systemet startas om: /var/lock, /var/run, /tmp, etc. Dessutom för att minska antalet diskoperationer (för att maximera systemets prestanda eller spara resurs-SSD:er) Tmpfs innehåller ibland kataloger som vanligtvis lagrar data mellan omstarter, såsom /var/tmp (denna katalog rensas ofta, även om det rekommenderas att inte göra detta [4] ) eller cachning av kataloger för vissa program (internetwebbläsare ).
Tmpfs implementerades i NetBSD version 4.0 den 10 september 2005 [5] . FreeBSD 7.0 introducerade Tmpfs portade från NetBSD . [6] DragonFly BSD , sedan version 2.5.1, har också en portad implementering av Tmpfs från NetBSD .
Windows har en ungefärlig analog av Tmpfs i form av "temporära filer". Filer som skapats med attributet FILE_ATTRIBUTE_TEMPORARY och flaggan FILE_FLAG_DELETE_ON_CLOSE placeras i RAM och skrivs till hårddisken endast om systemet får slut på RAM. Således liknar "temporära filer" Tmpfs, förutom att när minnet är slut skrivs de till den sökväg som angavs när de skapades, och inte till växlingsfilen. Denna metod används ofta på servrar med TransmitFile för att förbereda innehåll och buffra det innan det skickas till klienten.
Filsystem ( lista , jämförelse ) | |||||||
---|---|---|---|---|---|---|---|
Disk |
| ||||||
Distribuerat (nätverk) | |||||||
Särskild |
|