Hangi fs yağ formatının dikkate alındığı. Veriler kaybolursa ne yapılmalı? Yağ dosya sisteminin organizasyonu

giriiş

2.1 FAT16 sistemi

2.2 FAT32 sistemi

2.3 FAT16 ve FAT32'nin Karşılaştırılması

3.1 NTFS sistemi

3.2 NTFS ve FAT32'nin Karşılaştırılması

Çözüm

Kaynakça

giriiş

Şu anda ortalama olarak on binlerce dosya bir diske kaydedilmektedir. Dosyayı doğru bir şekilde ele almak için tüm bu çeşitliliği nasıl sıralayabiliriz? Dosya sisteminin amacı bu soruna etkili bir çözümdür.

Kullanıcının bakış açısından dosya sistemi, dosyaların bulunduğu "boşluktur". Bilimsel bir terim olarak ise verilere erişimi depolamanın ve organize etmenin bir yoludur. bilgi ortamı veya onun bölümü. Bir dosya sisteminin varlığı, dosyanın ne olarak adlandırıldığını ve nerede bulunduğunu belirlemenizi sağlar. IBM PC uyumlu bilgisayarlarda bilgiler esas olarak disklerde depolandığından, bunlarda kullanılan dosya sistemleri disklerdeki (daha kesin olarak mantıksal disklerdeki) verilerin organizasyonunu belirler. FAT dosya sistemine bakacağız.

yağ ntfs dosya sistemi

1. Yaratılış tarihi ve Genel özellikleri FAT dosya sistemi

FAT (Dosya Ayırma Tablosu) dosya sistemi, 1977 yılında Bill Gates ve Mark McDonald tarafından geliştirildi ve ilk olarak 86-DOS işletim sisteminde kullanıldı. Programların CP/M işletim sisteminden 86-DOS'a taşınabilirliğini sağlamak için dosya adlarında daha önce kabul edilen kısıtlamalar korundu. 86-DOS daha sonra Microsoft tarafından satın alındı ​​ve Ağustos 1981'de piyasaya sürülen MS-DOS 1.0'ın temeli oldu. FAT, 1 MB'tan küçük disketlerle çalışacak şekilde tasarlanmıştı ve başlangıçta destek sağlamıyordu sabit sürücüler. FAT şu anda boyutu 2 GB'a kadar olan dosyaları ve bölümleri desteklemektedir.

FAT aşağıdaki dosya adlandırma kurallarını kullanır:

ad bir harf veya rakamla başlamalıdır ve boşluk ve "/\ :; |=,^*? karakterleri dışında herhangi bir ASCII karakteri içermelidir.

Ad en fazla 8 karakterden oluşur, ardından bir nokta ve en fazla 3 karakterlik isteğe bağlı bir uzantı gelir.

Dosya adlarındaki karakterlerin büyük/küçük harf durumu ayırt edilmez ve korunmaz.

FAT bölümünün yapısı Tablo 1.1'de gösterilmektedir. BIOS parametreleri bloğu, fiziksel özellikler hakkında gerekli BIOS bilgilerini içerir. sabit disk. FAT dosya sistemi her sektörü ayrı ayrı kontrol edemez, dolayısıyla bitişik sektörleri kümeler halinde gruplandırır. Bu, dosya sisteminin takip etmesi gereken toplam depolama birimi sayısını azaltır. FAT'taki küme boyutu ikinin katıdır ve diski biçimlendirirken birimin boyutuna göre belirlenir (Tablo 1.2). Küme, bir dosyanın kaplayabileceği minimum alan miktarını temsil eder. Bu, disk alanının bir kısmının boşa harcanmasına neden olur. İşletim sistemi, diskteki verileri sıkıştırmak için tasarlanmış çeşitli yardımcı programları (DoubleSpace, DriveSpace) içerir.

Masa 1.1 - FAT bölüm yapısı

Önyükleme sektörü BIOS parametre bloğu (BPB) FATFAT (kopyalama) Kök dizin Dosya alanı

FAT, adını aynı isimli dosya ayırma tablosundan almıştır. Dosya ayırma tablosu, mantıksal diskin kümeleri hakkındaki bilgileri depolar. FAT'taki her kümenin boş olup olmadığını, dosya verileriyle dolu olup olmadığını veya başarısız (bozuk) olarak işaretlenip işaretlenmediğini belirten ayrı bir girişi vardır. Küme bir dosya tarafından işgal edilmişse, dosyanın bir sonraki bölümünü içeren kümenin adresi, dosya tahsis tablosundaki ilgili girişte belirtilir. Bu nedenle FAT'a bağlantılı liste dosya sistemi adı verilir. FAT'ın DOS 1.00 için geliştirilen orijinal sürümü, 12 bitlik bir dosya ayırma tablosu kullanıyordu ve 16 MB'a kadar bölümleri destekliyordu (DOS, maksimum iki FAT bölümü oluşturmanıza izin veriyor). 32 MB'tan büyük sabit sürücüleri desteklemek için FAT bit genişliği 16 bit'e, küme boyutu ise 64 sektöre (32 KB) yükseltildi. Her kümeye benzersiz bir 16 bitlik sayı atanabildiğinden FAT, tek bir birimde maksimum 216 veya 65.536 kümeyi destekler.

Tablo 1.2 - Küme boyutları

Bölüm boyutuKüme boyutuFAT türü< 16 Мб4 КбFAT1216 Мб - 127 Мб2 КбFAT16128 Мб - 255 Мб4 КбFAT16256 Мб - 511 Мб8 КбFAT16512 Мб - 1023 Мб16 КбFAT161 Гб - 2 Гб32 КбFAT16

Önyükleme kaydı, sistem dosyası arama algoritmasını diskte depolamak için çok küçük olduğundan, önyükleme kaydının bunları bulması için sistem dosyalarının belirli bir konumda olması gerekir. Sistem dosyalarının veri alanının başlangıcındaki sabit konumu, kök dizinin ve dosya ayırma tablosunun boyutuna katı bir sınır getirir. Sonuç olarak, bir FAT sürücüsünün kök dizinindeki toplam dosya ve alt dizin sayısı 512 ile sınırlıdır.

FAT'taki her dosya ve alt dizin, dosya adını ve niteliklerini (arşiv, gizli, sistem ve salt okunur) içeren 32 baytlık bir dizin öğesiyle ilişkilidir. ), oluşturulma tarihi ve saati (veya buna giriş) son değişiklikler) ve diğer bilgiler (Tablo 1.3).

Tablo 1.3 - Katalog öğeleri

FAT dosya sistemi her zaman doldurur müsait yer Diskte baştan sona sırayla. Yeni bir dosya oluştururken veya mevcut dosyayı büyütürken, dosya ayırma tablosundaki ilk boş kümeyi arar. İşlem sırasında bazı dosyalar silindiyse ve diğerlerinin boyutu değiştiyse, ortaya çıkan boş kümeler diske dağılacaktır. Dosya verilerini içeren kümeler bir satırda yer almıyorsa dosya parçalanmış hale gelir. Ağır şekilde parçalanmış dosyalar, bir sonraki dosya kaydını ararken okuma/yazma kafalarının diskin bir alanından diğerine hareket etmesi gerekeceğinden verimliliği önemli ölçüde azaltır. FAT'yi destekleyen işletim sistemleri genellikle şunları içerir: özel araçlar Dosya işlemlerinin performansını artırmak için tasarlanmış disk birleştirme.

FAT'ın diğer bir dezavantajı, performansının büyük ölçüde bir dizinde depolanan dosya sayısına bağlı olmasıdır. Çok sayıda dosya varsa (yaklaşık bin), bir dizindeki dosya listesini okuma işlemi birkaç dakika sürebilir. Bunun nedeni, FAT'ta dizinin doğrusal, sırasız bir yapıya sahip olması ve dizinlerdeki dosyaların adlarının oluşturuldukları sıraya göre olmasıdır. Sonuç olarak, dizinde ne kadar çok giriş olursa, programlar o kadar yavaş çalışır, çünkü bir dosya ararken dizindeki tüm girişlere sırayla bakmak gerekir. FAT, başlangıçta tek kullanıcılı DOS işletim sistemi için tasarlandığından, sahip bilgileri veya dosya/dizin erişim izinleri gibi bilgilerin depolanmasını sağlamaz.En yaygın dosya sistemidir ve çoğu modern tarafından bir dereceye kadar desteklenir. işletim sistemleri. Çok yönlülüğü nedeniyle FAT, farklı birimlerle çalışan birimlerde kullanılabilir. işletim sistemi.

Disketleri formatlarken başka bir dosya sistemi kullanmanın önünde bir engel olmasa da çoğu işletim sistemi uyumluluk için FAT kullanır. Bu kısmen basit FAT yapısının diğer sistemlere göre ek yük verilerini depolamak için daha az alan gerektirmesiyle açıklanabilir. Diğer dosya sistemlerinin avantajları ancak 100 MB'tan büyük ortamlarda kullanıldığında fark edilir hale gelir.

FAT'ın, bilgisayarın anormal kapanması nedeniyle dosya bozulmasını engellemeyen basit bir dosya sistemi olduğu unutulmamalıdır. FAT'yi destekleyen işletim sistemleri, dosya sistemindeki yapıyı kontrol eden ve tutarsızlıkları düzelten özel yardımcı programlar içerir.

2. FAT16 ve FAT32 dosya sistemlerinin özellikleri ve karşılaştırılması

.1 FAT16 sistemi

FAT 16 dosya sistemi, DOS, Windows 95⁄98⁄Me, Windows NT⁄2000⁄XP işletim sistemleri için ana sistemdir ve diğer birçok sistem tarafından da desteklenir. FAT 16, küçük sürücüler için tasarlanmış basit bir dosya sistemidir ve basit yapılar kataloglar. Ad, dosya düzenleme yönteminin adından gelir - Dosya Ayırma Tablosu. Bu tablo diskin başında bulunur. 16 sayısı, dosya sisteminin 16 bit olduğu anlamına gelir; kümeleri adreslemek için 16 bit kullanılır. İşletim sistemi, bir dosyayı bulmak ve dosyanın sabit sürücüde kapladığı kümeleri belirlemek için Dosya Ayırma Tablosunu kullanır. Ayrıca Tablo, serbest ve kusurlu kümeler hakkındaki bilgileri kaydeder. FAT16 dosya sistemini anlamayı kolaylaştırmak için bir kitabın içindekiler tablosunu ve bu içindekiler tablosuyla nasıl çalıştığınızı hayal edin; işletim sistemi FAT 16 ile tam olarak bu şekilde çalışır.

Bir dosyayı okumak için işletim sisteminin, klasördeki bir girişin dosya adını araması ve dosyanın ilk küme numarasını okuması gerekir. İlk küme dosyanın başlangıcını temsil eder. Daha sonra dosyanın ilk kümesine karşılık gelen FAT öğesini okumanız gerekir. Öğe bir etiket içeriyorsa - zincirdeki sonuncusu, o zaman başka bir şey aramaya gerek yoktur: dosyanın tamamı tek bir kümeye sığar. Küme son değilse, tablo öğesi bir sonraki kümenin numarasını içerir. Bir sonraki kümenin içeriği ilkinden sonra okunmalıdır. Zincirdeki son küme bulunduğunda, eğer dosya kümenin tamamını kaplamıyorsa, kümenin fazladan baytlarını kesmek gerekir. Ekstra baytlar, klasör girişinde saklanan dosya uzunluğuna göre kesilir.

Bir dosya yazmak için işletim sisteminin aşağıdaki eylem sırasını gerçekleştirmesi gerekir. Serbest bir klasör girişinde bir dosya açıklaması oluşturulur, ardından ücretsiz bir FAT girişi aranır ve klasör girişine buna bir bağlantı yerleştirilir. Bulunan FAT elemanı tarafından tanımlanan ilk küme işgal edilmiştir. Bu FAT elemanı zincirdeki bir sonraki kümenin numarasını veya son kümenin işaretini içerir.

İşletim sistemi komşu kümelerden artan sayıda zincir toplayacak şekilde hareket eder. Sıralı olarak konumlanan kümelere erişimin, disk boyunca rastgele dağılmış kümelere erişimden çok daha hızlı olacağı açıktır. Bu durumda, halihazırda meşgul olan ve FAT'ta arızalı olarak işaretlenen kümeler dikkate alınmaz.

FAT16 dosya sisteminde küme numarası için 16 bit ayrılmıştır. Dolayısıyla maksimum küme sayısı 65525, maksimum küme boyutu ise 128 sektördür. Bu durumda, FAT16'daki maksimum bölüm veya disk boyutu 4,2 gigabayttır. Bir diski veya bölümü mantıksal olarak biçimlendirirken, işletim sistemi, elde edilen küme sayısının 65525'i aşmaması için minimum küme boyutunu kullanmaya çalışır. Açıkçası, bölüm boyutu ne kadar büyük olursa, küme boyutu da o kadar büyük olmalıdır. Birçok işletim sistemi 128 sektörlük küme boyutunda düzgün çalışmıyor. Sonuç olarak, FAT16 bölümünün maksimum boyutu 2 gigabayta düşürülür. Genellikle küme boyutu büyüdükçe disk alanı israfı da artar. Bunun nedeni, dosyanın işgal ettiği son kümenin yalnızca kısmen doldurulmuş olmasıdır. Örneğin, 16 KB'lik küme boyutuna sahip bir bölüme 17 KB'lik bir dosya yazılırsa, bu dosya iki kümeyi kaplayacak, ilk küme tamamen dolacak ve ikinci kümeye yalnızca 1 KB veri yazılacak ve geriye yalnızca 1 KB veri yazılacaktır. ikinci kümede kalan 15 KB alan boş, doldurulacak ve başka dosyalara yazılamayacaktır. Büyük disklere çok sayıda küçük dosya yazılırsa, disk alanı kaybı önemli olacaktır. Aşağıdaki tablo 2.1, aşağıdaki durumlarda olası disk alanı kaybı hakkında bilgi sağlar: farklı boyutlar bölüm.

Masa 2.1.1 - Disk alanı israfı

Bölüm boyutuKüme boyutuDisk alanı kaybı127 MB2 KB2%128-255 MB4 KB4%256-511 MB8 KB10%512-1023 MB16 KB25%1024-2047 MB32 KB40%2048-4096 MB64 KB50%

Disk alanı israfını azaltmanın iki olası yolu vardır. Birincisi, disk alanını küçük küme boyutuna sahip küçük bölümlere ayırmaktır. İkincisi FAT32 dosya sistemini kullanmaktır<#"center">2.2 FAT32 sistemi

FAT32 dosya sistemi, FAT formatını temel alan daha yeni bir dosya sistemidir ve Windows 95 OSR2, Windows 98 ve Windows Millennium Edition tarafından desteklenir. FAT32, 32 bitlik küme kimliklerini kullanır ancak en önemli 4 biti ayırır, dolayısıyla etkin küme kimliği boyutu 28 bittir. FAT32 kümelerinin maksimum boyutu 32 KB olduğundan, FAT32 teorik olarak 8 terabaytlık birimleri işleyebilir. Windows 2000, mevcut daha büyük FAT32 birimlerini (diğer işletim sistemlerinde oluşturulan) desteklemesine rağmen, yeni FAT32 birimlerinin boyutunu 32 GB ile sınırlar. FAT32 tarafından desteklenen küme sayısının daha fazla olması, diskleri FAT 16'ya göre daha verimli bir şekilde yönetmesine olanak tanır. FAT32, boyutu 128 MB'a kadar olan birimler için 512 baytlık kümeleri kullanabilir.

FAT 32 dosya sistemi, Windows 98'de varsayılan dosya sistemi olarak kullanılır. Bu işletim sistemi ile birlikte gelir özel program bir sürücüyü FAT 16'dan FAT 32'ye dönüştürme. Windows NT ve Windows 2000 de FAT dosya sistemini kullanabilir ve bu nedenle bilgisayarınızı bir DOS diskinden önyükleyebilir ve tam erişim tüm dosyalara. Ancak Windows NT ve Windows 2000'in en gelişmiş özelliklerinden bazıları kendi NTFS dosya sistemi (NT Dosya Sistemi) tarafından sağlanmaktadır. NTFS, 2 TB'a kadar (FAT 32 gibi) disk bölümleri oluşturmanıza olanak tanır, ancak buna ek olarak, bir ağ ortamında çalışırken gerekli olan yerleşik dosya sıkıştırma, güvenlik ve denetim işlevlerine sahiptir. Ve Windows 2000'de FAT 32 dosya sistemi desteği uygulanmaktadır. Windows sistemleri NT, FAT disk üzerinde başlar ancak kullanıcı dilerse kurulum sonunda diskteki veriler NTFS formatına dönüştürülebilir.

Bunu daha sonra Convert yardımcı programını kullanarak yapabilirsiniz. İşletim sistemiyle birlikte verilen exe. NTFS'ye dönüştürülen bir disk bölümüne diğer işletim sistemleri erişemez hale gelir. DOS, Windows 3.1 veya Windows 9x'e dönmek için NTFS bölümünü silmeniz ve bunun yerine bir FAT bölümü oluşturmanız gerekir. Windows 2000, FAT 32 ve NTFS dosya sistemlerine sahip bir diske kurulabilir.

FAT32 dosya sistemlerinin yetenekleri FAT16'nınkinden çok daha geniştir. En önemli özelliği 2047 GB'a kadar diskleri desteklemesi ve daha küçük kümelerle çalışması, böylece kullanılmayan disk alanı miktarını önemli ölçüde azaltmasıdır. Örneğin, Sabit disk FAT16'da 2 GB, 32 KB boyutunda kümeler kullanır ve FAT32'de 4 KB boyutunda kümeler kullanır. Mümkün olduğunca mevcut programlar, ağlar ve aygıt sürücüleri ile uyumluluğu korumak için FAT32, mimaride, API'lerde, dahili veri yapılarında ve disk biçiminde minimum değişiklikle uygulanır. Ancak FAT32 tablo öğelerinin boyutu artık dört bayt olduğundan, birçok dahili ve disk üzerindeki veri yapısının ve API'nin revize edilmesi veya genişletilmesi gerekti. Eski disk yardımcı programlarının FAT32 sürücülerinin içeriğini bozmasını önlemek için FAT32 sürücülerindeki belirli API'ler engellenir. Çoğu program bu değişikliklerden etkilenmeyecektir. Mevcut araçlar ve sürücüler FAT32 sürücülerinde çalışacaktır. Ancak MS-DOS blok aygıtı sürücülerinin (Aspidisk.sys gibi) ve disk yardımcı programlarının FAT32'yi destekleyecek şekilde değiştirilmesi gerekir. Microsoft tarafından sağlanan tüm disk yardımcı programları (gerçek ve korumalı mod için Format, Fdisk, Defrag ve ScanDisk), FAT32'yi tam olarak destekleyecek şekilde yeniden tasarlandı. Ayrıca Microsoft, önde gelen disk yardımcı programı ve aygıt sürücüsü satıcılarına, ürünlerini FAT32'yi destekleyecek şekilde değiştirme konusunda yardımcı olmaktadır. FAT32, daha büyük disklerle çalışırken FAT16'dan daha verimlidir ve bunların 2 GB'lık bölümlere ayrılmasını gerektirmez. Windows 98, üçüncü taraf işletim sistemleri de dahil olmak üzere diğer işletim sistemleriyle uyumlu olan bu dosya sistemi olduğundan, mutlaka FAT16'yı destekler. MS-DOS gerçek modunda ve güvenli mod Windows 98'de FAT32 dosya sistemi FAT16'dan önemli ölçüde daha yavaştır. Bu nedenle, programları MS DOS modunda çalıştırırken Autoexec'in dahil edilmesi tavsiye edilir. Smartdrv'yi indirmek için bat veya PIF dosyası komutunu kullanın. Disk işlemlerini hızlandıracak exe. FAT16 spesifikasyonu için tasarlanmış bazı eski programlar, 2 GB'tan fazla olması durumunda boş veya toplam disk alanı miktarı hakkında yanlış bilgi bildirebilir. Windows 98, MS-DOS ve Win32 için bu ölçümleri doğru şekilde belirlemenize olanak tanıyan yeni API'ler sağlar.

.3 FAT16 ve FAT32'nin karşılaştırılması

Tablo 2.3.1 - FAT16 ve FAT32 dosya sistemlerinin karşılaştırılması

FAT16FAT32Çoğu işletim sistemi (MS-DOS, Windows 98, Windows NT, OS/2, UNIX) tarafından uygulanır ve kullanılır. Açık şu an Yalnızca Windows 95 OSR2 ve Windows 98'de desteklenir. 256 MB'tan küçük mantıksal sürücüler için çok etkilidir. 512 MB'tan küçük disklerle çalışmaz. Örneğin DriveSpace algoritmasını kullanarak disk sıkıştırmayı destekler. Disk sıkıştırmayı desteklemez. Boyutu mantıksal diskin boyutuna bağlı olan maksimum 65.525 kümeyi işler. Maksimum küme boyutu 32 KB olduğundan FAT16, 2 GB'tan büyük olmayan mantıksal sürücülerle çalışabilir. Maksimum küme boyutu 32 KB olan, 2.047 GB'a kadar mantıksal disklerle çalışabilir.

FAT32'de mümkün olan maksimum dosya uzunluğu 4 GB eksi 2 bayttır. Win32 uygulamaları bu uzunluktaki dosyaları özel işlemlere gerek kalmadan açabilir. Diğer uygulamalar, açık bayrağı EXTEND-SIZE (1000h) olarak ayarlanmış şekilde Int 21h kesme fonksiyonunu 716C (FAT32) kullanmalıdır.

FAT32 dosya sisteminde, dosya ayırma tablosunda her küme için 4 bayt ayrılırken, FAT16 - 2 ve FAT12 - 1.5'te.

32 bitlik bir FAT32 tablo öğesinin en önemli 4 biti ayrılmıştır ve küme numarasının oluşumuna katılmamaktadır. FAT32 tablosunu doğrudan okuyan programların bu bitleri maskelemesi ve yeni değerler yazıldığında değişmesini engellemesi gerekir.

Dolayısıyla FAT32, FAT dosya sisteminin önceki uygulamalarına göre aşağıdaki avantajlara sahiptir:

2 TB'a kadar diskleri destekler;

Disk alanını daha verimli bir şekilde düzenler. FAT32 daha küçük kümeler kullanır (8 GB'a kadar diskler için 4 KB), bu da FAT'a kıyasla büyük disklerde %10-15'e kadar alan tasarrufu sağlar;

FAT 32 kök dizini, diğer tüm dizinler gibi artık sınırsızdır, bir kümeler zincirinden oluşur ve diskin herhangi bir yerinde bulunabilir;

daha yüksek güvenilirliğe sahiptir: FAT32 kök dizini taşıyabilir ve bir FAT yedeğiyle çalışabilir; ayrıca FAT32 sürücülerindeki önyükleme kaydı, kritik veri yapılarının yedek kopyasını içerecek şekilde genişletildi; bu, FAT32 sürücülerinin daha az hassas olduğu anlamına geliyor mevcut FAT hacimlerinden daha bireysel kötü alanların oluşması;

programlar %50 daha hızlı yüklenir.

Tablo 2.3.2 - Küme boyutlarının karşılaştırılması

Disk boyutu FAT16'da küme boyutu, KB FAT32'de küme boyutu, KB256 MB-511 MB8Desteklenmiyor512 MB - 1023 MB1641024 MB - 2 GB3242 GB - 8 GBDesteklenmiyor48 GB-16 GBDesteklenmiyor816 GB-32 GBDesteklenmiyor xya1632 GB'den fazla Desteklenmiyor32

3. Alternatif dosya NTFS sistemi ve FAT32 ile karşılaştırılması

3.1 NTFS sistemi

(Yeni Teknoloji Dosya Sistemi), Windows NT ile çalışırken bu sistem için özel olarak tasarlandığı için en çok tercih edilen dosya sistemidir. Windows NT, FAT ve HPFS birimlerini NTFS birimlerine dönüştüren bir dönüştürme yardımcı programı içerir. NTFS, tek tek dosyalara ve dizinlere erişimi kontrol etme yeteneklerini önemli ölçüde genişletti, çok sayıda öznitelik ekledi, hata toleransı uyguladı, dinamik dosya sıkıştırma ve POSIX standart gereksinimleri için destek sağladı. NTFS, 255 karakter uzunluğa kadar dosya adlarına izin verir ve kısa ad oluşturmak için VFAT ile aynı algoritmayı kullanır. NTFS, bir işletim sistemi veya donanım arızası durumunda kendini kurtarma özelliğine sahiptir, böylece disk birimi kullanılabilir durumda kalır ve dizin yapısı bozulmaz.

NTFS birimindeki her dosya, özel bir dosya olan MFT'deki (Ana Dosya Tablosu) bir girişle temsil edilir. NTFS, yaklaşık 1 MB boyutunda ilk 16 tablo girişini özel bilgi için ayırır. İlk tablo girişi ana dosya tablosunun kendisini açıklar. Bunu MFT ayna girişi takip eder. İlk MFT kaydı bozuksa, NTFS, ilk kaydı ilk MFT kaydıyla aynı olan bir ayna MFT dosyasını bulmak için ikinci kaydı okur. MFT veri bölümlerinin ve ayna MFT dosyasının konumu önyükleme sektöründe depolanır. Önyükleme sektörünün bir kopyası diskin mantıksal merkezinde bulunur. Üçüncü MFT girişi, dosya kurtarma için kullanılan bir günlük dosyasını içerir. Ana dosya tablosundaki on yedinci ve sonraki girişler, birimdeki gerçek dosyalar ve dizinler tarafından kullanılır.

İşlem günlüğü (günlük dosyası), dosya oluşturma ve dizin yapısını değiştiren komutlar da dahil olmak üzere birim yapısını etkileyen tüm işlemleri kaydeder. İşlem günlüğü, bir sistem arızasından sonra NTFS birimini kurtarmak için kullanılır. Kök dizinin girişi, kök dizinde saklanan dosya ve dizinlerin bir listesini içerir.

Birim tahsis şeması bir bitmap dosyasında saklanır. Bu dosyanın veri özniteliği, her bir biti birimin bir kümesini temsil eden ve kümenin boş mu yoksa bir dosya tarafından mı işgal edildiğini gösteren bir bitmap içerir.Ayrıca birimdeki kötü alanları kaydetmek için bozuk küme dosyasını ve birim dosyasını destekler. , birim adını, NTFS sürümünü ve birim bozulduğunda ayarlanan bir biti içerir. Son olarak, birimde desteklenen öznitelik türlerini ve bunların dizine alınıp alınamayacağını, sistem geri yüklemesi tarafından geri yüklenip yüklenemeyeceğini vb. belirten bir öznitelik tanımı tablosu içeren bir dosya vardır. kümelerde yer ayırır ve onlar için 64 bit numaralandırma kullanır. bu da her biri 64 KB boyutuna kadar 264 kümeye sahip olmayı mümkün kılar. FAT'ta olduğu gibi küme boyutu değişebilir ancak disk boyutuyla orantılı olarak artması gerekmez. Bir bölümü biçimlendirirken varsayılan küme boyutları Tablo 3.1'de gösterilmektedir.

Bölüm boyutuKüme boyutu< 512 Мб512 байт513 Мб - 1024 Мб (1 Гб) 1 Кб1 Гб - 2 Гб2 Кб2 Гб - 4 Гб4 Кб4 Гб - 8 Гб8 Кб8 Гб - 16 Гб16 Кб16 Гб - 32 Гб32 Кб>32 GB64 KB boyutu 16 eksabayta (264 bayt) kadar olan dosyaları depolamanıza olanak tanır ve yerleşik gerçek zamanlı dosya sıkıştırma özelliğine sahiptir. Sıkıştırma, bir dosyanın veya dizinin niteliklerinden biridir ve herhangi bir öznitelik gibi, herhangi bir zamanda kaldırılabilir veya kurulabilir (küme boyutu 4 KB'yi aşmayan bölümlerde sıkıştırma mümkündür). Bir dosyayı sıkıştırırken, FAT'ta kullanılan sıkıştırma şemalarından farklı olarak, dosya bazında sıkıştırma kullanılır, bu nedenle diskin küçük bir bölümüne zarar verilmesi, diğer dosyalardaki bilgilerin kaybolmasına yol açmaz.

Parçalanmayı azaltmak için NTFS, dosyaları her zaman bitişik bloklar halinde depolamaya çalışır. Bu sistem, yüksek performanslı HPFS dosya sistemine benzer bir B-ağacı dizin yapısı kullanır. bağlantılı liste FAT'ta kullanılır. Bu, dosya adlarının sözlüksel sıraya göre sıralanmış olarak saklanması nedeniyle bir dizindeki dosyaların aranmasını daha hızlı hale getirir. bir işlem işleme modeli kullanılarak kurtarılabilir bir dosya sistemi olarak tasarlanmıştır. NTFS birimindeki bir dosyayı değiştiren her G/Ç işlemi, sistem tarafından bir işlem olarak kabul edilir ve bölünemez bir blok olarak yürütülebilir. Bir dosya kullanıcı tarafından değiştirildiğinde, günlük dosyası hizmeti, işlemin tekrarlanması veya geri alınması için gerekli tüm bilgileri kaydeder. İşlem başarıyla tamamlanırsa dosya değiştirilir. Değilse, NTFS işlemi geri alır.

Verilere yetkisiz erişime karşı koruma bulunmasına rağmen NTFS, saklanan bilgilerin gerekli gizliliğini sağlamaz. Dosyalara erişim sağlamak için, bilgisayarı bir disketten DOS'a önyüklemeniz ve bu sistem için bazı üçüncü taraf NTFS sürücülerini kullanmanız yeterlidir.

İle başlayan Windows sürümleri NT 5.0 (Windows 2000'in yeni adı) Microsoft, yeni NTFS 5.0 dosya sistemini destekler. NTFS'nin yeni sürümü ek özellikler getirdi dosya özellikleri; Erişim hakkıyla birlikte, örneğin bir kullanıcının bir dosyanın grup haklarını devralması durumunda, dosyanın içeriğini değiştirmesinin yasaklanmasına olanak tanıyan erişim reddi kavramı da getirilmiştir. Yeni sistem ayrıca şunları sağlar:

kullanıcılara sağlanan disk alanı miktarına kısıtlamalar (kotalar) getirmek;

herhangi bir dizini (hem yerel hem de uzak bilgisayardaki) yerel diskteki bir alt dizine eşleyin.

Windows NT'nin yeni sürümünün ilginç bir özelliği, bilgi depolamanın güvenilirliğini artıran dosya ve dizinlerin dinamik şifrelenmesidir. Windows NT 5.0, paylaşılan anahtar şifreleme algoritmalarını kullanan bir Şifreleme Dosya Sistemi (EFS) içerir. Bir dosya için şifreleme özniteliği ayarlanmışsa, bir kullanıcı programı yazma veya okuma için dosyaya eriştiğinde, dosya programa şeffaf bir şekilde kodlanır ve kodu çözülür.

.2 NTFS ve FAT32'nin karşılaştırılması

Avantajları:

Küçük dosyalara hızlı erişim hızı;

Günümüzde disk alanının boyutu neredeyse sınırsızdır;

Dosya parçalanması dosya sisteminin kendisini etkilemez;

Veri depolamanın yüksek güvenilirliği ve dosya yapısı;

Büyük dosyalarla çalışırken yüksek performans;

Kusurlar:

Daha yüksek hacim gereksinimleri rasgele erişim belleği FAT 32 ile karşılaştırıldığında;

Orta büyüklükteki dizinlerle çalışmak, parçalanmaları nedeniyle zordur;

Daha düşük hız FAT 3232 ile karşılaştırıldığında çalışma

Avantajları:

Yüksek hız;

Düşük RAM gereksinimi;

Orta ve küçük dosyalarla verimli çalışma;

Daha az okuma/yazma kafası hareketi nedeniyle daha az disk aşınması.

Kusurlar:

Sistem arızalarına karşı düşük koruma;

Olumsuz etkili çalışma büyük dosyalarla;

Bir bölümün ve dosyanın maksimum hacminin sınırlandırılması;

Parçalanma nedeniyle performansta azalma;

Çok sayıda dosya içeren dizinlerle çalışırken performansta azalma;

Yani her iki dosya sistemi de verileri minimum boyutu 512 b olan kümelerde depolar. Kural olarak normal küme boyutu 4 Kb'dir. Benzerliklerin muhtemelen bittiği yer burasıdır. Parçalanmayla İlgili Bir Şey: Hız NTFS çalışması Disk %80 - 90'a kadar doldurulduğunda keskin bir şekilde azalır. Bunun nedeni hizmet ve çalışma dosyalarının parçalanmış olmasıdır. Bu kadar yoğun bir diskle ne kadar çok çalışırsanız parçalanma o kadar güçlü olur ve performans düşer. FAT 32'de diskin çalışma alanının parçalanması daha erken aşamalarda meydana gelir. Buradaki nokta, verileri ne sıklıkla yazdığınız/sildiğinize bağlıdır. NTFS'de olduğu gibi parçalanma performansı büyük ölçüde azaltır. Şimdi RAM hakkında. FAT 32 elektronik tablosunun hacmi RAM'de yaklaşık birkaç megabayt kaplayabilir. Ancak önbelleğe alma kurtarmaya geliyor. Önbelleğe yazılanlar:

En çok kullanılan dizinler;

Şu anda kullanımda olan tüm dosyalar hakkındaki veriler;

Boş disk alanıyla ilgili veriler;

NTFS'den ne haber? Büyük dizinlerin önbelleğe alınması zordur ve boyutları onlarca megabayta ulaşabilir. Artı MFT ve boş disk alanıyla ilgili bilgiler. NTFS'nin RAM kaynaklarını hala oldukça ekonomik kullandığını belirtmek gerekir. Başarılı bir veri depolama sistemimiz var, MFT'de her kayıt yaklaşık 1 Kb boyutunda. Ancak yine de RAM miktarı FAT 32'ye göre daha fazladır. Kısaca hafızanız 64 Mb ve altı ise FAT 32 hız açısından daha etkili olacaktır. hızdaki fark çok küçük olacak ve çoğu zaman hiç olmayacaktır. Şimdi sabit sürücünün kendisi hakkında. NTFS'yi kullanmak için Bus Mastering gereklidir. Bu nedir? Bu, sürücünün ve denetleyicinin özel bir çalışma modudur. BM kullanıldığında, değişim işlemcinin katılımı olmadan gerçekleşir. VM'nin olmaması sistem performansını etkileyecektir. Ayrıca daha karmaşık bir dosya sisteminin kullanılması nedeniyle okuma/yazma kafalarının hareket sayısı artar ve bu da hızı etkiler. Bir disk önbelleğinin varlığı, hem NTFS hem de FAT 32 üzerinde eşit derecede olumlu bir etkiye sahiptir.

Çözüm

FAT'ın avantajları, düşük veri depolama yükü ve çok sayıda işletim sistemi ve donanım platformuyla tam uyumluluktur. Bu dosya sistemi, diğer dosya sistemleri tarafından desteklenen bölümün büyük boyutunun bir rol oynamadığı ve düşük ek yükün küçük bir disket biriminin ekonomik kullanımına izin verdiği disketleri biçimlendirmek için hala kullanılmaktadır (NTFS, verileri depolamak için daha fazla alan gerektirir; bu da disketler için kesinlikle kabul edilemez).

FAT32'nin kapsamı aslında çok daha dardır - bölümlere erişecekseniz bu dosya sistemi kullanılmalıdır. Windows'u kullanma 9x ve Windows 2000/XP kullanıyor. Ancak bugün Windows 9x'in alaka düzeyi neredeyse ortadan kalktığı için, bu dosya sisteminin kullanımı özellikle ilgi çekici değil.

Kaynakça

1. http://yura. Puslapiai. lt/archiv/per/fat.html

FAT dosya sistemleri

FAT16

FAT16 dosya sisteminin geçmişi MS-DOS öncesi dönemlere kadar uzanır ve tüm işletim sistemleri tarafından desteklenir. Microsoft sistemleri Uyumluluğu sağlamak için. Dosya Ayırma Tablosu adı, dosya sisteminin fiziksel organizasyonunu mükemmel bir şekilde yansıtır; ana özellikleri, desteklenen birimin maksimum boyutunun (sabit sürücü veya sabit sürücüdeki bölüm) 4095 MB'ı geçmemesidir. MS-DOS 4 GB günlerinde sabit diskler boş bir rüya gibi görünüyordu (20-40 MB diskler lükstü), bu yüzden böyle bir rezerv oldukça haklıydı.

FAT16 kullanacak şekilde biçimlendirilmiş bir birim kümelere bölünür. Varsayılan küme boyutu, birim boyutuna bağlıdır ve 512 bayt ile 64 KB arasında değişebilir. Masada Şekil 2, küme boyutunun birim boyutuna göre nasıl değiştiğini göstermektedir. Küme boyutunun varsayılan değerden farklı olabileceğini ancak tabloda belirtilen değerlerden birine sahip olması gerektiğini unutmayın. 2.

FAT16 dosya sisteminin 511 MB'tan büyük birimlerde kullanılması önerilmez, çünkü nispeten küçük dosyalar için disk alanı son derece verimsiz kullanılacaktır (1 baytlık bir dosya 64 KB kaplayacaktır). Küme boyutundan bağımsız olarak FAT16 dosya sistemi 4 GB'tan büyük birimler için desteklenmez.

FAT32

İle başlayan Microsoft Windows 95 OEM Service Release 2 (OSR2), Windows'ta 32 bit FAT desteğini sundu. Windows NT tabanlı sistemler için bu dosya sistemi ilk olarak Microsoft Windows 2000'de desteklenmiştir. FAT16 4 GB'a kadar birimleri destekleyebilirken, FAT32 2 TB'a kadar birimleri destekleyebilir. FAT32'deki küme boyutu 1 (512 bayt) ila 64 sektör (32 KB) arasında değişebilir. FAT32 küme değerleri, küme değerlerini saklamak için 4 bayt (FAT16'daki gibi 16 bit değil, 32 bit) gerektirir. Bu, özellikle FAT16 için tasarlanmış bazı dosya yardımcı programlarının FAT32 ile çalışamayacağı anlamına gelir.

FAT32 ile FAT16 arasındaki temel fark, diskin mantıksal bölümünün boyutunun değişmiş olmasıdır. FAT32, 127 GB'a kadar birimleri destekler. Ayrıca, FAT16'yı 2 GB disklerle kullanırken 32 KB boyutunda bir küme gerekliyse, FAT32'de 4 KB boyutunda bir küme, 512 MB ila 8 GB kapasiteli diskler için uygundur (Tablo 4).

Buna göre bu, disk alanının daha verimli kullanılması anlamına gelir; küme ne kadar küçük olursa, dosyayı depolamak için o kadar az alan gerekir ve sonuç olarak diskin parçalanma olasılığı da azalır.

FAT32 kullanırken maksimum dosya boyutu 4 GB eksi 2 bayta ulaşabilir. FAT16 kullanıldığında kök dizindeki maksimum giriş sayısı 512 ile sınırlıysa, FAT32 bu sayıyı 65.535'e çıkarmanıza olanak tanır.

FAT32, minimum birim boyutuna kısıtlamalar getirir; en az 65.527 küme olmalıdır. Bu durumda küme boyutu FAT'ın 16 MB–64 KB / 4 veya 4 milyon kümeden fazlasını kaplayacak şekilde olamaz.

Uzun dosya adları kullanıldığında FAT16 ve FAT32'den erişilmesi gereken veriler çakışmaz. Uzun ada sahip bir dosya oluşturduğunuzda, Windows, 8.3 biçiminde karşılık gelen bir ad oluşturur ve uzun adı depolamak için dizinde bir veya daha fazla giriş oluşturur (giriş başına uzun dosya adının 13 karakteri). Sonraki her oluşum, dosya adının karşılık gelen bölümünü Unicode biçiminde saklar. Bu tür oluşumlar "birim tanımlayıcı", "salt okunur", "sistem" ve "gizli" özniteliklerine sahiptir; bu, MS-DOS tarafından göz ardı edilen bir kümedir; bu işletim sisteminde bir dosyaya 8.3 formatındaki "takma adı" kullanılarak erişilir.

Dosya sistemi NTFS

İÇİNDE Microsoft bileşimi Windows 2000, özellikle dizin hizmetleriyle çalışma sağlayan NTFS dosya sisteminin yeni bir sürümü için destek içerir Aktif Dizin, yeniden ayrıştırma noktaları, bilgi güvenliği araçları, erişim kontrolü ve bir dizi başka özellik.

FAT'ta olduğu gibi, ana bilgi birimi NTFS'de bu bir kümedir. Masada Şekil 5, çeşitli kapasitelerdeki birimler için varsayılan küme boyutlarını göstermektedir.

Bir NTFS dosya sistemi oluşturduğunuzda, formatlayıcı bir Ana Dosya Tablosu (MTF) dosyası ve meta verileri depolamak için diğer alanlar oluşturur. Meta veriler NTFS tarafından dosya yapısını uygulamak için kullanılır. MFT'deki ilk 16 giriş NTFS'nin kendisi tarafından ayrılmıştır. $Mft ve $MftMirr meta veri dosyalarının konumu, diskin önyükleme sektöründe kaydedilir. MFT'deki ilk giriş bozuksa, NTFS birincinin bir kopyasını bulmak için ikinci girişi okur. Önyükleme sektörünün tam bir kopyası birimin sonunda bulunur. Masada Şekil 6, MFT'de depolanan ana meta verileri listeler.

Geriye kalan MFT girişleri, birimde bulunan her dosya ve dizin için girişler içerir.

Genellikle bir dosya tek bir MFT girişi kullanır, ancak bir dosyanın çok sayıda özniteliği varsa veya çok parçalanmışsa, dosya hakkındaki bilgileri depolamak için ek girişler gerekebilir. Bu durumda temel kayıt adı verilen dosyanın ilk kaydı, diğer kayıtların konumunu saklar. Küçük dosyalar ve dizinlerle ilgili veriler (1500 bayta kadar) tamamen ilk kayıtta bulunur.

NTFS'deki dosya öznitelikleri

Bir NTFS birimindeki işgal edilen her sektör bir veya başka bir dosyaya aittir. Dosya sistemi meta verileri bile dosyanın bir parçasıdır. NTFS, her dosyayı (veya dizini) bir dizi dosya özniteliği olarak ele alır. Dosya adı, güvenlik bilgileri ve hatta içindeki veriler gibi öğeler dosya öznitelikleridir. Her öznitelik, belirli bir tür koduyla ve isteğe bağlı olarak bir öznitelik adıyla tanımlanır.

Dosya öznitelikleri bir dosya kaydına uyuyorsa bunlara yerleşik öznitelikler adı verilir. Bu nitelikler her zaman dosya adı ve oluşturulduğu tarihtir. Dosya bilgilerinin tek bir MFT kaydına sığmayacak kadar büyük olduğu durumlarda, bazı dosya öznitelikleri yerleşik olmaktan çıkar. Yerleşik öznitelikler bir veya daha fazla kümede depolanır ve geçerli birim için alternatif veri akışını temsil eder (bununla ilgili daha fazla bilgi aşağıdadır). NTFS, yerleşik ve yerleşik olmayan özniteliklerin konumunu tanımlamak için bir Öznitelik Listesi özniteliği oluşturur.

Masada Şekil 7, NTFS'de tanımlanan ana dosya özniteliklerini göstermektedir. Bu liste gelecekte genişletilebilir.

CDFS dosya sistemi

Windows 2000, CD-ROM'daki bilgilerin düzenini açıklayan ISO'9660 standardına uygun CDFS dosya sistemi için destek sağlar. Destekleniyor uzun isimler ISO'9660 Seviye 2'ye uygun dosyalar.

Kullanılmak üzere bir CD-ROM oluştururken Windows kontrolü 2000'de aşağıdaki hususlar akılda tutulmalıdır:

  • tüm dizin ve dosya adları 32 karakterden az içermelidir;
  • tüm dizin ve dosya adları yalnızca büyük harf karakterlerden oluşmalıdır;
  • dizin derinliği kökten itibaren 8 düzeyi geçmemelidir;
  • Dosya adı uzantılarının kullanımı isteğe bağlıdır.

Dosya sistemlerinin karşılaştırılması

Microsoft Windows 2000 altında FAT16, FAT32, NTFS dosya sistemlerini veya bunların kombinasyonlarını kullanmak mümkündür. İşletim sisteminin seçimi aşağıdaki kriterlere bağlıdır:

  • bilgisayarın nasıl kullanıldığı;
  • donanım platformu;
  • sabit sürücülerin boyutu ve sayısı;
  • bilgi Güvenliği

FAT dosya sistemleri

Daha önce fark etmiş olabileceğiniz gibi, dosya sistemlerinin adlarındaki - FAT16 ve FAT32 - sayılar, dosya tarafından kullanılan küme numaraları hakkındaki bilgileri depolamak için gereken bit sayısını gösterir. Böylece FAT16 16 bit adresleme kullanır ve buna göre 2 adet 16 adrese kadar kullanmak mümkündür. Windows 2000'de FAT32 dosya konumu tablosunun ilk dört biti kendi amaçları için kullanılır, dolayısıyla FAT32'de adres sayısı 2 28'e ulaşır.

Masada Şekil 8, FAT16 ve FAT32 dosya sistemleri için küme boyutlarını göstermektedir.

FAT32, küme boyutundaki önemli farklılıkların yanı sıra kök dizinin genişlemesine de olanak tanır (FAT16'da giriş sayısı 512 ile sınırlıdır ve uzun dosya adları kullanılırsa daha da düşük olabilir).

FAT16'nın Avantajları

FAT16'nın avantajları arasında şunlar yer almaktadır:

  • işletim sistemleri tarafından desteklenen dosya sistemi MSDOS sistemleri, Windows 95, Windows 98, Windows NT, Windows 2000 ve ayrıca bazı UNIX işletim sistemleri;
  • bu dosya sistemindeki hataları düzeltmenize ve verileri geri yüklemenize olanak tanıyan çok sayıda program vardır;
  • sabit sürücüden önyüklemeyle ilgili sorunlar ortaya çıkarsa, sistem bir disketten önyüklenebilir;
  • Bu dosya sistemi 256 MB'tan küçük birimler için oldukça verimlidir.
FAT16'nın dezavantajları

FAT16'nın ana dezavantajları şunlardır:

  • kök dizin 512'den fazla öğe içeremez. Uzun dosya adlarının kullanılması bu öğelerin sayısını önemli ölçüde azaltır;
  • FAT16 maksimum 65.536 kümeyi destekler ve bazı kümeler işletim sistemi tarafından rezerve edildiğinden kullanılabilir küme sayısı 65.524'tür.Her kümenin belirli bir mantıksal birim için sabit bir boyutu vardır. Maksimum küme boyutunda (32 KB) maksimum küme sayısına ulaşıldığında, desteklenen maksimum birim boyutu 4 GB (Windows 2000 altında) ile sınırlıdır. MS-DOS, Windows 95 ve Windows 98 ile uyumluluğu sürdürmek için FAT16 kapsamındaki birim boyutu 2 GB'ı geçmemelidir;
  • FAT16 yerleşik dosya korumasını ve sıkıştırmasını desteklemez;
  • Büyük disklerde maksimum küme boyutunun kullanılması nedeniyle çok fazla alan kaybedilir. Bir dosya için alan, dosyanın boyutuna göre değil, kümenin boyutuna göre tahsis edilir.
FAT32'nin Avantajları

FAT32'nin avantajları arasında şunlar yer almaktadır:

  • disk alanı tahsisi özellikle büyük diskler için daha verimlidir;
  • FAT32'deki kök dizin düzenli bir kümeler zinciridir ve diskin herhangi bir yerinde bulunabilir. Bu sayede FAT32, kök dizindeki öğe sayısına herhangi bir kısıtlama getirmez;
  • daha küçük kümelerin kullanılması nedeniyle (8 GB'a kadar disklerde 4 KB), işgal edilen disk alanı genellikle FAT16'ya göre% 10-15 daha azdır;
  • FAT32 daha güvenilir bir dosya sistemidir. Özellikle kök dizini taşıma ve kullanma yeteneğini destekler. yedek kopya YAĞ. Ayrıca önyükleme kaydı, dosya sistemi için kritik olan bir dizi veri içerir.
FAT32'nin dezavantajları

FAT32'nin ana dezavantajları:

  • Windows 2000 altında FAT32 kullanıldığında birim boyutu 32 GB ile sınırlıdır;
  • FAT32 birimleri diğer işletim sistemlerinde mevcut değildir; yalnızca Windows 95 OSR2 ve Windows 98'de mevcuttur;
  • Önyükleme sektörü yedeklemesi desteklenmez;
  • FAT32 yerleşik dosya korumasını ve sıkıştırmasını desteklemez.

Dosya sistemi NTFS

Microsoft, Windows 2000'i çalıştırırken, birden fazla işletim sisteminin kullanıldığı yapılandırmalar (Windows 2000 ve Windows NT hariç) dışında, tüm sabit sürücü bölümlerinin NTFS olarak biçimlendirilmesini önerir. FAT yerine NTFS kullanmak, NTFS'de bulunan özellikleri kullanmanızı sağlar. Bunlar özellikle şunları içerir:

  • iyileşme olasılığı. Bu yetenek dosya sistemine yerleştirilmiştir. NTFS, bir protokol ve bazı bilgi kurtarma algoritmaları kullanması nedeniyle veri güvenliğini garanti eder. Sistem arızası durumunda NTFS protokolü kullanır ve Ek Bilgilerİçin otomatik kurtarma dosya sistemi bütünlüğü;
  • bilgi sıkıştırma. NTFS birimleri için Windows 2000, ayrı dosya sıkıştırmasını destekler. Bu tür sıkıştırılmış dosyalar, dosyadan okuma sırasında otomatik olarak gerçekleşen önceden sıkıştırmayı açma işlemi olmadan Windows uygulamaları tarafından kullanılabilir. Kapatılıp kaydedildiğinde dosya yeniden paketlenir;
  • Ayrıca NTFS'nin aşağıdaki avantajları da vurgulanabilir:

Bazı işletim sistemi özellikleri NTFS gerektirir;

Erişim hızı çok daha yüksektir - NTFS, bir dosyayı bulmak için gereken disk erişim sayısını en aza indirir;

Dosyaları ve dizinleri koruyun. Yalnızca NTFS birimlerinde dosyalar ve klasörler için erişim niteliklerini ayarlamak mümkündür;

NTFS kullanırken, Windows 2000 2 TB'a kadar birimleri destekler;

Dosya sistemi, önyükleme sektörünün yedek bir kopyasını tutar; birimin sonunda bulunur;

NTFS, dosya içeriklerine yetkisiz erişime karşı koruma sağlayan Şifrelenmiş Dosya Sistemini (EFS) destekler;

Kotaları kullandığınızda kullanıcılar tarafından tüketilen disk alanı miktarını sınırlayabilirsiniz.

NTFS'nin dezavantajları

NTFS dosya sisteminin dezavantajlarından bahsederken şunu belirtmek gerekir:

  • NTFS birimleri MS-DOS, Windows 95 ve Windows 98'de mevcut değildir. Ayrıca, Windows 2000 altında NTFS'de uygulanan bazı özellikler Windows 4.0 ve önceki sürümlerde mevcut değildir;
  • Çok sayıda küçük dosya içeren küçük birimler için performans, FAT'a kıyasla daha düşük olabilir.

Dosya sistemi ve hız

Daha önce de öğrendiğimiz gibi, küçük hacimler için FAT16 veya FAT32 daha fazlasını sağlar hızlı erişim NTFS ile karşılaştırıldığında dosyalara göre değişir, çünkü:

  • FAT daha basit bir yapıya sahiptir;
  • dizin boyutu daha küçüktür;
  • FAT, yetkisiz erişime karşı dosya korumasını desteklemez; sistemin dosya izinlerini kontrol etmesine gerek yoktur.

NTFS, disk erişim sayısını ve bir dosyayı bulmak için gereken süreyi en aza indirir. Ayrıca dizin boyutu tek bir MFT girişine sığacak kadar küçükse girişin tamamı aynı anda okunur.

FAT'taki bir giriş, dizindeki ilk kümenin küme numarasını içerir. Bir FAT dosyasını görüntülemek, tüm dosya yapısının aranmasını gerektirir.

Kısa ve uzun dosya adları içeren dizinlerde gerçekleştirilen işlemlerin hızını karşılaştırırken, FAT işlemlerinin hızının işlemin kendisine ve dizinin boyutuna bağlı olduğunu unutmayın. FAT, var olmayan bir dosyayı ararsa tüm dizini arar; bu, NTFS tarafından kullanılan B ağacı tabanlı yapıyı aramaktan daha uzun süren bir işlemdir. Bir dosyayı bulmak için gereken ortalama süre, FAT'ta N/2'nin bir fonksiyonu olarak ve NTFS'de log N olarak ifade edilir; burada N, dosya sayısıdır.

Aşağıdaki faktörler Windows 2000'in dosyaları okuma ve yazma hızını etkiler:

  • dosya parçalanması. Dosya oldukça parçalıysa, NTFS'nin tüm parçaları bulması için genellikle FAT'tan daha az disk erişimi gerekir;
  • küme boyutu. Her iki dosya sistemi için de varsayılan küme boyutu birim boyutuna bağlıdır ve her zaman 2'nin katı olarak ifade edilir. FAT16'daki adresler 16 bit, FAT32'de - 32 bit, NTFS'de - 64 bit;
  • FAT'taki varsayılan küme boyutu, dosya konum tablosunun maksimum 65.535 girişe sahip olabileceği gerçeğine dayanmaktadır - küme boyutu, birim boyutunun 65.535'e bölünmesinin bir fonksiyonudur. Bu nedenle, bir FAT birimi için varsayılan küme boyutu her zaman şu şekildedir: aynı boyuttaki bir NTFS biriminin küme boyutundan daha büyük. FAT birimleri için daha büyük küme boyutunun, FAT birimlerinin daha az parçalanabileceği anlamına geldiğini unutmayın;
  • küçük dosyaların konumu. Kullanma NTFS dosyaları MFT kaydında küçük boyut bulunur. Tek bir MFT kaydına sığan dosyanın boyutu, o dosyadaki özniteliklerin sayısına bağlıdır.

NTFS birimlerinin maksimum boyutu

Teorik olarak NTFS, 2 adet 32 ​​kümeye kadar olan birimleri destekler. Ancak yine de, bu boyuttaki sabit sürücülerin bulunmamasına ek olarak, maksimum birim boyutunda başka kısıtlamalar da vardır.

Böyle bir kısıtlama bölüm tablosudur. Endüstri standartları, bölme tablosunun boyutunu 2 ile 32 sektör arasında sınırlar. Diğer bir sınırlama ise genellikle 512 bayt olan sektör boyutudur. Sektör boyutu gelecekte değişebileceği için mevcut boyut, tek bir birimin boyutunu 2 TB (2 32 x 512 bayt = 2 41) ile sınırlandırmaktadır. Dolayısıyla 2 TB, NTFS fiziksel ve mantıksal birimleri için pratik sınırdır.

Masada Şekil 11 NTFS'nin ana sınırlamalarını göstermektedir.

Dosyalara ve dizinlere erişimi denetleme

NTFS birimlerini kullanırken dosyalara ve dizinlere erişim haklarını ayarlayabilirsiniz. Bu izinler, hangi kullanıcıların ve grupların bunlara erişebileceğini ve hangi düzeyde erişime izin verildiğini gösterir. Bu erişim hakları, hem dosyaların bulunduğu bilgisayarda çalışan kullanıcılar için hem de dosyanın uzaktan erişime açık bir dizinde bulunması durumunda dosyalara ağ üzerinden erişen kullanıcılar için geçerlidir.

NTFS altında, dosya ve dizin izinleriyle birlikte uzaktan erişim izinlerini de ayarlayabilirsiniz. Ayrıca dosya öznitelikleri (salt okunur, gizli, sistem) de dosyaya erişimi kısıtlar.

FAT16 ve FAT32 altında dosya özniteliklerini ayarlamak da mümkündür, ancak bunlar dosya erişim haklarını sağlamaz.

Windows 2000'de kullanılan NTFS sürümü, yeni bir erişim izni türü olan devralınan izinleri tanıttı. Güvenlik sekmesi seçeneği içerir Üst öğeden devralınabilen izinlerin bu dosya nesnesine yayılmasına izin ver, varsayılan olarak etkindir. Bu seçenek, dosyalara ve alt dizinlere erişim haklarını değiştirmek için gereken süreyi önemli ölçüde azaltır. Örneğin, yüzlerce alt dizin ve dosya içeren bir ağaca erişim haklarını değiştirmek için bu seçeneği etkinleştirmeniz yeterlidir; Windows NT 4'te her bir dosyanın ve alt dizinin niteliklerini değiştirmeniz gerekir.

İncirde. Şekil 5, Özellikler iletişim panelini ve Güvenlik sekmesini (Gelişmiş bölüm) göstermektedir - dosyaya genişletilmiş erişim hakları listelenmiştir.

FAT hacimleri için erişimi yalnızca ses seviyesinde kontrol edebileceğinizi ve bu kontrolün ancak uzaktan erişim ile mümkün olduğunu hatırlatalım.

Dosyaları ve dizinleri sıkıştırma

Windows 2000, NTFS birimlerinde bulunan dosya ve dizinlerin sıkıştırılmasını destekler. Sıkıştırılmış dosyalar herhangi bir Windows uygulaması tarafından okunabilir ve yazılabilir. Bunu yapmak için bunları önceden ambalajından çıkarmaya gerek yoktur. Kullanılan sıkıştırma algoritması, DoubleSpace (MS-DOS 6.0) ve DriveSpace'de (MS-DOS 6.22) kullanılanlara benzer, ancak önemli bir farkı vardır; MS-DOS altında birincil bölümün veya mantıksal aygıtın tamamı sıkıştırılırken, NTFS altında siz sıkıştırılırsınız. tek tek dosyaları ve dizinleri paketleyebilir.

NTFS sıkıştırma algoritması, boyutu 4 KB'a kadar olan kümeleri destekleyecek şekilde tasarlanmıştır. Küme boyutu 4 KB'tan büyükse NTFS sıkıştırma özellikleri kullanılamaz hale gelir.

Kendi kendini onaran NTFS

NTFS dosya sistemi kendi kendini iyileştirme yeteneğine sahiptir ve gerçekleştirilen eylemlerin günlüğünün ve bir dizi başka mekanizmanın kullanılması yoluyla bütünlüğünü koruyabilir.

NTFS, NTFS birimlerindeki sistem dosyalarını değiştiren her işlemi bir işlem olarak kabul eder ve bu tür bir işlemle ilgili bilgileri bir günlükte saklar. Başlatılan bir işlem tamamen tamamlanabilir (taahhüt) veya geri alınabilir (geri alma). İkinci durumda, NTFS birimi işlem başlamadan önceki durumuna geri döner. İşlemleri yönetmek için NTFS, bir işlemde yer alan tüm işlemleri diske yazmadan önce bir günlük dosyasına yazar. İşlem tamamlandıktan sonra tüm işlemler tamamlanmış olur. Bu nedenle NTFS kontrolü altında bekleyen hiçbir işlem olamaz. Disk arızası durumunda bekleyen işlemler basitçe iptal edilir.

NTFS ayrıca arızalı kümeleri anında tanımlamasına ve dosya işlemleri için yeni kümeler tahsis etmesine olanak tanıyan işlemler de gerçekleştirir. Bu mekanizmaya küme yeniden eşleme adı verilir.

Bu incelemede Microsoft Windows 2000'de desteklenen çeşitli dosya sistemlerine baktık, her birinin tasarımını tartıştık, avantaj ve dezavantajlarını belirttik. Bunlardan en umut verici olanı NTFS dosya sistemidir. büyük set diğer dosya sistemlerinde bulunmayan özellikler. Microsoft Windows 2000 tarafından desteklenen yeni NTFS sürümü daha da fazla işlevselliğe sahiptir ve bu nedenle Win 2000 işletim sistemini kurarken kullanılması önerilir.

BilgisayarPress 7"2000

FatF'leri her kullandığımda, içeride her şeyin nasıl çalıştığını anlamanın güzel olacağını düşünüyorum. Bu soruyu uzun süre erteledim ve sonunda buzlar kırıldı. Yani küresel amaç hafıza kartlarını tütsülemek, eğer detaylı bir şekilde çalışırsa mevcut amaç dosya sistemiyle ilgilenmektir.

Hemen söyleyeyim, kendi şoförümü yazmak ya da incelikleri detaylı anlamak gibi bir amacım yoktu, sadece ilgilendim. Görevin anlaşılması oldukça basit, dolayısıyla burada "kodlar" olmayacak.

Yani anlamamız gereken ilk şey, bir hafıza kartıyla doğrudan iletişim kurarken 512 bayt okuyabilir veya yazabiliriz, başka hiçbir işlem yapılmaz. Dosyaları sürekli kopyalayıp sildiğimiz için ve dosya boyutları her zaman farklı olduğundan, kartta kayıtlı alanlarla karışık boş alanlar görünecektir. Kullanıcının veri yerleştirme konusunda endişelenmesine gerek kalmaması için bu endişeleri gideren bir katman vardır; bu dosya sistemidir.

Yukarıda belirtildiği gibi, yalnızca 512 baytın katlarında yazabilir ve okuyabilirsiniz; 1 sektör. Ayrıca bir kavram da var - bir küme basitçe birkaç sektörden oluşur, örneğin, küme boyutu 16 kB ise, bu, 16000/512 = 31,25 veya daha doğrusu 32 sektöre sahip olduğu ve gerçek küme boyutunun 16384 bayt olduğu anlamına gelir. Tüm dosyalar küme boyutunun katları olan bir boyutu kaplar. Dosya boyutu 1kB olsa ve küme 16kB olsa bile, dosya 16kB'nin tamamını kaplayacaktır.

Küçük kümeler oluşturmak mantıklı olacaktır ancak bu durumda maksimum dosya sayısı ve boyutları üzerindeki sınırlama devreye girer. FAT16, 16 bitlik veriler üzerinde çalışır, bu nedenle 2^16'dan fazla kümeyi sıkıştıramazsınız. Bu nedenle, boyutları ne kadar küçük olursa, küçük dosyalar için alan o kadar verimli kullanılır, ancak diske o kadar az bilgi sıkıştırılabilir. Ve tam tersi, boyut ne kadar büyük olursa, o kadar fazla bilgi sıkıştırabilirsiniz, ancak küçük dosyalar için alan o kadar az verimli kullanılır. En büyük boy küme 64kB'dir, dolayısıyla FAT16 için maksimum 64kb*2^16 = 4Gb'dir.

Başlangıç ​​verileri: 1GB micro SD hafıza kartı var. MYDISK etiketli, tam biçimlendirilmiş, küme boyutu 16kB.

Bir Hex düzenleyiciye ihtiyacınız olacak, ancak herhangi bir düzenleyici çalışmayacaktır; yalnızca diskteki dosyaları değil, tüm diski görüntüleyebilen bir düzenleyiciye ihtiyacınız vardır. Bulabildiğim kadarıyla: WinHex en uygunudur ancak ücretlidir; HxD basit ve ücretsizdir ancak değişiklikleri diske kaydetmesini sağlayamadım; DMDE biraz kullanıcı dostu değil, ücretsiz ve değişiklikleri kaydetmenize izin veriyor. Genel olarak HxD'ye karar verdim.

İlk olarak, FAT16'nın yapısını dikkate almakta fayda var; resim, dosya sisteminin çeşitli bölümlerinin hangi sırayla yerleştirildiğini göstermektedir.

Tüm hizmet bilgileri önyükleme sektöründe saklanır. FAT alanı, dosya verilerinin diskte nasıl bulunduğuna ilişkin bilgileri depolar. Kök dizin, diskin kökünde hangi dosyaların bulunduğu hakkında bilgi içerir. Veri alanı, dosyaların içerdiği bilgileri içerir. Tüm alanlar birbirini kesinlikle arka arkaya takip eder, yani. Önyükleme sektöründen sonra FAT alanı hemen başlar. Aşağıdaki ayrıntılara bakalım.

Görev: Dosya adlarının ve içeriklerinin düzenlenme prensibini anlamak. Hangi dosyaların mevcut olduğunu anlamak için kök dizini arayarak başlayalım. Önyükleme alanındaki veriler bu konuda bize yardımcı olacaktır.

En ilginç veriler tabloda gösterilmektedir

İhtiyacımız olan ilk şey bagaj alanının boyutunu bilmek. 0x0E adresine bakıyoruz ve önyükleme alanı için 4 sektörün tahsis edildiğini görüyoruz. FAT alanı 4*512 = 0x800 adresinde başlar.

FAT tablolarının sayısı, önyükleme alanının 0x10 adresiyle belirlenebilir. Örneğimizde iki tane var, neden iki, çünkü her tablo bir yedekleme tablosu olarak kopyalanır, böylece bir arıza durumunda veriler geri yüklenebilir. Tablo boyutu 0x16 adresinde belirtilir. Böylece dosyanın boyutu 512*2*0xEE = 0x3B800 olur ve kök dizin şu adreste başlar: 0x800 + 0x3B800 = 0x3C000

Kök dizinin içinde tüm öğeler 32 bayta bölünmüştür. İlk öğe birim etiketidir ancak sonraki öğeler dosya ve klasörlerdir. Dosya adı 0xE5 ile başlıyorsa bu, dosyanın silindiği anlamına gelir. Ad 0x00 ile başlıyorsa bu, önceki dosyanın son dosya olduğu anlamına gelir.

Oldukça ilginç bir kök dizin yapısıyla karşılaştım. Kart tamamen biçimlendirildi, ardından MyFile.txt ve BigFile.txt olarak yeniden adlandırılan 2 metin dosyası oluşturuldu.

Gördüğünüz gibi, iki dosyama ek olarak, kökeni yalnızca tahmin edilebilecek bir sürü sol görüşlü dosya oluşturuldu.

Burada vurgulanabilecek en önemli şey dosyamızın verilerinin başladığı ilk kümenin adresidir. Adres her zaman 0x1A uzaklığında bulunur. Örneğin MyFile.txt dosyamızın adı 0x3C100 adresinde bulunuyor, içerisine 0x1A ekliyoruz, orada ilk kümenin numarasını görüyoruz. = 0x0002 yani. ikinci küme. BigFile.txt dosyası için veriler üçüncü kümeden başlar.

Ayrıca kök dizinde dosyanın son düzenlemesinin tarihini ve saatini de öğrenebilirsiniz, bu soru benim için pek ilginç değildi, bu yüzden onu atlayacağım. Kök dizinin size söyleyebileceği son yararlı şey, verinin nerede başladığını bulabilmemiz için boyutudur.

Boyut, önyükleme sektöründe 0x11(2 bayt) = 0x0200*32 = 0x4000 veya 16384 bayt adresinde gösterilir.

Kök adresine boyutunu ekleyelim: 3C000 + 4000 = 40000 ilk veri kümesinin adresidir ancak MyFile.txt'yi bulmak için ikincisine ihtiyacımız var. Kümedeki sektör sayısı 32, küme boyutu = 32*512 = 16384 veya 0x4000 olduğundan ilk kümenin adresine onun boyutunu yani boyutunu ekleyelim. Teorik olarak ikinci kümenin 0x44000'den başlaması gerekir.

0x44000 adresine gidiyoruz ve verilerin BigFile.txt'ye ait olduğunu görüyoruz (sadece çöp)

Görünüşe göre küçük bir incelik var, kümelerin numaralandırılması ikinciden başlıyor, bunun neden yapıldığı belli değil ama bu bir gerçek, yani. aslında üçüncü kümeye geçtik. Bir küme geriye giderek 0x40000 adresine gidelim ve beklenen verileri görelim.

Şimdi soru ortaya çıkıyor. Neden bir FAT tablosuna ihtiyacımız var? Mesele şu ki, veriler parçalanabilir, yani. Dosyanın başlangıcı bir kümede, sonu ise tamamen farklı bir kümede olabilir. Üstelik bunlar tamamen farklı kümeler de olabiliyor. Farklı veri alanlarına dağılmış birkaç tane olabilir. FAT tablosu bize kümeler arasında nasıl hareket edeceğimizi söyleyen bir tür haritadır.

Bir örnek verelim: BigFile.txt dosyasına bir grup rastgele çöp doldurulur, böylece bir değil birkaç kümeyi kaplar. FAT tablosunun başladığı yere gidip içeriğine bakıyoruz.

İlk sekiz bayt olan 0xF8FFFFFF, yağ tablosunun başlangıcının tanımlayıcısıdır. Sırada MyFile.txt dosyasına başvuran 2 bayt vardır; bunların içinde 0xFFFF yazılı olması, dosyanın yalnızca bir kümeyi kapladığı anlamına gelir. Ama bir sonraki BigFile.txt dosyası üçüncü kümede başlıyor, bunu kök dizinden hatırlıyoruz, dördüncüde devam ediyor, sonra 5,6,7'ye gidiyor... ve 12'de bitiyor yani. 10 kümeyi kaplar.

Durumun gerçekten böyle olup olmadığını kontrol edelim. Dosyanın ağırlığı 163kB'dir, yani. 163000/(32*512) = 9,9 küme kaplar, bu da beklenene oldukça benzer. FAT tablosundaki bir öğenin 2 bayt aldığını bir kez daha tekrarlayalım; 16 bit olduğundan FAT16 adı verilmiştir. Buna göre maksimum adres 0xFFFF'dir, yani. FAT16 0xFFFF*küme boyutu için maksimum ses seviyesi.

FAT32'ye geçelim. Yükleme kısmı biraz değiştirildi.

Bazı temel değişiklikler var. Dosya sistemi adı 0x52 adresine taşınmıştır; kök boyutu artık göz ardı edilmektedir. Veri alanı FAT tablolarının hemen arkasındadır, kök dizin ise veri alanının içindedir. Ayrıca kök dizinin sabit bir boyutu yoktur.

Veri alanı adresi hesaplanır:
önyükleme sektörü boyutu + FAT tablosu, benim durumumda şu ortaya çıktı:
746496 + (3821056 * 2) = 0x800000

Kök dizin adresi hesaplanır:
(kök dizinin ilk kümesinin numarası - 2) * küme boyutu + veri alanının başlangıcının adresi,
onlar. bu örnekte veri alanının başlangıcına denk gelecektir.

Daha önce olduğu gibi kökteki veriler 32 bayt yer kaplıyor, daha önce olduğu gibi "silinmiş" sihirli dosyalar, bunların geçici not defteri dosyaları olduğunu varsayıyorum.

Ancak MYFILE.txt dosyasındaki ilk kümenin başlangıcı artık iki bayt tarafından belirleniyor; en yüksek olanı 0x14 uzaklığında, en düşük olanı ise 1A'dan önceki gibi. Bu nedenle dosyanın ilk veri kümesinin numarası şöyle olacaktır:
8000A0 + 0x14 = 0x8000B4 - yüksek bayt
8000A0 + 0x1A = 0x8000BA - düşük bayt
Benim durumumda kartın yalnızca bir dosyası vardı, yani bu üçüncü küme.

FAT tablosu önceki durumda olduğu gibi aranır, ancak şimdi öğeler 4 bayt kaplar, dolayısıyla FAT32 adı verilir. Unsurların düzenlenmesinin ideolojisi önceki durumdakiyle tamamen aynıdır.

Masa için faydalı şeyler
F8 FF FF F0 - ilk küme
FF FF FF 0F - son küme
FF FF FF F7 - hasarlı küme

Veriler nerede?
veri alanının başlangıcı + küme boyutu * (kök küme numarası - 1)
= 0x800000 + (2*4096) = 0x801000

Umarım genel anlamda netleşmiştir, doğaüstü hiçbir şey yokmuş gibi görünüyor. Okuyup tekrarlayan kurabiye yiyebilir :)

YAĞ(İngilizce) Dosya Paylaştırma Masa- “dosya ayırma tablosu”), basitliği nedeniyle hala flash sürücüler için yaygın olarak kullanılan klasik bir dosya sistemi mimarisidir. Disketlerde ve diğer bazı depolama ortamlarında kullanılır. Daha önce sabit disklerde kullanılıyordu.

Dosya sistemi 1977 yılında Bill Gates ve Mark MacDonald tarafından geliştirildi ve ilk olarak 86-DOS işletim sisteminde kullanıldı. 86-DOS daha sonra Microsoft tarafından satın alındı ​​ve Ağustos 1981'de piyasaya sürülen MS-DOS 1.0'ın temeli oldu. FAT, 1 MB'tan küçük disketlerle çalışacak şekilde tasarlanmıştı ve başlangıçta sabit diskler için destek sağlamıyordu.

Şu anda FAT'ın dört sürümü bulunmaktadır - FAT8, FAT12, FAT16 Ve FAT32. Disk yapısındaki kayıtların bit derinliği bakımından farklılık gösterirler; küme numarasını depolamak için ayrılan bit sayısı. FAT12 esas olarak disketler için, FAT16 küçük diskler için, FAT32 ise sabit diskler için kullanılır. FAT tabanlı yeni bir dosya sistemi geliştirildi exFAT(genişletilmiş FAT), öncelikle flash sürücüler için kullanılır.

FAT dosya sistemi boş disk alanını baştan sona sırayla doldurur. Yeni bir dosya oluştururken veya mevcut dosyayı büyütürken, dosya ayırma tablosundaki ilk boş kümeyi arar. Bazı dosyalar silinmiş ve diğerlerinin boyutu değişmişse, ortaya çıkan boş kümeler diske dağılacaktır. Dosya verilerini içeren kümeler bir satırda yer almıyorsa dosya parçalanmış. Ağır şekilde parçalanmış dosyalar, bir sonraki dosya kaydını ararken okuma/yazma kafalarının diskin bir alanından diğerine hareket etmesi gerekeceğinden verimliliği önemli ölçüde azaltır. Dosyayı depolamak için ayrılan kümelerin yan yana yerleştirilmesi tavsiye edilir, çünkü bu, onu aramak için gereken süreyi azaltır. Ancak bu yalnızca özel bir program kullanılarak yapılabilir; bu işleme denir. birleştirme dosya.

FAT'ın diğer bir dezavantajı performansının bir dizindeki dosya sayısına bağlı olmasıdır. Çok sayıda dosya varsa (yaklaşık bin), bir dizindeki dosya listesini okuma işlemi birkaç dakika sürebilir. FAT, dosya sahipliği veya dosya izinleri gibi bilgileri saklamaz.

FAT, bilgisayarın anormal kapanması nedeniyle dosya bozulmasını engellemeyen basit bir dosya sistemidir, en yaygın dosya sistemlerinden biridir ve çoğu işletim sistemi tarafından desteklenir.

Yağ dosya sisteminin organizasyonu

Tüm modern disk işletim sistemleri, verileri disklerde depolamak ve bunlara erişim sağlamak için tasarlanmış bir dosya sisteminin oluşturulmasını sağlar.Verilerin bir diske yazılabilmesi için yüzeyinin yapılandırılması gerekir - yani. bölmek sektörlere Ve Parçalar.

A yolu

C kümesi

Şekil 1 - Disk yapısı

Yollar- bunlar diskin yüzeyini kaplayan eşmerkezli dairelerdir. Diskin kenarına en yakın parçaya 0 numarası, sonraki parçaya - 1 vb. atanır. Disket çift taraflı ise her iki taraf da numaralandırılır. Birinci tarafın numarası 0, ikinci tarafın numarası 1'dir.

Her parça adı verilen bölümlere ayrılmıştır. sektörler. Sektörlere ayrıca numaralar verilmiştir. Pistteki ilk sektöre 1, ikinci sektöre 2 vb. numara atanır.

Bir sabit sürücü bir veya daha fazla yuvarlak plakadan oluşur. Plakanın her iki yüzeyi de bilgi depolamak için kullanılır. Her yüzey raylara, raylara ve sektörlere bölünmüştür. Aynı yarıçaptaki yollar silindir. Böylece, tüm sıfır izler sıfır numaralı silindiri oluşturur, 1 numaralı izler 1 numaralı silindiri oluşturur, vb.

Bu nedenle, bir sabit sürücünün yüzeyi, boyutları sayılar olan üç boyutlu bir matris olarak düşünülebilir. yüzey, silindir Ve sektörler. Silindir, farklı yüzeylere ait olan ve dönme ekseninden eşit uzaklıkta bulunan tüm izlerin bir kümesi olarak anlaşılmaktadır.

FAT'ta dosya adları 8.3 formatındadır ve yalnızca ASCII karakterlerinden oluşur. VFAT, uzun (255 karaktere kadar) dosya adları için destek ekledi. Uzun Dosya Adı, LFN) UTF-16LE kodlamasında, LFN'ler 8.3 adla eşzamanlı olarak depolanır ve geriye dönük olarak SFN'ler olarak adlandırılır. Kısa Dosya Adı). LFN'ler arama sırasında büyük/küçük harfe duyarlı değildir, ancak büyük harflerle saklanan SFN'lerden farklı olarak LFN'ler, dosya oluşturulduğunda belirtilen büyük/küçük harf durumunu korur.

FAT sistem yapısı

FAT dosya sisteminde bitişik disk sektörleri küme adı verilen birimler halinde birleştirilir. Bir kümedeki sektörlerin sayısı ikinin üssüne eşittir (aşağıya bakınız). Dosya verilerini depolamak için tam sayıda küme (en az bir) tahsis edilmiştir; bu nedenle, örneğin, dosya boyutu 40 bayt ve küme boyutu 4 KB ise, gerçekte kendisine ayrılan alanın yalnızca %1'i kullanılacaktır. dosya bilgilerine göre. Bu gibi durumların önüne geçebilmek için, kümelerin boyutunun küçültülmesi, adres bilgisi miktarının azaltılması ve dosya işlemlerinin hızının arttırılması (tersi) tavsiye edilir. Uygulamada bir miktar uzlaşma seçilir. Disk kapasitesi tam sayıda kümeyle ifade edilemediğinden, genellikle birimin sonunda sözde kümeler bulunur. fazla sektörler - işletim sistemi tarafından bilgi depolamak için tahsis edilemeyen, küme boyutundan daha küçük bir "kalan".

FAT32 birim alanı mantıksal olarak üç bitişik alana bölünmüştür:

  • Rezerve alan. Bölüm önyükleme kaydına ait hizmet yapılarını içerir (Bölüm Önyükleme Kaydı - PBR, bunu Ana Önyükleme Kaydı'ndan ayırmak için - diskin ana önyükleme kaydı; PBR'ye genellikle yanlış bir şekilde önyükleme sektörü de denir) ve bir önyükleme sektörü başlatılırken kullanılır. hacim;
  • Veri alanının kümelerine karşılık gelen bir dizi indeks işaretçisini ("hücreler") içeren bir FAT tablosu alanı. Güvenilirlik amacıyla genellikle diskte FAT tablosunun iki kopyası bulunur;
  • Dosyaların gerçek içeriklerinin (yani metinlerin) kaydedildiği veri alanı metin dosyaları, resim dosyaları için kodlanmış görüntü, ses dosyaları için dijitalleştirilmiş ses vb. - ayrıca sözde. meta veriler - dosya ve klasörlerin adları, nitelikleri, oluşturulma ve değiştirilme zamanları, boyutları ve diskteki yerleşimine ilişkin bilgiler.

FAT12 ve FAT16 ayrıca kök dizin alanını da özel olarak tahsis eder. Sabit bir konumu (FAT tablosunun son öğesinden hemen sonra) ve sektörlerde sabit bir boyutu vardır.

Bir küme bir dosyaya aitse, karşılık gelen hücre aynı dosyanın bir sonraki kümesinin numarasını içerir. Hücre, dosyanın son kümesine karşılık geliyorsa, özel bir değer içerir (FAT16 için FFFF 16). Bu şekilde bir dosya kümeleri zinciri oluşturulur. Tablodaki kullanılmayan kümeler sıfırlara karşılık gelir. “Kötü” kümeler (örneğin, cihazın ilgili alanının okunamaması nedeniyle işleme alınmayanlar) da özel bir koda karşılık gelir.

Bir dosya silindiğinde ismin ilk karakteri değiştirilir özel kod E5 16 ve tahsis tablosundaki dosya kümesi zinciri sıfıra sıfırlanır. Dosya boyutuyla ilgili bilgiler (dosya adının yanındaki dizinde bulunur) bozulmadan kaldığından, dosya kümeleri diskte sırayla bulunuyorsa ve üzerine yeni bilgiler yazılmamışsa, silinen dosyayı geri yüklemek mümkündür.

Önyükleme girişi

İlk FAT hacim yapısına BPB adı verilir. BIOS parametre bloğu ) ve sıfır sektördeki ayrılmış bir alanda yer almaktadır. Bu yapı, dosya sisteminin türünü ve depolama ortamının (disket veya sabit disk bölümü) fiziksel özelliklerini tanımlayan bilgileri içerir.

BIOS Parametre Bloğu

BPB, MS-DOS 1.x'e hizmet eden FAT'ta temelde yoktu, çünkü o zamanlar yalnızca iki tane vardı. çeşitli türler birimler - 360 kB'lik tek ve çift taraflı beş inçlik disketler ve birim formatı, FAT alanının ilk baytı tarafından belirlendi. BPB, 1983'ün başlarında MS-DOS 2.x'te, bundan böyle birim formatını belirleyecek zorunlu bir önyükleme sektörü yapısı olarak tanıtıldı; FAT'ın ilk baytına göre belirlemeye yönelik eski şema desteğini kaybetti. Ayrıca MS-DOS 2.0'da bir dosya ve klasör hiyerarşisi tanıtıldı (bundan önce tüm dosyalar kök dizinde saklanıyordu).

MS-DOS 2.x'teki BPB yapısı 16 bitlik bir "toplam sektör sayısı" alanı içeriyordu; bu, FAT'ın bu sürümünün temelde 2 16 = 65.536 sektörden büyük, yani 32 MB'tan büyük hacimler için uygulanamayacağı anlamına geliyordu. 512 baytlık standart sektör boyutuna sahip. MS-DOS 4.0'da (1988), yukarıdaki BPB alanı 32 bit'e genişletildi; bu, teorik birim boyutunun 232 = 4.294.967.296 sektöre veya 512 baytlık sektörle 2 TB'ye yükselmesi anlamına geliyordu.

BPB'nin bir sonraki değişikliği, FAT32'yi (Ağustos 1996'da) tanıtan Windows 95 OSR2 ile ortaya çıktı. Birim boyutundaki iki gigabayt sınırı kaldırıldı; bir FAT32 biriminin boyutu teorik olarak 8 TB'a kadar olabilir. Ancak her bir dosyanın boyutu 4 GB'ı geçemez. BIOS Parametre Bloğu FAT32, FAT'ın önceki sürümleriyle uyumluluk sağlamak için BPB FAT16'yı BPB_TotSec32 alanına kadar ve ardından farklılıklarla tekrarlar.

FAT32 "önyükleme sektörü" aslında 512 baytlık üç sektördür - sektörler 0, 1 ve 2. Her biri 0x1FE adresinde, yani sektör boyutu 512 bayt ise son iki baytta 0xAA55 imzasını içerir. Sektör boyutu 512 bayttan büyükse imza hem 0x1FE adresinde hem de sıfır sektörün son iki baytında bulunur, yani kopyalanır.

FSIbilgisi

FAT32 bölümünün önyükleme kaydı, adı verilen bir yapı içerir. FSIbilgisi, birimdeki boş kümelerin sayısını depolamak için kullanılır. FSInfo, kural olarak sektör 1'i kaplar (BPB_FSInfo alanına bakın) ve aşağıdaki yapıya sahiptir (sektörün başlangıcına göre adresler):

  • FSI_LeadSig. 4 baytlık 0x41615252 imzası, sektörün FSInfo yapısı için kullanıldığını gösterir.
  • FSI_Ayrılmış1. Sektörün 4. baytı ile 483. baytı arasındaki aralık sıfıra sıfırlanır.
  • FSI_StrucSig. Başka bir imza 0x1E4 adresinde bulunur ve 0x61417272 değerini içerir.
  • FSI_Free_Count. 0x1E8 adresindeki dört baytlık alan, sistem tarafından bilinen birimdeki boş kümelerin sayısının son değerini içerir. 0xFFFFFFFF değeri, boş kümelerin sayısının bilinmediği ve hesaplanması gerektiği anlamına gelir.
  • FSI_Nxt_Free. 0x1EC adresindeki dört baytlık alan, indeks işaretçileri tablosunda serbest kümelerin aranmasının başlaması gereken küme numarasını içerir. Genellikle bu alan, dosyayı depolamak için ayrılan son FAT kümesinin numarasını içerir. 0xFFFFFFFF değeri, boş küme arayışının FAT tablosunun en başından yani ikinci kümeden itibaren yapılması gerektiği anlamına gelir.
  • FSI_Reserved2. 0x1F0 adresinde ayrılmış 12 baytlık alan.
  • FSI_TrailSig. İmza 0xAA550000 - FSInfo sektörünün son 4 baytı.

FSInfo'yu tanıtmanın amacı sistem çalışmasını optimize etmektir, çünkü FAT32'de indeks işaretçileri tablosu önemli olabilir ve onu bayt bayt taramak oldukça zaman alabilir. Ancak FSI_Free_Count ve FSI_Nxt_Free alanlarının değerleri doğru olmayabilir ve yeterliliği kontrol edilmelidir. Ayrıca, genellikle sektör 7'de bulunan FSInfo yedeklemesinde bile güncellenmezler.

FAT birim tipini belirleme

Bir birimin FAT türünün belirlenmesi (yani FAT12, FAT16 ve FAT32 arasındaki seçim), birimdeki küme sayısına göre işletim sistemi tarafından yapılır ve bu sayı da BPB alanlarından belirlenir. Öncelikle kök dizinin sektör sayısı hesaplanır:

RootDirSectors = (BPB_RootEntCnt * 32) / BPB_BytsPerSec

DataSec = TotSec - (BPB_ResvdSecCnt + (BPB_NumFATs * FATSz) + RootDirSectors)

Son olarak veri alanı kümelerinin sayısı belirlenir:

CountofClusters = DataSec / BPB_SecPerClus

Küme sayısına bağlı olarak dosya sistemiyle açık bir yazışma vardır:

  • Küme Sayısı< 4085 - FAT12
  • Küme Sayısı = 4085 ÷ 65524 - FAT16
  • Küme Sayısı > 65524 - FAT32

Resmi spesifikasyona göre FAT tipini belirlemenin tek geçerli yolu budur. Belirtilen uyumluluk kurallarını ihlal eden bir birimin yapay olarak oluşturulması, Windows'un bunu yanlış işlemesine neden olur. Ancak, dosya sistemi türünü, genellikle yanlış yazılmış herhangi bir sürücü tarafından doğru bir şekilde belirlemek için, kritik değerlere yakın CountofClusters değerlerinden (4085 ve 65525) kaçınılması önerilir.

Zamanla FAT yaygın olarak kullanılmaya başlandı. çeşitli cihazlar DOS, Windows, OS/2, Linux arasındaki uyumluluk için. Microsoft, onları lisans almaya zorlama niyetinde olmadığını gösterdi [ belirtmek] .

Şubat 2009'da Microsoft, Linux tabanlı araç navigasyon sistemleri üreticisi TomTom'a patent ihlali iddiasıyla dava açtı.

Notlar

  1. http://cd.textfiles.com/megademo2/INFO/OS2_HPFS.TXT
  2. www.microsoft.com/mscorp/ip/tech/fathist.asp, archive.org adresinde
  3. Microsoft Genişletilebilir Ürün Yazılımı Girişimi FAT32 Dosya Sistemi Belirtimi 1.03. Microsoft (6 Aralık 2000). - Belge formatı Microsoft Word, 268 KB. Arşivlendi
  4. Peki ya VFAT? . TechNet Arşivi. Microsoft (15 Ekim 1999). 22 Ağustos 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 5 Nisan 2010.
  5. VFAT dosya sistemi uzantısı, aynı adı taşıyan dosya sistemi sürücüsüyle karıştırılmamalıdır. Windows içinÇalışma Grupları 3.11 ve korumalı modda MS-DOS işlevlerine (INT 21h) yapılan çağrıları işlemek için tasarlanmıştır (bkz: KB126746: Windows for Workgroups Sürüm Geçmişi. SÜRÜM 3.11 → Ağ Dışı Özellikler. Microsoft (14 Kasım 2003). 22 Ağustos 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 5 Nisan 2010.)
  6. Federal Patent Mahkemesi, Microsoft'un FAT patentinin hükümsüz ve geçersiz olduğunu ilan etti (İngilizce). çevrimiçi. Heise Zeitschriften Verlag (2 Mart 2007). Arşivlendi
  7. Brian Kahin. Microsoft, FAT Patentleriyle Dünyayı Çalıyor. Huffington Post (10 Mart 2009). 22 Ağustos 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 10 Mart 2009.
  8. Ryan Paul. FAT patentleriyle ilgili Microsoft davası OSS Pandora'nın Kutusu'nu (İngilizce) açabilir. Ars Teknik. Condé Nast Yayınları (25 Şubat 2009). Arşivlendi
  9. Glyn Moody.(İngilizce) . Bilgisayar dünyasıİngiltere. IDG (5 Mart 2009). 22 Ağustos 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Mart 2009.
  10. Steven J. Vaughan-Nichols. Linux şirketleri Microsoft patent koruma anlaşmaları (İngilizce) imzalar. Bilgisayar Dünyası Blogları. IDG (5 Mart 2009). 22 Ağustos 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 9 Mart 2009.
  11. Erica Ogg. TomTom, patent anlaşmazlığında Microsoft'a karşı çıkıyor. CNet (19 Mart 2009). 22 Ağustos 2011 tarihinde kaynağından arşivlendi. Erişim tarihi: 20 Mart 2009.

Bağlantılar

  • ECMA-107 (İngilizce) FAT standardı



Tepe