Telepíthető fájlrendszer

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

Az Installable File System ( IFS ) egy fájlrendszer API az IBM OS/2 és a Microsoft Windows rendszerben , amely lehetővé teszi az operációs rendszer számára, hogy felismerje és betöltse a fájlrendszer-illesztőprogramokat.

Történelem

Amikor az IBM és a Microsoft fejlesztők az OS/2-t tervezték, rájöttek, hogy a FAT nem felel meg a modern operációs rendszerek követelményeinek, és a Microsoft elkezdte a Pinball kódnevű High Performance File System (HPFS) fejlesztését . Ahelyett, hogy kódot helyezne el a kernelben, mint a FAT esetében, a Microsoft API-alapú fájlrendszer-illesztőprogramot fejlesztett ki, amely lehetővé teszi más fejlesztők számára, hogy új fájlrendszereket adhassanak a kernelhez anélkül, hogy azt módosítani kellene.

Amikor a Microsoft abbahagyta az OS/2-n való munkát, az IBM továbbra is az IFS felületet használta, a Microsoft pedig egy hasonlót implementált a Windows rendszereken.

IFS DOS 4.x-ben

Az MS-DOS 4.0 támogatja az IFS direktívát a harmadik féltől származó fájlrendszer-illesztőprogramok betöltéséhez. [egy]

Parancsformátum: IFS=<drive><path><driver>, ugyanaz, mint a DEVICE direktívánál.

IFS az OS/2-ben

Az IFS alapvető és meglehetősen hatékony interfészt biztosított a fájlrendszer-programozáshoz. 1989-ben került bele az OS/2 1.20-as verziójával, valamint a HPFS fájlrendszerrel.

A fájlrendszer-illesztőprogramok a kerneltérben futnak (gyűrű 0), és négy fő részre oszthatók: microIFS, miniIFS, IFS, helpers.

Az IFS illesztőprogramhoz maga a fájlrendszer kódja nem szükséges, az a CONFIG.SYS fájl "IFS=" direktíváján keresztül töltődik be. Ez egy 16 bites dinamikusan betöltött könyvtár új EXE formátumban. Függetlenül attól, hogy 32 bites OS/2-t (2.0 és újabb) használ, az IFS mindig 16 bites (bár 32 bites IFS is létrehozható).

A MicroIFS egy kódrészlet, amely betölti a miniIFS kernelt a memóriába, és átadja a vezérlést a kernelnek. Ez a kód a fájlrendszer rendszerindító részeiben található.

A MiniIFS az a kód, amelyet a kernel a CONFIG.SYS fájlban megadott első "IFS=" direktíva után hajt végre, így az IFS első argumentumának a rendszermeghajtó fájlrendszerének kell lennie ahhoz, hogy elinduljon.

A 16 bites (OS/2 1.x-hez) vagy 32 bites (OS/2 /2.x és újabb rendszerekhez) helperek a felhasználói térben futnak (3. gyűrű), és tartalmazzák a fájlrendszer karbantartásához használt kódot, amelyet a rendszer hív meg a CHKDSK és FORMAT segédprogramok.

Ez a négy részből álló séma lehetővé tette a fejlesztők számára, hogy dinamikusan hozzáadjanak egy új rendszerindító fájlrendszert, például az OS/2-ben bemutatott ext2 illesztőprogramot.

A CD-ROM fájlrendszer-illesztőprogram (ISO 9660) az OS/2 2.0-ban, az UDF az OS/2 4.0-ban, a JFS pedig az OS/2 4.5-ben került hozzáadásra. Az eComStation, az OS/2 legújabb kiadása számos fájlrendszer-illesztőprogramot is tartalmaz az OS/2-hez a CD-családban. Volt egy hivatalos 32 bites HPFS IFS is, a HPFS386, amely javította a teljesítményt, és hozzáadott néhány szolgáltatást, például változó méretű gyorsítótárat és hozzáférés-vezérlési listákat, amelyek csak az OS/2 Server 3.0-ban érhetők el. A FAT fájlrendszert nem távolították el a kernelből, és hivatalosan soha nem rendelkezett saját IFS-szel, bár vannak FAT ISF-ek, amelyek olyan funkciókat is tartalmaznak, mint például a hosszú fájlnevek (LFN), a FAT32 támogatása stb.

A hálózati fájlmegosztó protokollokat, például az NFS-t és az SMB-t is az IFS segítségével valósítják meg, de maga az IFS-interfész soha nem változott.

IFS a Windows NT rendszerben

Az IFS API a Windows Driver Kit része. Amikor a Microsoft (miután eladta a rendszert az IBM-nek) abbahagyta az OS/2 fejlesztését, és az elsőként OS/2 NT-re koncentrált, az ötletet az IFS-től és a HPFS fájlrendszertől vették át.

A 4 részes rendszer helyett az NT IFS-t kétrészes sémává alakították át: a microIFS és a miniIFS kikerült belőle. Az IFS és a segédprogramok változatlanok maradnak, de később, a Windows NT 4.0-ban egy töredezettségmentesítési segéd (DEFRAG) is bekerült. A Microsoft eredeti NTLDR-jét úgy kódolták, hogy az NT kernel FAT-ból, HPFS-ből vagy NTFS-ről indítsa el, de a későbbi verziók nem támogatják a HPFS-t. Minden meghajtó és segéd 32 bites új típusú végrehajtható fájl (PE) lett. A FAT fájlrendszert a kernelről az IFS-re portolták, és erősen optimalizálták, hogy 32 bites eszközkezelési képességekkel működjön (Fastfat néven).

Az eredeti Windows NT 3.1 tartalmazott FAT, HPFS (Pinball) és újonnan létrehozott NTFS illesztőprogramokat, valamint egy új és továbbfejlesztett CD-ROM fájlrendszer-illesztőprogramot, amely támogatta a hosszú fájlneveket a Microsoft Joliet fájlrendszer használatával.

A Windows NT 3.51 fájlonkénti tömörítést adott az NTFS-hez és az IFS-felülethez. A Windows NT 4.0 rendszerben a HPFS eltávolításra került. A Windows 2000 Fastfat frissítette a FAT32 fájlrendszer támogatását, és hozzáadta az UDF-et.

A Windows 2000 megváltoztatta az IFS felületet, hogy tartalmazza a fájlonkénti titkosítást. A fájlmegosztó hálózati protokollokat és vírusirtókat is az IFS-en keresztül valósítják meg.

Az Apple megkezdte a csak olvasható HFS+ illesztőprogramok beépítését a Mac OS X 10.6-os verzióiba, amelyek Windows XP, Windows Vista és Windows 7 rendszeren használhatók.

Bibliográfia

Lásd még

Linkek

ext2/ext3

ReiserFS

HFS

OS/2

Egyéb

Jegyzetek

  1. Kevtronics. Dokumentálatlan parancsok . [email protected] . Letöltve: 2017. május 25. Az eredetiből archiválva : 2012. február 20.