A kifejezés fájlrendszer (rövidítve „ FS ” a File System , néha fájlrendszer angolul) jelöli kétértelműen:
Általánosságban elmondható, hogy a fájlrendszer vagy a fájlkezelő rendszer (FMS) az információk tárolásának és fájlokba rendezésének egyik módja az úgynevezett szoftvertervezési , másodlagos memóriákban (a hardveres számítógépek esetében tömeges memória , például merevlemez , SSD lemez , CD-ROM , USB kulcs , hajlékonylemez stb.). Az ilyen fájlkezelés lehetővé teszi nagy mennyiségű adat feldolgozását és tárolását , valamint azok megosztását több számítógépes program között . A felhasználónak elvont nézetet kínál adataiból, és lehetővé teszi, hogy megtalálja azokat egy útvonalról.
Vannak más módon megszervezni adatok , például adatbázisok (különösen relációs adatbázis ), és indexelt fájlok .
A perforált kártya fokozatosan eltűnt 1970 I / O egységek mágnesszalag és floppy lemezek a „8 inch” méret és hatékonyabb tömeges memóriák meg .
1964-ben a DEC vállalat DECtape rendszere lehetővé tette az adatok mágneses szalagokra történő rögzítését lyukkártyák helyett .
1968-ban a GEORGE 3 fel lett szerelve egy fájl tárolóval ( fájl tárolóval ), amely a fájlokat egy fa struktúrában rögzítette a Multics ötletében . A rendszer minden felhasználójának volt egy felhasználói ( otthoni ) mappája , ahány almappával volt szükség. A felhasználói mappák közvetlenül vagy egy elérési útvonalon érhetők el, például :: MASTER.USERS.COMPSCI, JOHN . A biztonság érdekében beléptető listák rendszerét használták, amely lehetővé tette a hozzáférés konfigurálását felhasználó és csoport szerint. A fájlrendszer két szinten szerveződött: az egyik lemezen, a másik mágnesszalagon.
1972-ben az ODS-1 lapos fájlrendszer volt (amelyet az RSX-11 OS használt). Ezt később ODS-2 és ODS-5 váltja fel.
1974-ben megjelent a CP / M fájlrendszer. Ez az operációs rendszer elmenti a fájlokat a floppy lemezeket egy meghatározott logikai szervezet (amely nem veszi át az MS-DOS), és töltse floppy lemezek, amíg teljesen tele van.
A CP / M képes kezelni a merevlemezeket is (a valóságban, mivel a BIOS "nyitott" és egyértelműen le van írva a dokumentációban, amelyet a Digital Research adott néhány szoftverével együtt, ezért bármely adott CP / M rendszert hozzá lehet igazítani az elérhetőekhez tömeges memória - és a rendelkezésre álló perifériák).
Minden fájlnak van neve és kiterjesztése (pontosabban a szintaxis: <fájlnév (maximum 8 bájt)>. <Kiterjesztés (maximum 3 bájt)>).
1978-ban megjelent az Apple első fájlrendszere.
1980-ban megjelent a FAT12 rendszer. A FAT16 rendszer 1984-ben.
A BIOS paraméterblokk (BPB) a PC DOS 2.0-val kerül bevezetésre. Ez a kiadás bevezeti a csak olvasható, archív , kötetcímkés és mappaattribútum- biteket is a mappák rangsorolásához.
1988-ban az ISO 9660 (ISO szabvány) határozta meg a CD-ROM-okon használt fájlrendszert.
1993-ban megjelent az NTFS 1.0-s rendszer, amelyet a Windows használt.
1994-ben és 1995 - ben elkészült a CD-ROM fájlrendszere : Rock Ridge és Joliet .
Fájlrendszer | Feltaláló | A bevezetés éve |
Kezdeti operációs rendszer | Engedély |
---|---|---|---|---|
DECtape | DECEMBER | 1964 | PDP-6 monitor | |
D szint | DECEMBER | 1968 | TOPS-10 | |
George3 | IKT (később ICL) | 1968 | George 3 | |
ODS-1 | DECEMBER | 1972 | RSX-11 | |
RT-11 fájlrendszer | DECEMBER | 1973 | RT-11 | |
DOS ( GEC ) | GEC | 1973 | Operációs rendszer | |
CP / M fájlrendszer | Gary Kildall | 1974 | CP / M | |
V6FS | Bell Labs | 1975 | Unix 6. verzió | |
OS4000 | GEC | 1977 | OS4000 | |
FAT (8 bites) | Marc McDonald , Microsoft | 1977 | Microsoft önálló lemez BASIC-80 | |
DOS 3.x | Apple számítógép | 1978 | Apple DOS | |
Pascal | Apple számítógép | 1978 | Apple Pascal | |
CBM DOS | Commodore | 1978 | BASIC Microsoft (a CBM PET-hez) | |
V7FS | Bell Labs | 1979 | 7. verzió Unix | |
ODS-2 | DECEMBER | 1979 | OpenVMS | |
FAT12 | Tim Paterson , Seattle Computer Products | 1980 | QDOS , 86-DOS | |
AFS | Carnegie Mellon Egyetem | 1982 | Többplatformos MultoOS | |
DFS | Acorn Computers Ltd. | 1982 | Makk BBC Micro MOS | |
ADFS | Acorn Computers Ltd. | 1983 | Acorn Electron (később Arthur RISC OS ) | |
FFS | Kirk mckusick | 1983 | 4.2BSD | |
ProDOS | Apple számítógép | 1983 | ProDOS 8 | |
MFS | Apple számítógép | 1984 | Mac operációs rendszer | |
FAT16 | Microsoft , IBM | 1984 | PC DOS 3.0 / MS-DOS 3.0 | |
Elektronika BK szalagos formátum | NPO „Tudományos központ” (jelenleg Sitronics ) | 1985 | Vilnius Basic , BK monitor program | |
HFS | Apple számítógép | 1985 | Mac operációs rendszer | |
Amiga OFS | Metacomco a Commodore számára | 1985 | AmigaOS | |
Magas Sierra | Ecma International | 1985 | MS-DOS , Mac OS | |
NWFS | Novell | 1985 | NetWare 286 | |
FAT16B | Compaq | 1987 | Compaq MS-DOS 3.31, DR DOS 3.31 | |
MINIX V1 FS | Andrew S. Tanenbaum | 1987 | MINIX 1.0 | |
Amiga FFS | Commodore | 1988 | AmigaOS 1.3 | |
HPFS | Az IBM és a Microsoft | 1988 | OS / 2 | |
ISO 9660: 1988 | Ecma International , Microsoft | 1988 | MS-DOS , Mac OS és AmigaOS | |
JFS1 | IBM | 1990 | AIX | |
VxFS | VERITAS (jelenleg Symantec ) | 1991 | a Unix System Laboratories , a HP-UX számára kifejlesztve | |
ext | Remy Card | 1992 | Linux | |
WAFL | NetApp | 1992 | Adatok ONTAP | |
MINIX V2 FS | Andrew S. Tanenbaum | 1992 | MINIX 1.6 és 2.0 | |
AdvFS | DECEMBER | 1993 | Digital Unix | |
NTFS 1.0 verzió | Microsoft , Tom Miller , Gary Kimura | 1993 | Windows NT 3.1 | Tulajdonos |
LFS | Margo seltzer | 1993 | Berkeley Sprite | |
ext2 | Remy Card | 1993 | Linux , Hurd | |
UFS1 | Kirk mckusick | 1994 | 4.4BSD | |
XFS | SGI | 1994 | IRIX | |
HFS (hierarchikus fájlrendszer) | IBM | 1994 | MVS / ESA (most z / OS ) | |
Sziklagerinc | Young Minds Inc. | 1994 | Linux , Mac OS , AmigaOS és FreeBSD | |
Joliet ("CDFS") | Microsoft | 1995 | Microsoft Windows , Linux , Mac OS és FreeBSD | |
PFS | Michiel Pelt | 1996 | AmigaOS | |
Romeo | Adaptec | 1996 | Microsoft Windows | |
UDF | ISO / ECMA / OSTA | 1995 | - | |
FAT32 | Microsoft | 1996 | Windows 95b | |
QFS | LSC Inc., Sun Microsystems | 1996 | Solaris | |
GPFS | IBM | 1996 | AIX , Linux , Windows | |
Legyen File System | Be Inc. , D. Giampaolo , C. Meurillon | 1996 | BeOS , HaikuOS | |
HFS Plus | Apple számítógép | 1998 | Mac OS 8.1 | |
NSS | Novell | 1998 | NetWare 5 | |
PolyServe fájlrendszer (PSFS) | PolyServe | 1998 | Windows , Linux | |
ODS-5 | DECEMBER | 1998 | OpenVMS 7.2 | |
SFS | John hendrikx | 1998 | AmigaOS , AROS , MorphOS | |
ext3 | Stephen tweedie | 1999 | Linux | |
ISO 9660: 1999 | Ecma International , Microsoft | 1999 | Microsoft Windows , Linux , Mac OS X , FreeBSD és AmigaOS | |
JFS | IBM | 1999 | OS / 2 Warp Server e-üzlethez | |
GFS | Sistina ( Red Hat ) | 2000 | Linux | |
Melio FS | Sanbolikus | 2001 | ablakok | |
NTFS 3.1-es verzió | Microsoft | 2001 | Windows XP | Tulajdonos |
ReiserFS | Namesys | 2001 | Linux | |
zFS | IBM | 2001 | z / OS (backported OS / 390-re ) | |
FATX | Microsoft | 2002 | Xbox | |
UFS2 | Kirk mckusick | 2002 | FreeBSD 5.0 | |
Csillár | Fürt fájlrendszerek (később Oracle Corporation ) | 2002 | Linux | |
OCFS | Oracle Corporation | 2002 | Linux | |
VMFS2 | VMware | 2002 | VMware ESX Server 2.0 | |
ext3cow | Zachary Peterson | 2003 | Linux | |
Kövület | Bell Labs | 2003 | 9. terv a Bell Labs 4-től | |
Google fájlrendszer | 2003 | Linux | ||
PramFS | MontaVista | 2003 | Linux | |
Bizalom | Datalight | 2003 | Windows CE , VxWorks , egyedi portok | |
VxCFS | VERITAS (jelenleg Symantec ) | 2004 | AIX , HP-UX , Solaris , Linux | |
ZFS | Sun Microsystems | 2004 | Solaris | CDDL |
Reiser4 | Namesys | 2004 | Linux | |
Nem illékony fájlrendszer | Palm, Inc. | 2004 | Palm OS gránát | |
MINIX V3 FS | Andrew S. Tanenbaum | 2005 | MINIX 3 | |
OCFS2 | Oracle Corporation | 2005 | Linux | |
NILFS | NTT | 2005 | Linux | |
VMFS3 | VMware | 2005 | VMware ESX Server 3.0 | |
GFS2 | piros kalap | 2006 | Linux | |
ext4 | Különféle | 2006 | Linux | |
exFAT | Microsoft | 2006, 2009 | Windows CE 6.0 , Windows XP SP3 , Windows Vista SP1 | Tulajdonos |
TexFAT / TFAT | Microsoft | 2006 | Windows CE 6.0 | |
Btrfs | Oracle Corporation | 2007 | Linux | LPG |
Ceph | Sage Weil , tintatároló , Red Hat | 2007, 2012 | Linux | |
WBFS | kwiirk és Waninkoko (Wii homebrew) | 2008 | Wii | |
KALAPÁCS | Matthew dillon | 2008 | DragonFly BSD | |
Tux3 | Különféle | 2008 | Linux | |
UBIFS | Nokia segítségével a Szegedi | 2008 | Linux | |
Oracle ACFS | Oracle Corporation | 2009 | Csak Linux - Red Hat Enterprise Linux 5 és Oracle Enterprise Linux 5 | |
Reliance Nitro | Datalight | 2009 | Windows CE , Windows Mobile , VxWorks , Linux , egyedi portok | |
LTFS | IBM | 2010 | Linux , Mac OS X , tervezett Microsoft Windows , | LGPL |
IlesfayFS | Ilesfay Technology Group | 2011 | Microsoft Windows , tervezett Red Hat Enterprise Linux | |
VMFS5 | VMware | 2011 | VMware ESXi 5.0tux 3 statisztika | |
ReFS | Microsoft | 2012, 2013 | Windows Server 2012 | |
Nyakpánt fájlrendszer | Dan Luedtke | 2012 | Linux | |
F2FS | Samsung | 2012 | Linux | GPLv2 |
APFS | alma | 2016 | Mac operációs rendszer | |
Fájlrendszer | Teremtő | A bevezetés éve | Kezdeti operációs rendszer | Engedély |
A számítógépes alkalmazások által feldolgozott adatok mennyisége általában eléri a több száz gigabájtot, és egyes ipari alkalmazásoknál akár több terabájtot is elér . Ilyen mennyiségű adat nem tárolható a fő memóriában . Ezenkívül hosszú távú tartós tárolásra is szükség van, amely lehetővé teszi a feldolgozott vagy feldolgozandó adatok későbbi felhasználás céljából történő mentését. A probléma megválaszolásánál az az elv áll, hogy ezeket az adatokat másodlagos memóriákban tároljuk fájlok formájában, vagyis blokkok sorozataként (a legkisebb egység, amelyet a tárolóeszköz képes kezelni). Ezen blokkok tartalma, a bináris adatok egyszerű szekvenciája , a fájlformátumnak megfelelően értelmezhető, például karakterek, egész vagy lebegőpontos számok, gépi működési kódok, memória címek stb. A két típusú memória cseréje blokkátvitel útján történik.
A fájlrendszer célja, hogy hozzáférést biztosítson a tárolt fájlok tartalmához (a fájl megnyitása, mentése, másolása vagy áthelyezése egy másik helyre, vagy törlés) az útvonalukról, amelyet egy név áll, amelyet megelőz a fájlok listája. beágyazott könyvtárakat .
A felhasználó számára a fájlrendszert fa struktúrának tekintik: a fájlokat könyvtárakba csoportosítják (ezt a fogalmat a legtöbb operációs rendszer használja). Ezek a könyvtárak fájlokat vagy rekurzívan más könyvtárakat tartalmaznak. Tehát van egy gyökérkönyvtár és alkönyvtárak. Egy ilyen szervezet generálja a fákba rendezett könyvtárak és fájlok hierarchiáját.
Különböző módszerek léteznek a fájlnév és a tartalom társításához. A FAT fájlrendszer , egy régi MS-DOS és Windows fájlrendszer, amelyet továbbra is széles körben használnak a cserélhető adathordozókon, például az USB-meghajtókon, minden könyvtár tartalmaz egy táblázatot, amely a fájlneveket társítja a méretükhöz, valamint egy indexet, amely a fájlelosztási táblára mutat. A lemez fenntartott területe, amely minden egyes adat esetében blokkolja a fájl következő blokkjának indexét.
Abban az esetben, Unix (vagy Linux / Minix ) fájlrendszerek, fájlok és könyvtárak egyedi azonosító számát, az inode szám . Ezt a számot arra használjuk, hogy hozzáférjünk egy adatstruktúrához ( inode ), amely a fájl kivételével összes információt összegyűjt egy fájlról, kivéve a nevet, különös tekintettel az olvasáshoz, az íráshoz vagy a dátumlistákhoz való hozzáférés védelméhez, valamint a tartalom megkeresésének eszközéhez. A név az inode számhoz társított könyvtárban van tárolva. Ennek a szervezetnek az az előnye, hogy a lemezen egyetlen fájlt több néven is ismerhet a rendszer.
Az NTFS fájlrendszer szervezete még összetettebb, hasonlóan működik, mint egy adatbázis.
A fájl neve karaktersorozat, gyakran korlátozott méretű. Ma az Unicode könyvtár szinte minden karaktere általában használható, de egyes operációs rendszer szempontjából jelentőséggel bíró karakterek lehetnek tiltottak vagy elavultak. Ez a helyzet például a ":", "/" vagy "\" karakterekkel a Windows rendszerben.
A Unix fájlrendszerek bájtsorozaton alapuló fájlneveket használnak. A szoftver alsó rétege (kernel, fájlrendszerek) a fájlneveket úgy kezeli, hogy nem ismeri a használt karakterkészletet. Felhasználói szinten a használt karakterkészletet általában nem a fájlrendszer biztosítja, hanem a felhasználó területi beállításaitól függ. Egy olyan kontextusban, ahol globális szintű interoperabilitás kívánatos, kívánatos az Unicode kompatibilitás, ezért az UTF-8- ot egyre inkább használják, különösen a Linux disztribúciókban. Régebbi rendszerek olyan regionális kódolási rendszereket használtak, amelyek megrongálhatják a fájlneveket, ha a felhasználóknak más a területi beállításuk. A modern rendszerekben elkerülik az Unicode-tól eltérő nevű fájlnevek használatát az Unicode rendszerekkel való interoperabilitási problémák csökkentése érdekében.
Az NTFS , a Virtual FAT és a Joliet , ReFS az UTF-16 karakterkészletet használja a fájlnevekhez.
Windows alatt és grafikus környezetekben a fájl nevének általában utótagja (kiterjesztése) van, amelyet egy pont választ el, amely a fájl tartalmától függ: például .txt szöveghez. Ez a kiterjesztés a fájlt támogató alkalmazások választásától függ. Linux / Unix rendszerben, parancssori rendszerekben és programozási nyelvekben azonban a kiterjesztés csak a fájlnév része, formátumát a fejlécben. Átlátszó módon írt MIME típus érzékeli .
Mindegyik fájlt metaadatok írják le ( inode-ban a Unix alatt), míg a fájl tartalmát a tárolóeszköz egy vagy több blokkjára írják, a fájl méretétől függően.
A UNIX leggyakoribb metaadatai a következők:
A legtöbb Unix rendszerben a stat parancs az inode teljes tartalmát megjeleníti .
A fájlkezelő rendszer számos funkciót lát el:
A felhasznált közeg (blokkok, lineáris) mögöttes fizikai szervezete és az alacsony szintű bemeneti / kimeneti mechanizmusok el vannak rejtve. A felhasználó ezért rendszerezheti állandó adatait különböző fájlokban történő terjesztéssel. A fájlok tartalmát azok formátuma határozza meg , amely a használt alkalmazástól függ.
Ezen elvont szervezet mellett a fájlrendszerek magukban foglalhatják az automatikus adattömörítést vagy titkosítást, a fájlhozzáférési jogok többé-kevésbé aprólékos kezelését és az írásnaplózást (a robusztusság érdekében, hiba esetén.. A rendszer). Ezenkívül egyes fájlrendszerek egy teljes hálózatot lefedhetnek, például az NFS. Ezen hálózati fájlrendszerek némelyike terjeszthető vagy terjeszthető, például a PVFS2.
A fájlkezelő rendszer kiválasztása főként az operációs rendszeren alapul. Általában az újabb operációs rendszerek sok fájlrendszert támogatnak.
Az MS-DOS (és kompatibilis) és a Windows 95 korai verziói a FAT16 és FAT12 fájlrendszert használták (16 MB- nál kisebb adathordozókra ). A Windows 95 OSR2-től kezdve a választás a fájlrendszerek között kezdett szélesedni. A FAT16 és a FAT32 egyaránt használható volt, és egy bizonyos partíció méretétől kezdve ésszerűbb volt a FAT32 rendszer kiválasztása .
A Windows NT első verziói (NT3.x és NT4) alatt a FAT16 és az NTFS rendszer között lehet választani . Ez az operációs rendszer nem támogatja a FAT32-et . Általában az NTFS ajánlott, mert nagyobb biztonságot és jobb teljesítményt nyújt a FAT- hoz képest . A Windows NT korábbi verzióitól eltérően a Windows NT5 ( Windows 2000 ) FAT16 , FAT32 és NTFS típusú partíciókat fogad el . Ezért a legfrissebb fájlrendszer (NTFS 5) ajánlott, mivel több funkciót kínál, mint a FAT rendszerek .
A Vista SP1 az exFAT formátumot kínálja, ami a FAT nagy fejlődése, jobb megbízhatóságot, a hosszú nevek "valódi" kezelését és az ACL-t javasolja . A Windows CE 6 (a jövőben Windows Mobile 7) is kezeli ezt az új FS-t. A Microsoft célja a FAT cseréje, amelyet főleg cserélhető adathordozókon, például memóriakártyákon használnak.
A Unix világa (Unix, Linux, BSD, Mac OS X) nagyon sok fájlrendszert támogat. Ez annak köszönhető, hogy a támogatott rendszerek számuk ellenére általában követik a szabványokat és különösen a POSIX-ot .
A naplózott fájlrendszerek változásokat írnak egy naplóba, mielőtt azokat maguk a fájlok végrehajtanák. Ez a mechanizmus nagyobb megbízhatóságot biztosít, lehetővé téve a "folyamatban lévő" módosítások helyreállítását korai leállás (áramkimaradás, rendszerösszeomlás, külső lemez leválasztása stb.) Esetén.
Pillanatfelvételi fájlrendszerek , vagy francia nyelvű pillanatképek lehetővé teszik a fájlrendszer állapotának rögzítését egy adott időpontban.
Ezeknek a fájlrendszereknek nem célja a tényleges fájlokhoz való hozzáférés biztosítása. Valójában a fájlok és könyvtárak klasszikus hierarchiájának megjelenése mellett változatos jellegű információkat mutatnak be (a számítógép, a perifériák vagy az adatbázisokhoz való hozzáférés állapotáról). Ezért ezek bizonyos interfészek bizonyos szoftverekhez, általában az operációs rendszerhez.