A Smart File System (röviden: SFS; néhol: Smart Filesystem) egy Amiga számítógépek, illetve AmigaOS-szerű operációs rendszerek számára kifejlesztett naplózó fájlrendszer. A fejlesztés az amigák gyári fájlrendszereihez (pl. FFS) képest bővebb funkcionalitást, jobb teljesítményt, skálázhatóságot és adatintegritást célozta. A szoftver forráskódja nyilvános LGPLv2 licenc alatt.
Hardver-követelmények Az SFS működéséhez minimum 100 KB memória és legalább Motorola 68020 vagy azzal kompatibilis processzor szükséges.
Működés Az SFS 512 bájttól (29) 32768-ig (215) terjedő blokkméretet használhat, mellyel maximálisan 128 GB partíció kezelhető. Az amigák eredeti fájlrendszeréhez (OFS), illetve annak továbbfejlesztett változatához (FFS) képest jobb teljesítményt nyújt, illetve a fájlrendszerben fellépő hiba esetén nem igényel hosszadalmas "validálást". Ezt több programkönyvtár egyetlen blokkba, illetve a metaadatok klaszterekbe szervezésével érték el. A fájlrendszerben meglévő üres területek, illetve töredezettség nyomonkövetésére az SFS bittérképet alkalmaz a B-fa struktúrához hasonló B+fa elrendezésben.
Az SFS a fájlrendszer és az abban lévő adatok integritása érdekében a végrehajtott műveleteket (tranzakciókat) bizonyos időközönként naplózza (loggolja). Ebből kifolyólag, rendszerösszeomlás esetén a következő rendszerindulás és a fájlrendszer felcsatolása (mountolása) után nyoma marad a korábbi befejezetlen műveletnek és így lehetséges visszaállítani a rendszert az utolsó ismert, konzisztens állapotába. Teljesítmény okokból a teljes integritás csak a metaadatokra biztosított, az adatfájlok tényleges tartalma továbbra is sérülhet egy félbeszakadt írási folyamat során, de ez az OFS és FFS fájlrendszerekhez képest sokkal ritkábban fordul elő.
Az SFS a fentieken túl — a többi Amiga fájlrendszertől eltérően — képes a menet közbeni töredezettség-mentesítésre, még zárolt állományok esetén is. Ez a folyamat szinte teljesen észrevétlenül zajlik (kivéve azt a tárterületet, ahol éppen dolgozik) és bármikor leállítható. A metadatok és a normál adatok integritása egyaránt biztosított. A fájlrendszer akár teljes állományokat is áthelyezhet a töredezettség-mentesítés során.
A fájlrendszer a törölt fájlokat egy elkülönített könyvtárban tárolja az esetleges helyreállítás érdekében.
Alkalmazásai Az SFS fájlrendszer teljes értékű használatát a következő operációs rendszerek támogatják:
AmigaOS 3.x: A Fast Filesystem (FFS) mellett, illetve helyett használható az SFS gyorsabb alternatívaként. AmigaOS 4.x: A Fast Filesystem 2 (FFS2) mellett, illetve helyett használható az SFS gyorsabb alternatívaként. MorphOS: Az operációs rendszer alapbeállítású fájlrendszere az SFS. AROS: Az operációs rendszer alapbeállítású fájlrendszere az SFS.
Egyéb szoftvertámogatás:
GNU GRUB: A GRUB rendszertöltő alkalmazás natívan támogatja az SFS fájlrendszert. UEFI: Léteznek szabad (free) illesztő-programok UEFI-ből történő használatra.
Történet Az SFS fejlesztése 1993-ban kezdődött. John Hendrikx először assembly nyelven kezdett fejleszteni egy fájlrendszert, mely megfelelően működött, de a növekvő komplexitás és néhány tervezési hiba folytán sosem került kiadásra. E helyett 1996-ban C programozási nyelven kezdett bele újból. Ez esetben Marcel Offermans közreműködésével készült el a szoftverterv (design).
Az alapok lefektetése után az érdemi fejlesztés 1997 során zajlott, majd 1998. augusztus 4-én adta ki a fájlrendszer első, 0.67 béta (freeware) változatát. Az intenzív fejlesztésnek köszönhetően 1998 november 9-ére az 1.13-as verziót, majd egy nagyobb kihagyás után 1999. március 28-án az 1.58-as változatot érte el a szoftver. Az addig hiányzó fájlrendszer javító, illetve fájl-helyreállító funkciót Jörg Strohmayer töltötte be SFSsalv nevű felhasználói programjával.
Hendrikx 2000-ben felhagyott a fejlesztéssel és elhagyva az Amiga-szcénát, közzétette az SFS forráskódját. A fájlrendszer fejlesztése ezután ágakra (forkokra) bomlott a támogatott operációs rendszerek szerint, így létezik AmigaOS 3, AmigaOS 4, MorphOS, illetve AROS forkja. A forkoknak eltérő jellemzőik vannak, de kompatibilisek egymással. Ezek mellett létezik SFS Linux driver is (olvasás; írás csak kísérleti jelleggel), de ennek fejlesztése megakadt 2008 végén.
Az SFS egyike a máig használt független fejlesztésű Amiga fájlrendszereknek.
Jegyzetek
Kapcsolódó szócikkek Fájlrendszerek listája Amiga Old File System (OFS) Amiga Fast File System (FFS) Professional File System (PFS3) Rigid Disk Block (RDB)
További információk Smart Filesystem, legfrissebb letölthető változat
John Hendrikx archivált SFS oldala Műszaki dokumentáció Jörg Strohmayer archivált SFS oldala
Kategória:Amiga Kategória:MorphOS-szoftverek Kategória:AROS szoftverek Kategória:Fájlrendszerek