Yüklenebilir Dosya Sistemi - Installable File System

Yüklenebilir Dosya Sistemi (IFS) bir dosya sistemi API'si içinde MS-DOS /PC DOS 4.x, IBM OS / 2 ve Microsoft Windows sağlayan işletim sistemi tanımak ve yüklemek sürücüler için dosya sistemleri.

Tarih

Ne zaman IBM ve Microsoft OS / 2'yi birlikte geliştirirken, FAT dosya sistemi modern işletim sistemlerinin ihtiyaç duyacağı özelliklerin bazılarını sunmadı ve Microsoft, Yüksek Performanslı Dosya Sistemi (HPFS), kod adı Langırt.

Microsoft, onu çekirdek içinde kodlamak yerine, FAT'ın olduğu gibi, kendilerinin ve diğer geliştiricilerin değiştirmeye gerek kalmadan çekirdeğe yeni dosya sistemleri eklemelerine olanak tanıyan "sürücü tabanlı" bir dosya sistemi API'si geliştirdi.

Microsoft, OS / 2 üzerinde çalışmayı bıraktığında, IBM IFS arayüzünü kullanmaya devam etti ve Microsoft, Windows NT'de benzer bir arayüz uyguladı.

Uygulamalar

DOS 4.x'te IFS

OS / 2'de IFS

IFS, dosya sistemlerini programlamak için temel ve güçlü bir arayüz sağladı. 1989'da OS / 2 1.20'de HPFS dosya sistemi ile birlikte tanıtıldı.

Çekirdek alanında yürütülen dosya sistemi sürücüleri (yüzük 0 ) ve dört ana parçaya bölünmüştür: microIFS, miniIFS, IFS, yardımcılar.

Yalnızca IFS ve dosya sistemi kodunun kendisi gereklidir ve bir "IFS = "içindeki ifade CONFIG.SYS dosya. bu bir NE 16 bit dinamik olarak yüklenmiş kitaplık. Bir önemi yok 32 bit OS / 2 (2.0 ve daha yeni), IFS her zaman 16 bittir (ancak gayri resmi olarak 32 bit IFS yapabilirsiniz).

MicroIFS, belleğe çekirdeği ve miniIFS'yi yükleyen ve çekirdek yürütmesine atlayan bir kod parçasıdır. Genellikle dosya sisteminin önyükleme kısmındadır.

MiniIFS, çekirdek tarafından CONFIG.SYS dosyasında görünen ilk IFS ifadesini yüklemek için çağrılan bir kod parçasıdır, bu nedenle sistemin önyükleyebilmesi için ilk IFS ifadesinin önyüklemenin dosya sistemi olması gerekir.

Yardımcılar 16 bit (OS / 2 1.x için) veya 32 bit (OS / 2 2.x ve üstü için), kullanıcı alanında yürütülür (halka 3 ) ve tipik dosya sistemi bakımı için kullanılan kodu içerir ve CHKDSK ve BİÇİM araçlar.

Bu dört parçalı şema, geliştiricilerin dinamik olarak yeni bir önyüklenebilir dosya sistemi eklemesine izin verdi. ext2 OS / 2 sürücüsü gösterildi.

CD-ROM dosya sistemi sürücüsü (ISO 9660 ) OS / 2 2.0'da eklendi, UDF OS / 2 4.0'da eklendi ve JFS OS / 2 4.5'te eklendi.ArcaOS OS / 2'nin en son paketi, FAT32 dahil olmak üzere bir dizi dosya sistemi sürücüsüne sahiptir.[1]Ayrıca resmi bir 32 bit HPFS IFS vardı. HPFS386 performansı artıran ve değişken boyutlu önbellek gibi bazı özellikler ekleyen ve Erişim Kontrol Listeleri ve sadece belirli OS / 2 sunucu sürümlerinde mevcuttu. FAT dosya sistemi çekirdekten asla kaldırılmadı ve resmi olarak hiçbir zaman bir IFS değil, ancak FAT IFS gibi özellikler ekleyen uzun dosya adları (LFN'ler), FAT32 destek vb.

Şuna benzer ağ dosya paylaşım protokolleri NFS ve SMB IFS kullanılarak da uygulanır ve IFS arayüzü asla değişmez.

Windows 3.11 ve 9x'te IFS

IFSHLP.SYS ( Yüklenebilir Dosya Sistemi Helper) bir MS-DOS ilk olarak Microsoft'un bir parçası olarak piyasaya sürülen aygıt sürücüsü Windows 3.11. Yerel sağlar 32 bit dosya erişimi içinde Windows 386 Gelişmiş Mod 16 bit DOS API'yi atlayarak ve başka hiçbir gerçek mod sürücü müdahaleleri Zeka 21s aramalar.

IFSHLP.SYS'nin korumalı mod karşılığı, IFSMGR.386 Windows 3.11 ve IFSMGR.VXD Windows 95 ve Windows 98'de. [2][3]

Windows NT'de IFS

IFS API, Windows Sürücü Kiti.

Microsoft, OS / 2'yi geliştirmeyi bırakıp daha sonra OS / 2 NT olarak adlandırılan şeye yoğunlaştığında, HPFS dosya sistemi ile birlikte IFS fikirlerini de aldılar.

Dört parçalı bir şema olmak yerine, NT IFS iki parçalı bir şema olacak şekilde yeniden tasarlandı. MikroIFS ve miniIFS şemadan kaldırıldı. IFS ve yardımcıları aynı kalır, ancak daha sonra Windows NT 4.0'da birleştirme helper (DEFRAG) eklendi.Microsoft'un orijinal NTLDR'si NT çekirdeğini FAT'den yüklemek için kodlandı, HPFS veya NTFS, ancak sonraki sürümler HPFS desteğini bıraktı. Tüm sürücüler ve yardımcılar 32 bit oldu PE yürütülebilir dosyaları. FAT dosya sistemi Çekirdekten bir IFS'ye taşındı ve performans için büyük ölçüde optimize edildi ve 32 bit işleme yeteneklerinden yararlanılarak ( FASTFAT ).

Orijinal Windows NT 3.1, FAT, HPFS (Pinball) ve yeni oluşturulan NTFS sürücülerinin yanı sıra, uzun dosya adlarını kullanan yeni ve geliştirilmiş bir CD-ROM dosya sistemi sürücüsünü içerir. Microsoft Joliet dosya sistemi.

Windows NT 3.51, NTFS'ye ve IFS arayüzüne dosya başına sıkıştırma ekledi. Windows NT 4.0'da HPFS kaldırıldı. Windows 2000'de FASTFAT, FAT32'yi desteklemek için güncellendi ve UDF eklendi.

Windows 2000, dosya başına şifreleme eklemek için IFS arayüzünü değiştirdi.

Ağ dosya paylaşım protokolleri ve antivirüs de IFS kullanılarak uygulanır.

elma salt okunur dahil başladı HFS + sürücüler Mac OS X 10.6 'ın versiyonu Eğitim Kampı[4] kullanmak için Windows XP, Windows Vista, ve Windows 7.

daha fazla okuma

  • Rajeev Nagar. Windows NT Dosya Sistemi Dahili, Bir Geliştirici Kılavuzu. O'Reilly. ISBN  1-56592-249-2.
  • Helen Custer. Windows NT Dosya Sisteminin İçinde. Microsoft Press. ISBN  1-55615-660-X.
  • Helen Custer. Windows NT içinde. Microsoft Press. ISBN  1-55615-481-X.

Ayrıca bakınız

Referanslar

Dış bağlantılar

ext2 / ext3 / ext4

ReiserFS

HFS

OS / 2

Diğer

  • CBFS Depolama - şifreleme ve sıkıştırmaya sahip çapraz platformlu tek dosyalı sanal dosya sistemi
  • CBFS Bağlantısı - Geliştiricilerin kullanıcı modunda Windows için kurulabilir sanal dosya sistemleri oluşturmasına izin veren SDK
  • RomFS - Windows sürücü örnekleri
  • WinFUSE - IFS yerine SMB kullanan USErspace çerçevesinde .NET tabanlı bir Dosya Sistemi
  • Dokany - Windows kullanıcı alanındaki dosya sistemleri için ayrı bir çekirdek sürücüsü kullanan ve kullanılabilir .NET bağlamaları ile MIT lisanslı bir çerçeve