Menü
Bedava
kayıt
ana  /  Gezginler/ Linux dosya sistemleri karşılaştırması. Windows dosya sistemleri

Linux dosya sistemleri karşılaştırması. Windows dosya sistemleri

Linux işletim sistemi, çok çeşitli dosya sistemi türlerini destekler. Linux bakış açısından, dosya sistemleri kabaca dört gruba ayrılabilir:

  • "Yerel" dosya sistemleri. Bu, dosya sisteminin Linux'ta bulunan tüm öznitelikleri desteklediği anlamına gelir: erişim hakları, zaman damgaları, dosyanın sahibi hakkında bilgiler, vb.;
  • Yerel olmayan dosya sistemleri. Yani, Linux özniteliklerini desteklemeyen dosya sistemleri;
  • Gerçek. Bunlar, fiziksel ortamı olmayan dosya sistemleridir;
  • Ağ dosya sistemleri.

Yerel dosya sistemleri şunları içerir:

  • reiserf'ler

Ext2 dosya sistemi

Ext2, Linux'ta kullanılan ilk dosya sistemlerinden biridir ( Daha spesifik olarak, ilk Linux dosya sistemi minix idi. Ancak bu fs'nin yetenekleri oldukça sınırlıdır ve yalnızca Linux geliştirmenin ilk aşamalarında kullanılmıştır.). 1993 yılında kurulmuştur. Sistem çok güvenilir ve zamana göre test edilmiş olarak kabul edilir. Ancak ext2, 300MB'lık bir sabit sürücünün çok büyük kabul edildiği bir zamanda geliştirildiğinden, bazı sınırlamaları vardır. Bu fs'yi büyük bölümler için kullanmanın bir anlamı yoktur, bölümde çok sayıda dosya olduğunda yavaşlayacaktır. Yani, ext2 yavaş olarak kabul edilir ( Yavaş çok göreceli bir terimdir. Ext2, Linux'ta yavaş olarak kabul edilir. Ancak standart FreeBSD dosya sistemiyle karşılaştırdığınızda ext2 çok hızlıdır.). Tabii ki, disk boyutlarındaki artışla, yeni trendlerin ortaya çıkmasıyla birlikte, performansını ve işlevselliğini geliştirmek için dosya sisteminde değişiklikler yapıldı. Örneğin, POSIX ACL desteği. Ama yine de küresel değişikliklerden etkilenmedi ve bu da şunu söylemeyi mümkün kılıyor:

Evet, bana tamamen uyan tek dosya sistemi bu.

Ek olarak, ext2'nin ciddi sınırlamaları vardır:

  • Maksimum dosya boyutu 2048 GB'dir.
  • Maksimum dosya sistemi boyutu 32768 GB'dir.
  • Bir dizindeki maksimum alt dizin sayısı 32768'dir.

Günlüklü dosya sistemleri

Günümüzde ext2 dosya sistemi pratikte artık kullanılmamaktadır. Ve bu sınırlamaları hakkında bile değil, ext2 oldukça güvenilir bir dosya sistemidir. Her şey Linux sunucularının yükleme hızı ile ilgili. Sunucunun sürekli çalışması gerekiyor. Ancak mucizeler olmaz, bazen sunucunun aşırı yüklenmesi gerekir. Göreviniz, bir sistem çökmesinden sonra mümkün olduğunca çabuk yeniden başlatıldığından emin olmaktır. Sunucu açıldığında diskler kontrol edilir. Dosya sistemlerini, özellikle büyük olanları kontrol etme prosedürü oldukça uzun bir prosedürdür. Bu tür birkaç dosya sistemi varsa, kontrolleri çok uzun sürebilir. Ve sunucu çalışmalı!

Günlük kaydı dosya sistemleri, kontrol için harcanan zamanı azaltmak ve güvenilirliği artırmak için geliştirilmiştir. Veritabanlarıyla çalıştıysanız, muhtemelen işlem gibi bir şey biliyorsunuzdur. Birkaç SQL ifadesi bir işlemde birleştirilir. Sistem tüm deyimleri yürütmelidir. Bunlardan en az biri başarısız olursa, sistem işlemin başına geri döner. Bir işlem devam ederken sistem kapatılmışsa, açılışta mümkünse kalan deyimleri yürütmeye veya işlemin başına dönmeye çalışır.

Modern dosya sistemlerine işlem günlüğü desteği eklendi. Dosya sistemi işlemi açısından, dosya ile yapılan tüm işlemler tek bir işlem gibi görünür. Linux'ta dosya işlemlerine daha yakından bakarsanız, bir dosyayı yazmak veya değiştirmek, diskteki verilerle birçok eylemden oluşan oldukça karmaşık bir prosedürdür. İşlem günlüğü kullanılırken, diskte herhangi bir fiziksel değişiklik yapılmadan önce, günlükte dosya sistemi üzerinde gerçekleştirilecek tüm eylemleri kaydedecek yeni bir işlem açılır. Ve ancak işlem diske kaydedildikten sonra dosya sisteminde değişiklikler yapılacaktır.

Dosya sisteminin bağlantısı hatalı bir şekilde kesilirse, denetleyici önce işlem günlüğüne bakar ve içindeki verilere dayanarak, işlemin başladığı anda sistemi geri döndürmeye (geri almaya) veya mümkünse eylemleri tamamlamaya çalışır. işlemde açıklanmıştır. Günlüğün küçük olduğu göz önüne alındığında (ext3 dosya sisteminde 32 MB'dir), dosya sistemini geri yükleme işlemi önemli ölçüde hızlandırılır.

Ext3 dosya sistemi

Linux'ta günlüklü dosya sistemlerini uygulamaya ihtiyaç duyulduğunda, RedHat ext3 dosya sistemini geliştirdi. RedHat en az dirençli yolu seçti - iyi bilinen ext2'yi temel aldılar ve dergi desteği eklediler.

Ext2, fiziksel olarak ext3 ile aynıdır. Bu özellik, ext3 ile çalışmak için (dosya sistemleri oluşturmak, kontrol etmek ve yapılandırmak) ext2 ile çalışmak için aynı yardımcı programları kullanmayı mümkün kıldı.

Bir günlüğün eklenmesine rağmen, ext3 ext2'den daha hızlıdır. Ext3'ün avantajları, yalnızca gerekli eylemleri değil, aynı zamanda diğer günlük tutma sistemlerinin izin vermediği verileri de günlüğe kaydetme yeteneğini de içermelidir. Bu özellik ext3'ü çok güvenilir kılar.

Ext3, üç çalışma modunu destekler:

  • Geri Yazma - bu modda veri kaydı gerçekleşmez. Sözde meta veriler (dosya düğümü, bloklara bağlantılar) önce günlüğe yerleştirilir. Yalnızca günlüğe girdikten sonra veriler dosya sistemine yazılır.
  • Sıralı (varsayılan mod) - Bu mod, yukarıda açıklanana benzer. Tek fark, geri yazma modunda, tüm meta verilerin önce günlüğe yazılması ve ancak o zaman dosya sisteminde değişiklikler yapılmasıdır. Ve sıralı modda, bir blok hakkında bilgi günlüğe yerleştirildiğinde, bu blok dosya sisteminde hemen değiştirilir. Daha sonra bir sonraki bloğa ilişkin bilgiler günlüğe yazılır ve bloğa yazılır vb. Yani logdaki değişime paralel olarak veriler de değişir.
  • Günlük - tam günlük kaydı modu. Günlük, meta verileri ve verileri içerir. Ve ancak bundan sonra dosya sisteminde bir değişiklik olur.

Dosya sistemi ReiserFS

ReiserFS, Hans Reiser ve şirketi Namesys (http://www.namesys.com) tarafından geliştirilmiştir. Çok sayıda küçük dosyayı depolamak için çok uygun, çok hızlı bir dosya sistemidir.

Küçük dosyaları diske yerleştirme sorununu çözmeyi başardı. Örneğin, ext2 / 3'te, tek bir karakter içeren bir dosyayı yerleştirmek için diskte bütün bir blok kullanılacaktır. Bir ext2 / 3 bloğu 1 ila 8 KB olabilir ( boyut dosya sisteminin boyutuna bağlıdır). Ve ReiserFS'de, birkaç dosyadan gelen veriler tek bir bloğa yerleştirilebilir. Ayrıca, dosya boyutu çok küçükse, veriler inode'a, yani doğrudan metadata'ya yerleştirilebilir.

Dosya sistemi optimize edilmiş ağaçlara (B ağacı) dayanmaktadır. Bu, dosya sisteminde arama hızını artırır ve bir dizindeki dosya ve dizin sayısını sınırlama sorununu ortadan kaldırır.

Bu dosya sistemi ayrıca büyük dosyaları çok güvenle işler.

ReiserFS 3.6 aşağıdaki sınırlamalara sahiptir:

  • Maksimum dosya boyutu 8 TB'dir (32 bit bilgisayarlar için);
  • Maksimum dosya sistemi boyutu 16 TB'dir.

Şimdi ReiserFS'nin bir sonraki versiyonu geliştiriliyor - dördüncüsü. 2.6.17 veya 2.6.18 çekirdeklerinde yer alması bekleniyor.

JFS dosya sistemi

Bu dosya sistemi IBM tarafından geliştirilmiştir ve GNU GPL kapsamında lisanslanmıştır. JFS'nin bir açıklaması internette şu adreste bulunabilir. JFS sadece Linux üzerinde değil, AIX ve OS/2 gibi diğer işletim sistemlerinde de kullanılmaktadır.

JFS, Günlüklü bir Dosya Sistemidir. Ana güçlü noktası, LVM (Mantıksal Hacim Yöneticisi) ile birlikte kullanılmasıdır. LVM, daha sonra normal bir sabit disk gibi bölümlenebilen birden çok fiziksel sabit disk bölümünü tek bir mantıksal bölmede birleştirmenize olanak tanır. Aynı zamanda, bazı LVM türleri anında yeni disk alanı bağlamanıza izin verir. Ve ext3 dosya sistemini büyüyen bölümlerde kullanırsanız, bir gün yeni bir dosya oluşturmanın imkansızlığı hakkında bir mesaj alacaksınız. Gerçek şu ki, ext3'te bir bölümü biçimlendirirken, boyuta bağlı olarak önceden sınırlı sayıda düğüm ayrılmıştır. Yani, maksimum dosya sayısı önceden bilinir. Dosya sisteminin boyutu artmazsa, normal çalışma için bu sayıda düğüm yeterlidir. JFS, dosya sistemini ve düğüm sayısını dinamik olarak büyütme yeteneğine sahiptir. Bu özellik sayesinde dosya sisteminin boyutu arttığında oluşturulan dosya sayısında bir sınırlama yoktur.

JFS dosya sistemi aşağıdaki kısıtlamalara sahiptir:

  • Maksimum dosya boyutu, işletim sisteminin bitliği ile sınırlıdır.
  • Maksimum dosya sistemi boyutu 512 TB'dir.

XFS dosya sistemi

XFS dosya sistemi SGI (eski Silicon Graphics, Inc.) tarafından geliştirilmiştir. XFS, 1994 yılında doğdu ve orijinal olarak IRIX işletim sistemiyle birlikte gönderildi. SGI, video iş istasyonları ve depolama sunucuları ile ünlüdür. Bu nedenle, dosya sistemi çok sayıda büyük dosyaya hizmet verecek ve büyük dizinleri destekleyecek şekilde optimize edilmiştir. Yapısı gereği çok sayıda küçük dosyayı da destekler. Hız açısından ReiserFS dosya sistemiyle karşılaştırılabilir ve güvenilirlik açısından Hans dosya sistemini geride bırakır ( ReiserFS dosya sisteminde sıfırdan ne kadar veri kaybettim. Yalnızca yedekleme kaydedildi. Bu nedenle artık sunucularda ReiserFS kullanmıyorum.).

XFS 64-bit dosya sistemi olduğu için büyük dosya desteği mümkündür. Ve dosya sisteminin hızı, iç yapıları bulmak ve tanımlamak için B + ağaçları kullanılarak elde edilir.

Dosya sisteminin iç yapısı oldukça karmaşıktır ve yapısının kısa bir açıklamasına gerek görmüyorum. Ayrıca, internette XFS'yi ayrıntılı olarak açıklayan iyi makaleler var:

Microsoft dosya sistemleri

Microsoft dosya sistemleri söz konusu olduğunda, Linux FAT ve NTFS'yi destekler. FAT ile her şey çok basit, dosya sisteminin yapısı biliniyor, bu yüzden Linux'ta tam olarak destekleniyor. FAT kullanırken dikkate alınması gereken tek şey, Linux'ta iki çeşit vardır:

  • msdos - FAT12 / 16.
  • vfat - FAT32.

Disketleri ve çeşitli USB depolama aygıtlarını kullanmayı düşünüyorsanız, FAT desteği etkinleştirilmelidir: flash kartlar, sabit sürücüler vb. Mesele şu ki, hepsi genellikle FAT olarak biçimlendirilir.

NTFS biraz daha karmaşıktır. Bu dosya sistemi normalde salt okunurdur. Kayıt modunda kullanılması tavsiye edilmez. Yazma modu desteklense de, ancak NTFS sürücülerinin belgelerini okursanız, orada büyük harflerle yazıldığını göreceksiniz: yazma modunda, yalnızca mevcut dosyaların içeriğini değiştirebilirsiniz, hiçbir durumda oluşturmamalısınız. yeni dosyalar, mevcut olanları silin veya yeniden boyutlandırın - bu, dosya sistemini bozabilir.

iso9660 ve udf dosya sistemleri

Bu dosya sistemleri, CD ve DVD'lerde bilgi depolamak için kullanılır.

Iso9660, başlangıçta birçok sınırlaması olan çok basit bir dosya sistemiydi. Örneğin, MS DOS'taki gibi dosya adları, dizin eklerinin sayısında sınırlama. Bu nedenle, iso9660'ın yeteneklerini genişletmek için birkaç eklenti yazılmıştır. UNIX dosyalarının özniteliklerini korumanıza izin veren eklentiler dahil. Tüm eklentiler, dosya sistemi sürücüsü tarafından desteklenir ve çalıştırmada herhangi bir zorluk olmamalıdır. Ayrıca, iso9660 sürücüsü, garip bir şekilde, kayıt modunu destekler. CD-ROM görüntüleri oluşturmak için kullanılır.

udf ile de herhangi bir özel sorun fark edilmedi. Böylece, CD ve DVD'lerle çalışma Linux'ta herhangi bir kısıtlama olmaksızın desteklenir.

proc dosya sistemi

Sanal dosya sistemleri kategorisine aittir. Çok kullanışlı bir dosya sistemi. Yönetici olarak, yeteneklerine çok sık başvuracaksınız. Linux dosya sisteminin organizasyonu ile ilgili ilk bölümlerden birinde, bu dosya sisteminin amacını kısaca ele aldım. Sadece / proc dizinindeki dosyaların, çekirdek veri alanının dosya sistemine eşlenmesi olduğunu hatırlatmak için. Yani, bir dosyanın içeriğine bakarsanız, aslında çekirdek veri alanının belirli bir bölümünü görürsünüz.

Aşağıda / proc dizininde bulabileceğiniz bazı ilginç dosyalar bulunmaktadır. Sisteminizdeki dosyaların içeriği, örnek olarak gösterilen dosyaların içeriklerinden farklı olacaktır.

/ işlem / cmdline

Başlatıldığında çekirdeğe iletilen komut satırını içerir.

# kedi cmdline BOOT_IMAGE = Linux-2613 ro root = 303 #

/ proc / işlemci bilgisi

İşlemci veya işlemciler hakkında bilgi.

# cat işlemci bilgisi işlemci: 0 satıcı_kimliği: OrijinalIntel işlemci ailesi: 6 model: 9 model adı: Intel (R) Pentium (R) M işlemci 1400MHz adımlama: 5 işlemci MHz: 1399.050 önbellek boyutu: 1024 KB fdiv_bug: hlt_bug: f00f_bug yok: coma_bug yok: fpu yok: evet fpu_exception: evet işlemci seviyesi: 2 wp: evet bayraklar: fpu vme de pse tsc msr mce cx8 eylül mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 tm pbe est tm2280

/ proc / cihazlar

Cihazların listesi.

# cat cihazları Karakter cihazları: 1 mem 2 pty 3 ttyp 4 / dev / vc / 0 4 tty 4 ttyS 5 / dev / tty 5 / dev / konsol 5 / dev / ptmx 7 vcs 10 misc 13 giriş 14 ses 21 sg 116 alsa 128 ptm 136 pts 171 ieee1394 180 usb 226 drm 254 pcmcia Blok cihazları: 3 ide0 7 loop 8 sd 11 sr 65 sd #

/ işlem / dma

DMA Kanallarını Kullanma.

# kedi dma 4: kademeli #

/ proc / dosya sistemleri

Desteklenen dosya sistemlerinin listesi.

# kedi dosya sistemleri nodev sysfs nodev rootfs nodev bdev nodev proc nodev sockfs nodev pipefs nodev futexfs nodev tmpfs nodev inotifyfs nodev eventpollfs nodev devpts ext3 ext2 nodev ramfs60 msfs nodev nodev ramfsuds vfat nodev

/ proc / kesintiler

Kesintilerin dağılımı.

# cat kesintiler CPU0 0: 850627 XT-PIC zamanlayıcı 1: 9691 XT-PIC i8042 2: 0 XT-PIC kademeli 7: 2 XT-PIC parport0 8: 1 XT-PIC rtc 9: 6620 XT-PIC acpi 11: 238626 XT -PIC Intel 82801DB-ICH4, yenta, yenta, eth0, eth1, ohci1394, ehci_hcd: usb1, uhci_hcd: usb2, uhci_hcd: usb3, uhci_hcd: usb4, [e-posta korumalı]: 0000: 01: 00.0 12: 65575 XT-PIC i8042 14: 11538 XT-PIC ide0 NMI: 0 LOC: 0 HATA: 0 MIS: 0 #

/ proc / modüller

Yüklenen modüllerin listesi.

5248 0 irtty_sir # Kedi modülleri - Canlı 0xf8a09000 sir_dev 13548 1 irtty_sir, Canlı 0xf8a1d000 irda 107768 1 sir_dev, Canlı 0xf8a3f000 crc_ccitt 1792 1 irda, Canlı 0xf8a04000 parport_pc 24324 0 - Canlı 0xf89e7000 ehci_hcd - Canlı 0xf8a16000 parport 30920 1 parport_pc, Canlı 0xf8a0d000 30416 0 uhci_hcd 27656 0 - Canlı Canlı 0xf897a000 usbcore 103.740 3 uhci_hcd, ehci_hcd, 0xf8990000 ohci1394 31092 0 - Canlı 0xf895e000 ieee1394 86.392 1 ohci1394, canlı 0xf891e000 ipw2100 78.204 0 - Canlı 0xf8936000 ieee80211 18.948 1 ipw2100, canlı 0xf8918000 ieee80211_crypt 4488 1 ieee80211, canlı 0xf88f8000 eepro100 26512 0 - Canlı 0xf8909000 pcmcia 30568 4 - Canlı 0xf89000000 firmware_class 7680 2 ipw2100, pcmcia, Canlı 0xf88f2000 yenta_socket 20748 4 - Canlı 0xf8879000 rsrc_nonstatic 11264 1 yenta_socket, Canlı 0xf88756 pcma_cent2

/ proc / bağlar

Takılı dosya sistemlerinin bir listesini içerir.

# cat mounts rootfs / rootfs rw 0 0 / dev / root / ext3 rw 0 0 proc / proc proc rw, nodiratime 0 0 sysfs / sys sysfs rw 0 0 yok / dev ramfs rw 0 0 / dev / hda5 / usr ext3 rw 0 0 / dev / hda6 / home ext3 rw 0 0 / dev / hda1 / mnt / win ntfs ro, noatime, nodiratime, uid = 0, gid = 0, fmask = 0177, dmask = 077, nls = iso8859-1, hatalar = devam et, mft_zone_multiplier = 1 0 0 devpts / dev / pts devpts rw 0 0 usbfs / proc / bus / usb usbfs rw 0 0 #

/ proc / bölümler

Tüm bağlı sürücüler için bölümlerin bir listesini içerir.

# kedi bölümleri majör minör #bloklar adı 3 0 58605120 hda 3 1 10485688 hda1 3 2 506520 hda2 3 3 9775080 hda3 3 4 1 hda4 3 5 9775048 hda5 3 6 28062688 hda6 #

/ işlem / pci

PCI veri yolunda algılanan aygıtların listesi.

Bu dosya, bazı cihazların çalışmama nedenlerini teşhis etmek için kullanılabilir. Kesintilere dikkat edin: 0 ise, cihaza herhangi bir nedenle kesinti atanmamış demektir. Bu dosyanın tam içeriğini vermeyeceğim, çok büyük.

# cat pci PCI aygıtları bulundu: Veriyolu 0, aygıt 0, işlev 0: Ana bilgisayar köprüsü: Intel Corporation 82855PM İşlemciden G / Ç Denetleyicisine (rev 3). 0xd0000000'de önceden alınabilir 32 bit bellek. Veriyolu 0, aygıt 1, işlev 0: PCI köprüsü: Intel Corporation 82855PM İşlemciden AGP Denetleyicisine (rev 3). Usta Yetenekli. Gecikme = 96. Min Gnt = 12. Veriyolu 0, aygıt 29, işlev 0: USB Denetleyici: Intel Corporation 82801DB / DBL / DBM (ICH4 / ICH4-L / ICH4-M) USB UHCI Denetleyici # 1 (rev 1). IRQ 11. 0x1800'de G / Ç. #

/ proc / takaslar

Bağlı takas dosyalarının ve bölümlerin bir listesini içerir.

# cat takasları Dosya Adı Tip Boyut Kullanılan Öncelik / dev / hda2 bölümü 506512 0 -1 #

/ işlem / sürüm

İşletim sisteminin sürümü ve Linux çekirdeği hakkında bilgi içerir.

# kedi sürümü Linux sürümü 2.6.13-rc3-my ( [e-posta korumalı]) (gcc sürüm 3.3.6) # 3 Temmuz 19 22:25:23 GMT + 3 2005 #

İşlem bilgisi

/proc, dosyalara ek olarak, adında bir numara olan dizinleri içerir. Her dizin, PID'si dizin adıyla eşleşen bir işlemi tanımlar. Bu dizindeki dosyalar işlem parametrelerini tanımlar. Dizinlerden birinin içeriği aşağıda gösterilmiştir.

# ls / proc / 4624 yardımcı [e-posta korumalı] [e-posta korumalı] haritalar bağlar oom_score seccomp statm görevi / cmdline çevre fd / mem oom_adj [e-posta korumalı] stat durumu wchan #

Örnekte gösterilen dosyalardan yalnızca birkaçı, ön işleme yapılmadan anlaşılabilecek bilgiler içermektedir.

cmdline

Komut satırı argümanlarını içerir.

# kedi cmdline -su #

çevre

Sürecin ortam değişkenlerinin değerlerini içerir.

# cat environ HZ = 100TERM = xtermPATH = / usr / yerel / sbin: / usr / yerel / bin: / sbin: / usr / sbin: / bin: / usr / binHOME = / rootSHELL = / bin / bashUSER = rootLOGNAME = rootMAIL = / var / biriktirme / posta / kök #

durum

İnsan tarafından okunabilir bir biçimde sürecin durumu hakkında bilgi içerir.

# cat durumu Ad: bash Durum: S (uyuyor) SleepAVG: %98 Tgid: 4510 Pid: 4510 PPid: 4498 TracerPid: 0 Uid: 0 0 0 0 Gid: 0 0 0 0 FDSize: 256 Grup: 0 1 2 3 4 6 10 11 VmSize: 2832 kB VmLck: 0 kB VmRSS: 1724 kB VmData: 388 kB VmStk: 88 kB VmExe: 628 kB VmLib: 1628 kB VmPTE: 12 kB Konular: 1 SigQ: 0/7168 SigPnd0000: 0/7168 SigPnd0000 : 0000000000384004 SigCgt: 000000004b813efb CapInh: 0000000000000000 CapPrm: 00000000ffffffeff CapEff: 00000000ffffffeff #

Diğer dizinler

Sistem işlemlerini açıklayan dizinlerin komada, / proc içinde başka dizinler olabilir. Bazılarının amacı aşağıdadır:

  • ide- ide arayüzüne bağlı cihazlar hakkında bilgi.
  • irq- kesintilerin dağılımı hakkında bilgi.
  • - ağ hakkında bilgi. arp tablosunun ve yönlendirme tablosunun içeriği. Ağ arayüzleri ve protokolü ile ilgili istatistikler. Vb.
  • scsi- SCSI cihazları hakkında bilgi.
  • sistem- sistemin değiştirilebilir parametrelerini içerir.

/ işlem / sistem

/ proc / sys dosya sistemi ayrı bir büyük konudur. Bu dizindeki dosyaları kullanarak sistem parametrelerini anında değiştirebilirsiniz. İstenilen değeri belirli bir dosyaya yazmanız yeterlidir. /proc/sys'i tarif etmeyeceğim, çok fazla bilgi var ve dosyaların ne için kullanıldığını anlamak için çok fazla bilgi sahibi olmanız gerekiyor. Bu nedenle, bu dosya sisteminin belgelerini ve açıklamasını nerede bulacağınızı size söyleyeceğim:

Sysfs, udev tarafından dinamik olarak aygıt dosyaları oluşturmak için kullanılır.

Merhaba site sitemin okuyucuları size bundan bahsetmek istedim mevcut ve yeni dosya sistemleri, ona doğru şekilde yardım etmenin yanı sıra Seç... Sonuçta, seçim işin hızına, rahatlığına ve sağlığına bağlıdır. bilgisayar donduğunda, yavaşladığında hoşunuza gittiğini düşünmüyorum ve sinirlerinizi doğru etkiliyor 🙂

Dosya sistemi nedir ve ne işe yarar?

Basit bir ifadeyle, bu, bir sabit sürücüde veya başka bir ortamda, flash sürücüde, telefonda, kamerada vb. dosya ve klasörleri depolamaya hizmet eden bir sistemdir. Ayrıca dosya ve klasörleri düzenlemek için: taşıma, kopyalama, yeniden adlandırma. Yani bu sistem tüm dosyalarınızdan sorumludur, bu yüzden çok önemlidir.

Yanlış dosya sistemini seçerseniz, bilgisayarınız arızalanabilir, donabilir, askıda kalabilir, bilgiler yavaş akabilir ve daha da kötüsü veri bozulması mümkündür. Bu, sistemik değilse iyidir, ancak görünecektir. Ve en önemlisi, bilgisayarınız bu nedenle yavaşlarsa, hiçbir miktarda çöp temizleme yardımcı olmaz!

Dosya sistemi türleri?

Birçok dosya sistemi geçmişte kaldı ve bazıları son ayaklarında, tk. modern teknolojiler her gün büyüyor ve büyüyor ve şimdi tamamen yeni bir dosya sistemi yolda. gelecek! Her şeyin nerede başladığını görelim.

yağ 12

Yağ - dosya ayırma tablosuçeviride dosya ayırma tablosu... İlk başta, dosya sistemi maksimum 4096 küme kullanılarak 12 bit idi. Çok uzun zaman önce, DOS günlerinde geliştirildi ve disketler ve 16 MB'a kadar küçük sürücüler için kullanıldı. Ancak daha gelişmiş bir fat16 ile değiştirildi.

yağ 16

Bu dosya sistemi zaten 65525 içeriyordu ve 4.2 GB diskleri destekliyordu, o zamanlar bir lükstü ve bu nedenle o zaman iyi iş çıkardı. Ancak dosya boyutu 2 GB'ı aşamaz ve ekonomi açısından en iyi seçenek değildir, dosya boyutu ne kadar büyük olursa küme o kadar fazla yer kaplar. Bu nedenle, 512 MB'den fazla bir hacim kullanmak karlı değildir. Tablo, medyanın boyutuna bağlı olarak sektör boyutunun ne kadar sürdüğünü gösterir.

Sistem o zaman başa çıksa da, gelecekte bir takım eksiklikler ortaya çıktı:

1. 8 GB'ın üzerindeki sabit disklerle çalışamazsınız.

2. 2 GB'den büyük dosyalar oluşturamazsınız.

3. Kök klasör 512'den fazla öğe içeremez.

4. 2 GB'den büyük bölümlerle çalışamama.

yağ 32

Modern teknolojiler yerinde durmuyor ve zamanla fat 16 sistemi yeterli olmadı ve yerine geldi şişman 32... Bu sistem zaten 2 terabayta (2048 gigabayt) kadar diskleri destekleyebilir ve daha küçük kümeler nedeniyle zaten ekonomik olarak disk alanını kullanabilir. Diğer bir artısı ise kök klasördeki dosyaların kullanımında herhangi bir kısıtlama olmaması ve önceki sürümlere göre daha güvenilir olmasıdır. Ama şu an için en büyük dezavantajı dosyaların zarar görmesi ve buna yol açmaması iyi. Ve ikinci ana dezavantaj, dosyaların artık 4 GB'den büyük boyutu aşması ve sistemin daha büyük bir dosya hacmini desteklememesidir. Diskte 100 GB boş alan olmasına rağmen, kullanıcıların neden 7 GB'lık bir filmi indiremediğim hakkında sık sık soruları oluyor, tüm sorun bu.

Öyleyse Eksileri ve işte bu kadar:

1. 4GB'tan büyük dosyalar sistem tarafından desteklenmez.

2. Sistem, sistemin yavaşlamasına neden olan dosya parçalanmasına eğilimlidir.

3. Dosya bozulmasından etkilenir.

4. Şu anda 2 TB'den fazla disk var.

NTFS

Ve şimdi yerine geldi yeni sistem ntfs(Yeni Teknoloji Dosya Sistemi) ne tercüme edilir dosya sistemi yeni teknoloji, bir dizi dezavantajın kaldırıldığı, ancak yeterince dezavantajın da olduğu. Bu sistem, aşağıda tartışacağım yeni sistem dışında en son onaylanan sistemdir. Sistem 90'lı yıllarda ortaya çıktı ve 2001 yılında Windows xp'nin piyasaya sürülmesiyle onaylandı ve bu güne kadar kullanılıyor. 18 TB'a kadar diskleri destekler, harika değil mi? Ve dosyalar parçalandığında, hız o kadar belirgin bir şekilde kaybolmaz. Güvenlik zaten iyi seviyelere ulaştı, bir arıza durumunda bilgi bozulması olası değildir.

eksiler ve burada olacak:

1. RAM tüketimi, 64 MB'den az RAM'iniz varsa, ayarlamanız önerilmez.

2. Sabit diskte kalan %10'luk boş alanla birlikte sistem gözle görülür şekilde yavaşlamaya başlar.

3. Küçük bir depolama kapasitesiyle çalışmak zor olabilir.

Yeni Referanslar

Yepyeni ReFS dosya sistemi ( Esnek Dosya Sistemi) yeni Windows işletim sistemi için geliştirilmiş, hataya dayanıklı bir dosya sistemidir. gelecek! Geliştiricilere göre, sistem son derece güvenilir olmalı ve tamamlandıktan kısa bir süre sonra diğer işletim sistemlerinde desteklenecektir. İşte bir fark tablosu:

Gördüğünüz gibi, yeni sistem büyük miktarda disk alanını ve yol ve dosya adında daha fazla karakteri destekliyor. Sistem, yeni mimari ve günlüğü kaydetmenin farklı bir yolu nedeniyle minimum kesinti olması gereken daha güvenli olmayı vaat ediyor. Sadece bir tane görebildiğin sürece profesyoneller ama bunun ne kadar doğru olduğu henüz bilinmiyor. Tam onaydan sonra bir serinin görünmesi mümkündür. Eksileri... Ama şimdiye kadar bu bir sır olarak kalıyor. Yeni dosya sisteminin bize ondan sadece olumlu duygular getireceğini umalım.

Hangi dosya sistemini seçmelisiniz?

İyi performans gösteren bir bilgisayara yüklemek daha iyidir ntf'ler, bu amaçlar için daha verimli ve daha güvenli olacaktır. 32 GB'den az sabit disk ve 64 MB RAM'e sahip bilgisayarlara kurulması önerilmez. ve yaşlı kadın şişman32 küçük hacimli bir flash sürücüye bahis oynayabilirsiniz, tk. performans daha yüksek olabilir. Ve bir telefon, dijital kamera ve diğer elektronik cihazlar için bir USB flash sürücüyü ntfs formatında biçimlendirdikten sonra hatalarla karşılaşabileceğiniz bir şey daha var. bazı cihazlar ntfs'yi desteklemeyebilir veya yavaş olabilir ve onunla çökebilir. Bu nedenle, biçimlendirmeden önce, cihazınız için hangi dosya sisteminin en iyi olduğundan emin olun.

Başka dosya sistemi türleri de vardır, örneğin Linux için XFS, ReiserFS (Reiser3), JFS (Günlük Dosya Sistemi), ext (genişletilmiş dosya sistemi), ext2 (ikinci genişletilmiş dosya sistemi), ext3 (üçüncü genişletilmiş dosya sistemi), Reiser4, ext4, Btrfs (B-tree FS veya Butter FS), smokin2, smokin3, Xiaf'ler, ZFS (Zettabyte Dosya Sistemi), ama bu tamamen farklı bir hikaye ...

Akıllı telefon neden programları hafıza kartından başlatamıyor? Ext4, ext3'ten temel olarak nasıl farklıdır? FAT yerine NTFS olarak biçimlendirilen bir flash sürücü neden daha uzun yaşar? F2FS ile ilgili temel sorun nedir? Cevaplar, dosya sistemlerinin yapısının özelliklerinde yatmaktadır. Onlar hakkında konuşacağız.

Tanıtım

Dosya sistemleri, verilerin nasıl depolanacağını belirler. Kullanıcının hangi kısıtlamalarla karşılaşacağını, okuma ve yazma işlemlerinin ne kadar hızlı olacağını ve sürücünün ne kadar süreyle hatasız çalışacağını belirlerler. Bu, özellikle bütçe SSD'leri ve küçük kardeşleri - flash sürücüler için geçerlidir. Bu özellikleri bilerek, herhangi bir sistemden maksimumu çıkarabilir ve belirli görevler için kullanımını optimize edebilirsiniz.

Önemsiz olmayan bir şey yapmanız gerektiğinde dosya sisteminin türünü ve parametrelerini seçmeniz gerekir. Örneğin, en sık yapılan dosya işlemlerini hızlandırmak istiyorsunuz. Dosya sistemi düzeyinde, bu birkaç yolla başarılabilir: indeksleme hızlı aramalar sağlar ve boş blokların önceden ayrılması, sık değişen dosyaların üzerine yazmayı kolaylaştıracaktır. RAM'deki verileri önceden optimize etmek, gerekli G/Ç miktarını azaltacaktır.

Tembel yazma, veri tekilleştirme ve diğer gelişmiş algoritmalar gibi modern dosya sistemlerinin özellikleri, çalışma süresinin uzatılmasına yardımcı olur. TLC bellek yongaları, flash sürücüler ve bellek kartlarına sahip ucuz SSD'ler için özellikle uygundur.

Farklı disk dizileri katmanları için ayrı optimizasyonlar mevcuttur: örneğin, dosya sistemi hafif birim yansıtmayı, anlık görüntüleri veya bir birimi çevrimdışına almadan dinamik ölçeklendirmeyi destekleyebilir.

Siyah kutu

Kullanıcılar çoğunlukla varsayılan olarak işletim sistemi tarafından sunulan dosya sistemiyle çalışır. Nadiren yeni disk bölümleri oluştururlar ve ayarları hakkında daha az düşünürler - sadece önerilen parametreleri kullanırlar ve hatta önceden biçimlendirilmiş medya satın alırlar.

Windows hayranları için her şey basittir: tüm disk bölümlerinde NTFS ve flash sürücülerde FAT32 (veya aynı NTFS). Bir NAS varsa ve içinde başka bir dosya sistemi kullanılıyorsa, çoğunluk için bu algının ötesinde kalır. Sadece ağ üzerinden ona bağlanırlar ve dosyaları bir kara kutudan indirirlermiş gibi indirirler.

Android'li mobil cihazlarda ext4 çoğunlukla dahili bellekte ve FAT32 microSD kartlarda bulunur. Apple için ne tür bir dosya sistemine sahip oldukları hiç önemli değil: HFS +, HFSX, APFS, WTFS ... onlar için sadece en iyi tasarımcılar tarafından çizilmiş güzel klasör ve dosya simgeleri var. Linux kullanıcıları en zengin seçeneğe sahiptir, ancak hem Windows hem de macOS'ta işletim sistemine özgü olmayan dosya sistemleri için destek ekleyebilirsiniz - daha sonra daha fazlası.

Ortak kökler

Yüzden fazla farklı dosya sistemi oluşturuldu, ancak bir düzineden biraz fazlası ilgili olarak adlandırılabilir. Hepsi kendi özel uygulamaları için tasarlanmış olsa da, çoğu kavramsal olarak ilişkiliydi. Benzerdirler çünkü aynı türde sunum yapısı (meta) verilerini kullanırlar - B-ağaçları ("bi-ağaçlar").

Herhangi bir hiyerarşik sistemde olduğu gibi, B-ağacı kök kayıtta başlar ve daha sonra son öğelere doğru dallanır - dosyalar ve nitelikleri hakkında bireysel kayıtlar veya "yapraklar". Böyle bir mantıksal yapı oluşturmanın temel amacı, birkaç terabaytlık sabit diskler veya daha etkileyici RAID dizileri gibi büyük dinamik dizilerdeki dosya sistemi nesnelerinin aranmasını hızlandırmaktı.

B-ağaçları, aynı işlemleri gerçekleştirirken diğer B-ağaç türlerinden çok daha az disk erişimi gerektirir. Bu, B ağaçlarındaki son nesnelerin hiyerarşik olarak aynı yükseklikte yer alması ve tüm işlemlerin hızının ağacın yüksekliği ile orantılı olması nedeniyle elde edilir.

Diğer dengeli ağaçlar gibi, B ağaçları da kökten yaprağa kadar aynı yol uzunluğuna sahiptir. Büyümek yerine daha fazla dallanırlar ve daha fazla genişlikte büyürler: B-ağacındaki tüm dal noktaları, alt nesnelere birçok referansı saklar, bu da onları daha az çağrıda bulmayı kolaylaştırır. Çok sayıda işaretçi, en uzun disk işlemlerinin sayısını azaltır - keyfi blokları okurken kafa konumlandırma.

B-ağaçları kavramı yetmişli yıllarda formüle edildi ve o zamandan beri çeşitli iyileştirmelerden geçti. NTFS, BFS, XFS, JFS, ReiserFS ve birçok DBMS'de şu veya bu şekilde uygulanmaktadır. Hepsi veri organizasyonunun temel ilkeleri açısından kuzenler. Farklılıklar, genellikle oldukça önemli olan ayrıntılarla ilgilidir. İlgili dosya sistemlerinin dezavantajı da yaygındır: hepsi SSD'lerin ortaya çıkmasından önce bile disklerle çalışmak üzere yaratılmıştır.

Bir ilerleme motoru olarak flash bellek

Katı hal sürücüler yavaş yavaş disk sürücülerin yerini alıyor, ancak şimdiye kadar kendilerine yabancı olan, miras kalan dosya sistemlerini kullanmak zorunda kalıyorlar. İlkeleri disk aygıtlarından farklı olan flash bellek dizileri üzerine kuruludurlar. Özellikle flash belleğin yazmadan önce silinmesi gerekir ve NAND çiplerinde bu işlem tek tek hücreler düzeyinde yapılamaz. Sadece bir bütün olarak büyük bloklar için mümkündür.

Bu sınırlama, NAND belleğinde tüm hücrelerin, her birinin kontrol veriyoluna yalnızca bir ortak bağlantısı olan bloklar halinde birleştirilmesinden kaynaklanmaktadır. Sayfalamanın ayrıntılarına girmeyeceğiz ve tam hiyerarşiyi açıklamayacağız. Hücrelerle grup işlemlerinin prensibi ve flash bellek bloklarının boyutlarının genellikle herhangi bir dosya sisteminde adreslenen bloklardan daha büyük olması önemlidir. Bu nedenle, NAND flash'lı sürücüler için tüm adresler ve komutlar, FTL (Flash Çeviri Katmanı) soyutlama katmanı aracılığıyla çevrilmelidir.

Flash bellek denetleyicileri, disk aygıtlarının mantığıyla uyumluluk ve yerel arabirimlerinin komutları için destek sağlar. Genellikle FTL, bellenimlerinde uygulanır, ancak ana bilgisayarda (kısmen) çalışabilir - örneğin, Plextor, SSD'leri için yazmayı hızlandıran sürücüler yazar.

FTL olmadan yapamazsınız, çünkü belirli bir hücreye bir bit yazmak bile bir dizi işlemin başlatılmasına yol açar: denetleyici gerekli hücreyi içeren bir bloğu arar; blok tamamen okunur, önbelleğe veya boş alana yazılır, ardından tamamen silinir, ardından gerekli değişikliklerle yeniden yazılır.

Bu yaklaşım ordudaki gündelik hayatı andırıyor: Bir askere emir vermek için çavuş genel bir düzen kuruyor, zavallıyı düzensizliğe çağırıyor ve geri kalanlara dağılmalarını emrediyor. Şimdi nadir bulunan NOR hafızasında organizasyon spetsnazdı: her hücre bağımsız olarak kontrol ediliyordu (her transistörün bireysel bir teması vardı).

Denetleyicilerin giderek daha fazla görevi vardır, çünkü her nesil flash bellekle, yoğunluğunu artırmak ve veri depolama maliyetini azaltmak için üretiminin teknik süreci azalır. Teknolojik standartlarla birlikte çiplerin tahmini ömrü de kısalıyor.

Tek seviyeli SLC hücrelerine sahip modüller, 100 bin yeniden yazma döngüsü ve hatta daha fazla beyan edilmiş bir kaynağa sahipti. Birçoğu hala eski flash sürücülerde ve CF kartlarda çalışıyor. Kurumsal sınıf MLC (eMLC), kaynağı 10 ila 20 bin aralığında talep ederken, olağan tüketici düzeyinde MLC'de 3-5 bin olduğu tahmin ediliyor. Bu tür bellek, kaynağı neredeyse bin döngüye ulaşan daha ucuz TLC tarafından aktif olarak doldurulur. Flash belleğin ömrünü kabul edilebilir bir seviyede tutmak, yazılım tweaks ile yapılmalı ve yeni dosya sistemleri de bunlardan biri haline geliyor.

Başlangıçta, üreticiler dosya sisteminin önemsiz olduğunu varsaydılar. Denetleyicinin kendisi, yükü aralarında en uygun şekilde dağıtarak, herhangi bir türden kısa ömürlü bir bellek hücresi dizisi sağlamalıdır. Dosya sistemi sürücüsü için normal bir diski simüle eder ve kendisi herhangi bir erişimde düşük seviyeli optimizasyonlar gerçekleştirir. Bununla birlikte, pratikte optimizasyon, farklı cihazlar için büyülüden hayali olana kadar değişir.

Kurumsal SSD'lerde yerleşik denetleyici küçük bir bilgisayardır. Çok büyük bir arabelleğe sahiptir (yarım gig ve daha fazlası) ve verilerle çalışma verimliliğini artırmak için birçok yöntemi destekler, bu da gereksiz yeniden yazma döngülerini önler. Çip, önbellekteki tüm blokları düzenler, tembel yazma gerçekleştirir, anında tekilleştirme gerçekleştirir, bazı blokları rezerve eder ve arka planda diğerlerini temizler. Tüm bu sihir, işletim sistemi, programlar ve kullanıcı tarafından tamamen fark edilmeden gerçekleşir. Bunun gibi bir SSD ile, hangi dosya sisteminin kullanıldığı gerçekten önemli değil. Dahili optimizasyonların performans ve kaynak üzerinde harici optimizasyonlardan çok daha büyük bir etkisi vardır.

Bütçe SSD'leri (ve daha da fazlası - flash sürücüler) çok daha az akıllı denetleyicilerle donatılmıştır. İçlerindeki önbellek kesilmiş veya eksiktir ve gelişmiş sunucu teknolojileri hiç kullanılmamaktadır. Hafıza kartlarında kontrolörler o kadar ilkeldir ki çoğu zaman onların hiç var olmadığı iddia edilir. Bu nedenle, flash belleğe sahip ucuz cihazlar için, öncelikle özel dosya sistemleri kullanılarak harici yük dengeleme yöntemleri geçerliliğini korur.

JFFS'den F2FS'ye dönüştürücü

Flash belleğin organizasyon ilkelerini dikkate alacak bir dosya sistemi yazmaya yönelik ilk girişimlerden biri JFFS - Günlük Tutma Flash Dosya Sistemi idi. Başlangıçta, İsveçli Axis Communications şirketi tarafından yapılan bu geliştirme, Axis'in doksanlı yıllarda ürettiği ağ cihazlarının bellek verimliliğini artırmaya odaklandı. JFFS'nin ilk sürümü yalnızca NOR belleğini destekledi, ancak ikinci sürümde zaten NAND ile arkadaş oldu.

JFFS2 şu anda sınırlı kullanımda. Çoğunlukla hala gömülü sistemler için Linux dağıtımlarında kullanılmaktadır. Yönlendiricilerde, IP kameralarda, NAS'ta ve Nesnelerin İnterneti'ndeki diğer düzenli cihazlarda bulunabilir. Genel olarak, az miktarda güvenilir belleğin gerekli olduğu her yerde.

JFFS2 için bir başka geliştirme çabası, düğümleri ayrı bir dosyada depolayan LogFS idi. Bu fikrin yazarları, IBM Jorn Engel'in Alman bölümünün bir çalışanı ve Osnabruck Üniversitesi Robert Mertens'te öğretim görevlisidir. LogFS için kaynak kodu GitHub'da mevcuttur. Üzerindeki son değişikliğin dört yıl önce yapılmış olmasına bakılırsa LogFS popülerlik kazanmamış.

Ancak bu girişimler, başka bir özel dosya sisteminin ortaya çıkmasına neden oldu - F2FS. Dünyada üretilen flash belleğin büyük bir bölümünü oluşturan Samsung Corporation tarafından geliştirilmiştir. Samsung, kendi cihazları ve diğer şirketler için NAND Flash yongaları üretiyor ve ayrıca eski disk arayüzleri yerine temelde yeni arayüzlere sahip SSD'ler geliştiriyor. Flash bellek için optimize edilmiş özel bir dosya sisteminin oluşturulması, Samsung'un bakış açısından uzun süredir gecikmiş bir gereklilik olmuştur.

Dört yıl önce, 2012'de Samsung, F2FS'yi (Flash Dostu Dosya Sistemi) yarattı. Fikri iyi, ancak uygulamanın nemli olduğu ortaya çıktı. F2FS'yi oluştururken temel görev basitti: hücre yeniden yazma işlemlerinin sayısını azaltmak ve üzerlerindeki yükü mümkün olduğunca eşit bir şekilde dağıtmak. Bu, aynı blok içinde birkaç hücre ile aynı anda işlem yapmayı ve onlara tek tek tecavüz etmemeyi gerektirir. Bu, işletim sisteminin ilk isteğinde mevcut blokların anında yeniden yazılmasına değil, komutların ve verilerin önbelleğe alınmasına, boş alana yeni bloklar eklenmesine ve hücrelerin gecikmeli olarak silinmesine ihtiyacımız olduğu anlamına gelir.

Bugün, F2FS desteği halihazırda Linux'ta (ve dolayısıyla Android'de) resmi olarak uygulanmaktadır, ancak pratikte herhangi bir özel avantaj sağlamamaktadır. Bu dosya sisteminin ana özelliği (ertelenmiş üzerine yazma), etkinliği hakkında erken sonuçlara yol açmıştır. Eski önbelleğe alma hilesi, F2FS'nin birkaç yüzde (beklendiği gibi) veya hatta birkaç kez değil, büyüklük sıraları ile belirgin bir avantaj gösterdiği, kıyaslamaların erken sürümlerini bile kandırdı. Sadece F2FS sürücüsü, denetleyicinin yapmayı planladığı bir işlemin yürütüldüğünü bildirdi. Ancak, F2FS'deki gerçek performans kazancı küçükse, hücre aşınması kesinlikle aynı ext4'ü kullanırken olduğundan daha az olacaktır. Ucuz bir denetleyicinin yapamayacağı optimizasyonlar, dosya sisteminin kendi düzeyinde gerçekleştirilecektir.

Uzantılar ve bit eşlemler

F2FS, meraklılar için egzotik olarak algılanırken. Samsung'un kendi akıllı telefonları bile hala ext4 kullanıyor. Çoğu kişi bunu ext3'ün daha da geliştirilmesi olarak görüyor, ancak bu tamamen doğru değil. Bu, dosya başına 2 TB sınırını aşmaktan ve diğer ölçümleri artırmaktan daha büyük bir devrimdir.

Bilgisayarlar büyük ve dosyalar küçükken adresleme kolaydı. Her dosyaya, adresleri yazışma tablosuna girilen belirli sayıda blok tahsis edildi. Bugün hala kullanımda olan ext3 dosya sistemi bu şekilde çalıştı. Ancak ext4'te temelde farklı bir adresleme yolu ortaya çıktı - kapsamlar.

Uzantılar, bütünlükleri içinde bitişik diziler olarak ele alınan ayrı blok kümeleri olarak düğüm uzantıları olarak düşünülebilir. Bir kapsam, orta boyutlu bir dosyanın tamamını içerebilir ve büyük dosyalar için bir düzine veya iki uzantı tahsis etmek yeterlidir. Bu, dört kilobaytlık yüz binlerce küçük bloğu ele almaktan çok daha verimlidir.

Yazma mekanizmasının kendisi ext4'te değişti. Artık blokların dağıtımı tek bir istekte hemen gerçekleşir. Ve önceden değil, diske veri yazmadan hemen önce. Gecikmeli çoklu blok tahsisi, ext3'ün günah işlediği gereksiz işlemlerden kurtulmanızı sağlar: içinde, önbelleğe tamamen sığsa ve geçici olarak silinmesi planlanmış olsa bile, yeni bir dosya için bloklar hemen tahsis edildi.


YAĞ kısıtlı diyet

Dengeli ağaçlar ve bunların modifikasyonlarının yanı sıra, başka popüler mantıksal yapılar da vardır. Temelde farklı bir organizasyon türüne sahip dosya sistemleri vardır - örneğin doğrusal. Muhtemelen bunlardan en az birini çok kullanıyorsunuz.

Gizem

Bilmeceyi tahmin et: on iki yaşında kilo almaya başladı, on altı yaşında aptal şişman bir kadındı ve otuz iki yaşında şişman oldu ve bir budala olarak kaldı. O kim?

Bu doğru, bu FAT dosya sistemi hakkında bir hikaye. Uyumluluk gereksinimleri ona kötü bir miras bıraktı. Disketlerde 12-bit, sabit disklerde - ilk başta 16-bit idi ve bugüne kadar 32-bit olarak düştü. Sonraki her sürümde, adreslenebilir blokların sayısı arttı, ancak özünde hiçbir şey değişmedi.

Hala popüler olan FAT32 dosya sistemi yirmi yıl önce ortaya çıktı. Bugün hala ilkeldir ve ACL'leri, disk kotalarını, arka plan sıkıştırmasını veya diğer modern veri optimizasyon teknolojilerini desteklemez.

FAT32 neden bu günlerde gerekli? Hepsi yalnızca uyumluluk amacıyla aynıdır. Üreticiler haklı olarak herhangi bir işletim sisteminin bir FAT32 bölümünü okuyabileceğine inanıyor. Bu nedenle, harici sabit sürücüler, USB Flash ve hafıza kartlarında oluştururlar.

Akıllı telefonunuzdaki flash bellek nasıl boşaltılır

Akıllı telefonlarda kullanılan MicroSD (HC) kartlar varsayılan olarak FAT32 olarak biçimlendirilir. Bu, üzerlerine uygulama yüklemenin ve dahili bellekten veri aktarmanın önündeki ana engeldir. Bunu aşmak için kartta bir ext3 veya ext4 bölümü oluşturmanız gerekir. Tüm dosya öznitelikleri (sahip ve erişim hakları dahil) ona aktarılabilir, böylece herhangi bir uygulama dahili bellekten başlatılmış gibi çalışabilir.

Windows, flash sürücülerde birden fazla bölüm oluşturamaz, ancak bunun için Linux'u (en azından sanal bir makinede) veya mantıksal bölümleme ile çalışmak için gelişmiş bir yardımcı programı çalıştırabilirsiniz - örneğin, MiniTool Partition Wizard Free. Kartta ext3 / ext4 ile ek bir birincil bölüm bulan Link2SD uygulaması ve benzerleri, tek bir FAT32 bölümü durumunda olduğundan çok daha fazla seçenek sunacaktır.


FAT32'yi seçme lehine bir başka argüman, genellikle günlük kaydının olmaması, bu da NAND Flash bellek hücrelerinde daha hızlı yazma ve daha az aşınma anlamına gelir. Pratikte FAT32 kullanımı bunun tam tersine yol açar ve birçok başka soruna yol açar.

FAT32'deki herhangi bir değişiklik, iki dosya tablosu zincirinin bulunduğu aynı sektörlerin üzerine yazılmasına neden olduğundan, flash sürücüler ve bellek kartları hızla ölür. Tüm web sayfasını kaydettim ve yüzlerce kez yeniden yazıldı - flash sürücüye her bir küçük GIF eklenmesiyle. Taşınabilir yazılımı başlattınız mı? Geçici dosyalar oluşturdu ve çalışma sırasında bunları sürekli olarak değiştirdi. Bu nedenle, hataya dayanıklı $ MFT tablosu ile flash sürücülerde NTFS kullanmak çok daha iyidir. Küçük dosyalar doğrudan ana dosya tablosunda saklanabilir ve uzantıları ve kopyaları flash belleğin farklı alanlarına yazılır. Ayrıca, NTFS indeksleme, aramaları daha hızlı hale getirir.

BİLGİ

FAT32 ve NTFS için teorik iç içe yerleştirme düzeyi sınırları belirtilmemiştir, ancak pratikte bunlar aynıdır: birinci düzey bir dizinde yalnızca 7707 alt dizin oluşturulabilir. Yuvalama bebeklerinin sevenler bunu takdir edeceklerdir.

Çoğu kullanıcının karşılaştığı bir diğer sorun, 4 GB'den büyük bir dosyayı FAT32 bölümüne yazmanın imkansız olmasıdır. Bunun nedeni, FAT32'de dosya boyutunun dosya ayırma tablosunda 32 bit ile açıklanması ve 2 ^ 32 (eksi bir, kesin olmak gerekirse) sadece dört konser vermesidir. Yeni satın alınan bir flash sürücüye ne normal kalitede bir film ne de bir DVD görüntüsü kaydedilemeyeceği ortaya çıktı.

Büyük dosyaları kopyalamak hala sorunun yarısıdır: Bunu yapmaya çalıştığınızda, hata en azından hemen görünür. Diğer durumlarda, FAT32 bir saatli bomba görevi görür. Örneğin, taşınabilir yazılımı bir USB flash sürücüye kopyaladınız ve ilk başta sorunsuz bir şekilde kullanabilirsiniz. Uzun bir süre sonra, programlardan birinin (örneğin, muhasebe veya posta) bir veritabanı şişmiş ve ... sadece güncellemeyi durduruyor. 4 GB sınırına ulaştığı için dosyanın üzerine yazılamıyor.

Daha az belirgin bir sorun, FAT32'de bir dosya veya dizinin oluşturulma tarihinin iki saniyelik bir doğrulukla belirtilebilmesidir. Bu, zaman damgalarını kullanan birçok şifreleme uygulaması için yeterli değildir. Tarih özniteliğinin düşük kesinliği, FAT32'nin güvenlik açısından eksiksiz bir dosya sistemi olarak görülmemesinin bir başka nedenidir. Ancak, zayıf yönleri kendi amaçlarınız için kullanılabilir. Örneğin, bir NTFS bölümünden bir FAT32 birimine herhangi bir dosya kopyalarsanız, bunlar tüm meta verilerden ve devralınan ve özel olarak ayarlanmış izinlerden temizlenir. FAT sadece onları desteklemiyor.

exFAT

FAT12 / 16/32'den farklı olarak exFAT, özellikle USB Flash ve büyük hafıza kartları (≥ 32 GB) için tasarlanmıştır. Genişletilmiş FAT, FAT32'nin yukarıda bahsedilen dezavantajını ortadan kaldırır - herhangi bir değişiklikte aynı sektörlerin üzerine yazma. 64 bitlik bir sistem olarak, tek bir dosyanın boyutunda pratik olarak anlamlı bir sınırı yoktur. Teorik olarak, 2 ^ 64 bayt (16 EB) uzunluğunda olabilir ve bu boyuttaki kartlar yakında görünmeyecektir.

exFAT'deki bir diğer önemli fark, Erişim Kontrol Listelerini (ACL'ler) desteklemesidir. Bu artık doksanlardan kalma basit bir şey değil, ancak kapalı format exFAT'in uygulanmasını engelliyor. ExFAT desteği, yalnızca Windows (XP SP2'den başlayarak) ve OS X'te (10.6.5'ten başlayarak) tamamen ve yasal olarak uygulanır. Linux ve * BSD'de ya kısıtlamalarla desteklenir ya da tamamen yasal olarak desteklenmez. Microsoft, exFAT kullanmak için lisans gerektirir ve bu alanda birçok yasal anlaşmazlık vardır.

Btrf'ler

B-ağacı dosya sistemlerinin bir başka öne çıkan örneği Btrfs olarak adlandırılır. Bu FS 2007'de ortaya çıktı ve orijinal olarak Oracle'da SSD ve RAID ile çalışmak amacıyla oluşturuldu. Örneğin, dinamik olarak ölçeklenebilir: canlı sistemde yeni düğümler oluşturun veya bir birimi onlara boş alan ayırmadan alt birimlere bölün.

Btrfs'de uygulanan yazma üzerine kopyalama mekanizması ve Cihaz eşleyici çekirdek modülüyle tam entegrasyon, sanal blok cihazları aracılığıyla neredeyse anında anlık görüntüler oluşturmanıza olanak tanır. Veri ön sıkıştırma (zlib veya lzo) ve veri tekilleştirme, flash belleğin ömrünü uzatırken temel işlemleri hızlandırır. Bu, özellikle veritabanları (sıkıştırma 2-4 kez elde edilir) ve küçük dosyalar (sırasıyla büyük bloklar halinde yazılır ve doğrudan "yapraklarda" saklanabilir) ile çalışırken fark edilir.

Btrfs ayrıca tam günlük kaydı (veri ve meta veriler), bağlantıyı kesmeden ses denetimi ve diğer birçok modern özelliği destekler. Btrfs kodu GPL lisansı altında yayınlanır. Bu dosya sistemi, çekirdek 4.3.1'den beri Linux'ta kararlı olarak korunmuştur.

Uçuş günlükleri

Hemen hemen tüm modern dosya sistemleri (ext3 / ext4, NTFS, HFSX, Btrfs ve diğerleri), yapılan değişikliklerin kayıtlarını ayrı bir günlükte (günlük) tuttukları ve kontrol ettikleri için günlük tutulanların genel grubuna aittir. disk işlemleri sırasında arıza ... Ancak bu dosya sistemlerinin ayrıntı düzeyi ve hata toleransı farklıdır.

Ext3 üç günlük modunu destekler: geri döngü, sıralı ve tam günlük. İlk mod, yalnızca verilerin kendisindeki değişikliklere göre eşzamansız olarak gerçekleştirilen genel değişikliklerin (meta veriler) kaydedilmesini gerektirir. İkinci modda, aynı meta veri kaydı gerçekleştirilir, ancak kesinlikle herhangi bir değişiklik yapılmadan önce. Üçüncü mod, tam günlüğe kaydetmeye eşdeğerdir (hem meta verilerde hem de dosyaların kendisinde değişiklikler).

Yalnızca ikinci seçenek veri bütünlüğünü sağlar. Diğer ikisi, yalnızca kontrol sırasında hataların tanımlanmasını hızlandırır ve dosyaların içeriğini değil, dosya sisteminin bütünlüğünün geri yüklenmesini garanti eder.

NTFS günlüğe kaydetme, ext3'ün ikinci günlüğe kaydetme moduna benzer. Günlüğe yalnızca meta verilerde yapılan değişiklikler kaydedilir ve bir arıza durumunda verilerin kendisi kaybolabilir. Bu NTFS günlük kaydı yöntemi, maksimum güvenilirlik elde etmenin bir yolu olarak değil, yalnızca performans ve hata toleransı arasında bir ödünleşim olarak tasarlandı. Bu nedenle, tam günlük kaydı sistemleriyle çalışmaya alışmış kişiler, NTFS'yi sözde günlük olarak kabul eder.

NTFS yaklaşımı, ext3'teki varsayılandan biraz daha iyidir. NTFS'de, önceden bekleyen tüm disk işlemlerinin tamamlandığından emin olmak için ek olarak düzenli aralıklarla denetim noktaları oluşturulur. Denetim noktalarının \ System Volume Infromation \ içindeki geri yükleme noktalarıyla hiçbir ilgisi yoktur. Bunlar yalnızca günlükteki genel girişlerdir.

Uygulama, çoğu durumda bu tür kısmi NTFS günlük kaydının sorunsuz çalışma için yeterli olduğunu göstermektedir. Sonuçta, keskin bir elektrik kesintisinde bile, disk cihazlarının enerjisi anında kesilmez. Sürücülerdeki güç kaynağı ünitesi ve çok sayıda kapasitör, mevcut yazma işlemini tamamlamak için yeterli olan minimum enerji rezervini sağlar. Modern SSD'ler, hızları ve ekonomileri ile genellikle bekleyen işlemleri gerçekleştirmek için yeterli enerjiye sahiptir. Tam günlüğe kaydetme girişimi, çoğu işlemin hızını birkaç kat azaltacaktır.

Windows'ta üçüncü taraf dosya sistemlerini bağlarız

Dosya sistemlerinin kullanımı, işletim sistemi düzeyindeki destekleriyle sınırlıdır. Örneğin Windows, ext2 / 3/4 ve HFS+'ı anlamaz, ancak bazen bunları kullanmanız gerekir. Bu, uygun sürücü eklenerek yapılabilir.

UYARI

Üçüncü taraf dosya sistemlerini destekleyen çoğu sürücü ve eklentinin sınırlamaları vardır ve her zaman kararlı şekilde çalışmaz. Diğer sürücülere, antivirüs ve sanallaştırma programlarına müdahale edebilirler.

Kısmi ext4 desteği ile ext2 / 3 bölümlerini okumak ve yazmak için sürücüyü açın. En son sürüm, 16 TB'a kadar uzantıları ve bölümleri destekler. LVM, ACL'ler ve genişletilmiş özellikler desteklenmez.


Total Commander için ücretsiz bir eklenti var. Ext2 / 3/4 bölümlerinin okunmasını destekler.


coLinux, Linux çekirdeğinin açık kaynaklı ve ücretsiz bir bağlantı noktasıdır. 32 bit sürücü ile birlikte, sanallaştırma teknolojilerini kullanmadan Windows 2000'den 7'ye kadar Linux çalıştırmanıza olanak tanır. Yalnızca 32 bit sürümleri destekler. 64-bit modifikasyonun geliştirilmesi iptal edildi. coLinux, diğer şeylerin yanı sıra, Windows'tan ext2 / 3/4 bölümlerine erişimi düzenlemeye izin verir. Proje desteği 2014 yılında durdurulmuştur.

Windows 10, Linux'a özgü dosya sistemleri için zaten yerel desteğe sahip olabilir, yalnızca gizlidir. Bu düşünceler, çekirdek düzeyindeki sürücü Lxcore.sys ve Svchost.exe işlemi tarafından kitaplık olarak yüklenen LxssManager hizmeti tarafından önerilmektedir. Daha fazla bilgi için, Alex Ionescu'nun Black Hat 2016'da sunduğu "Windows 10 İçinde Gizli Linux Çekirdeği" başlıklı konuşmasına bakın.


Windows için ExtFS, Paragon tarafından yayınlanan ücretli bir sürücüdür. Windows 7'den 10'a kadar çalışır, ext2/3/4 birimlerine okuma/yazma erişimini destekler. Windows'ta neredeyse eksiksiz ext4 desteği sağlar.

Windows 10 için HFS +, Paragon Software'in başka bir tescilli sürücüsüdür. Adına rağmen, XP'den başlayarak tüm Windows sürümlerinde çalışır. Herhangi bir bölümlü (MBR / GPT) disklerde HFS + / HFSX dosya sistemlerine tam erişim sağlar.

WinBtrfs, Windows için Btrfs sürücüsünün erken bir geliştirmesidir. Zaten 0.6 sürümünde, Btrfs birimlerine hem okuma hem de yazma erişimini destekler. Sabit ve sembolik bağlantıları işleyebilir, alternatif veri akışlarını, ACL'yi, iki tür sıkıştırmayı ve eşzamansız okuma/yazma modunu destekler. Şimdiye kadar WinBtrfs, bu dosya sistemini korumak için mkfs.btrfs, btrfs-balance ve diğer yardımcı programları kullanamaz.

Dosya Sistemi Yetenekleri ve Sınırlamaları: Özet Tablo

Dosya sistemi Mac-si-mal-ny birim boyutu Bir dosyanın ön del-boyutu Kendi dosya adına göre uzunluk Tam dosya adının uzunluğu (kökten gelen yol dahil) Dosya ve/veya katalogların ön-del sayısı Dosya/katalog tarihini belirtmenin doğruluğu Haklar dos-tu-pa Sabit bağlantılar Sim içermeyen bağlantılar Anlık görüntüler Arka planda verileri sıkıştırma Arka planda verilerin şifrelenmesi Büyükbaba-pli-ka-tion veri
FAT16 512 bayt sektörlerde 2 GB veya 64 KB kümelerde 4 GB 2 GB LFN ile 255 bayt - - - - - - - - - -
FAT32 2 KB sektörlerde 8 TB 4 GB (2 ^ 32 - 1 bayt) LFN ile 255 bayt CDS ile 32 alt dizine kadar 65460 10ms (oluştur) / 2s (değiştir) Numara Numara Numara Numara Numara Numara Numara
exFAT ≈ 128 PB (2 ^ 32-1 2 ^ 25-1 bayt küme) teorik / 512 TB üçüncü taraf sınırlamaları nedeniyle 16 EB (2 ^ 64 - 1 bayt) 2796202 katalogda 10 ms EKL Numara Numara Numara Numara Numara Numara
NTFS 64 KB kümelerde 256 TB veya 4K kümelerde 16 TB 16 TB (Kazan 7) / 256 TB (Kazan 8) 255 Unicode karakter (UTF-16) 32.760 Unicode karakter, ancak öğe başına en fazla 255 karakter 2^32-1 100 ns EKL Evet Evet Evet Evet Evet Evet
HFS + 8 EB (2 ^ 63 bayt) 8 EB 255 Unicode karakter (UTF-16) ayrı ayrı sınırlı değil 2^32-1 1 saniye Unix, ACL Evet Evet Numara Evet Evet Numara
APFS 8 EB (2 ^ 63 bayt) 8 EB 255 Unicode karakter (UTF-16) ayrı ayrı sınırlı değil 2^63 1 ns Unix, ACL Evet Evet Evet Evet Evet Evet
Uzm3 4K kümelerde 32 TB (teorik) / 16 TB (e2fs programlarının sınırlamaları nedeniyle) Daha eski programlar için 2 TB (teorik) / 16 GB 255 Unicode karakter (UTF-16) ayrı ayrı sınırlı değil - 1 saniye Unix, ACL Evet Evet Numara Numara Numara Numara
Uzm4 4K kümelerde 1 EB (teorik) / 16 TB (e2fs programlarının sınırlamaları nedeniyle) 16 TB 255 Unicode karakter (UTF-16) ayrı ayrı sınırlı değil 4 milyar 1 ns POSIX Evet Evet Numara Numara Evet Numara
F2FS 16 TB 3,94 TB 255 bayt ayrı ayrı sınırlı değil - 1 ns POSIX EKL Evet Evet Numara Numara Evet Numara
BTRFS 16 EB (2 ^ 64 - 1 bayt) 16 EB 255 ASCII karakter 2 ^ 17 bayt - 1 ns POSIX EKL Evet Evet Evet Evet Evet Evet

(2010) bazı eklemeler ve açıklamalar ile.

Kerestecilik

Dosya sistemlerinden bahsetmeden önce, kısaca “kavramına bir göz atalım. Kerestecilik«.

Kerestecilik hemen hemen tüm modern dosya sistemlerinde şu veya bu şekilde kullanılır.

Günlük kaydı yalnızca diske yazma işlemleri için kullanılır ve bu tür tüm işlemler için bir tür arabellektir. Bu yaklaşım, örneğin bir elektrik kesintisi nedeniyle bilgisayarın kapandığı bir disk yazma işlemi sırasında ortaya çıkan sorunların çözülmesine yardımcı olur. Günlük tutma olmadan, bu gibi durumlarda hangi dosyaların yazıldığını ve hangilerinin yazılmadığını veya kısmen yazıldığını bulmak imkansızdır.

Günlüğe kaydetmeyi kullanırken, dosya önce günlüğe (veya "günlüğe") yazılır. Bundan sonra, dosya sabit diske yazılır ve daha sonra günlükten silinir, ardından yazma işlemi tamamlanmış sayılır. Kayıt sırasında güç kapatılırsa, sistem açıldıktan sonra dosya sistemi günlüğü kontrol edebilir ve tamamlanmamış işlemleri bulabilir.

Günlük kaydı kullanmanın en büyük sorunu, onu kullanmak için ek sistem kaynakları gerektirmesidir. Bu tür ek yükü azaltmak için - günlük kaydı dosya sistemleri, dosyanın tamamını günlüğe yazmaz - sadece belirli meta verileri yazar.

Harici dosya sistemleri

Dahili

Araç " Genişletilmiş"(Genişletilmiş) dosya sistemi ve özel olarak tasarlanan ilk dosya sistemiydi. Linux-sistemler. Bugün toplam 4 dosya sistemi var. Dahili... İlki basitçe Dahili- FS OS'nin büyük bir güncellemesiydi minix.

özellikleri Dahili:

  • maksimum dosya boyutu: 2GB;
  • maksimum bölüm boyutu: 2GB;

Geliştirici ve ilk sürüm 1992'de çıktı.

dikkate almayacağız çünkü büyük ihtimalle hiç karşılaşmayacaksınız.

Ext2

- 1993 yılında piyasaya sürülen, ana görevi 2 Terabayta kadar olan cihazları desteklemek olan günlük tutmayan dosya sistemi. Çünkü NS Ext2 günlük kaydı yok - performansı ve kapsamını etkileyen çok daha az disk yazma işlemi gerçekleştirir.

Özellikler:

  • maksimum dosya boyutu: 16GB - 2TB;
  • maksimum bölüm boyutu: 2 - 32 TB;
  • maksimum ad boyutu 255 karakterdir.
  • az sayıda yazma-silme işlemi nedeniyle, çeşitli flash sürücüler için idealdir;
  • aynı zamanda çağdaş SSD-disklerin yaşam döngüleri (tahrik elemanlarının aşınma direnci) ve eksiklikleri nötralize eden diğer bazı özellikleri için geliştirilmiş göstergeleri vardır. Ext2 günlüğe kaydedilmemiş bir FS olarak.

Uzm3

- 2001'de piyasaya sürülmesiyle birlikte ortaya çıktı Linux çekirdeği 2.4.15. Aslında aynı Ext2 ancak günlük desteği ile. Asıl amaç Uzm3 ile geriye dönük uyumluluk olasılığı vardı Ext2 bölümleri yeniden biçimlendirmeye gerek kalmadan. Avantajlar, çoğu testin, hata düzeltmelerinin vb. için Uzm3 aynıydı Ext2 ne yaptı Uzm3 daha kararlı ve daha hızlı FS.

Özellikler:

  • maksimum dosya boyutu: 16GB - 2TB (blok boyutuna bağlı olarak);
  • maksimum bölüm boyutu: 2 - 32 TB (blok boyutuna bağlı olarak);
  • kullanıyorsanız uygun Ext2 ve günlüğe kaydetmeyi kullanmak istiyorsunuz;
  • performansı ve kararlılığı nedeniyle muhtemelen veritabanı sunucuları için en uygun FS olacaktır;
  • Muhtemelen sunucular için en iyi seçim değildir. anlık görüntü oluşturmayı desteklemiyor ( anlık görüntü) FS ve silinen dosyaları kurtarma ile ilgili zorluklar.

Uzm4

- beğenmek Uzm3 FS'nin önceki sürümleriyle geriye dönük uyumluluğa sahiptir. Aslına bakarsanız monte edebilirsiniz Ext2 veya Uzm3 nasıl Uzm4-ve belirli koşullar altında daha fazla üretkenlik elde edin. Ayrıca monte edebilirsiniz Uzm4 nasıl Uzm3 herhangi bir yan etkisi olmadan.

Uzm4- kararlı sürüm 2008'de piyasaya sürüldü. "Aileden" ilk FS mi Dahili mekanizmayı kullanarak " “, Daha az dosya parçalanmasına izin verir ve dosya sisteminin genel performansını artırır. Ayrıca, içinde Uzm4 gecikmeli yazma mekanizması uygulanır ( ), bu da disk parçalanmasını ve CPU kullanımını azaltır. Öte yandan, tembel yazma mekanizması birçok dosya sisteminde kullanılmasına rağmen, uygulamasının karmaşıklığı nedeniyle veri kaybı olasılığını artırmaktadır. Daha fazla ayrıntı için bkz.

Özellikler:

  • maksimum dosya boyutu: 16 TB;
  • maksimum dosya adı boyutu: 255 karakter.
  • için en iyi seçim SSD;
  • öncekilere kıyasla en iyi performans Etx-sistemler;
  • sistemin kendisi daha genç olmasına rağmen, veritabanı sunucuları için bir dosya sistemi olarak da harika Uzm3.

BtrFS

- şirket tarafından geliştirildi kehanet 2007 yılında. Şeması şuna benzer ReiserFS, çalışmalarının ana prensibi sözde. ... BtrFS düğümleri dinamik olarak ayırmanıza, çalışması sırasında dosya sisteminin anlık görüntülerini oluşturmanıza, dosyaları şeffaf bir şekilde sıkıştırmanıza ve çalışma modunda birleştirme yapmanıza olanak tanır.

kararlı sürüm olmasına rağmen BtrFS henüz çoğu dağıtıma dahil değil Linux(bugün itibariyle, gönderiye bakılırsa - sadece SUSE ve Oracle Linux) - yerini alabilir Uzm3 / 4öngörülebilir gelecekte ve zaten dönüşüm seçenekleri sunuyor Uzm3 / 4 içinde BtrFS... Ayrıca, geliştiricilerden birinin Dahili, dedi ki " BtrFS Geleceğe atılan bir adımdır."

Özellikler:

  • maksimum bölüm boyutu: 16 EB;
  • maksimum dosya adı boyutu: 255 karakter.
  • performans, anlık görüntüler ve diğer özellikler nedeniyle - BtrFS sunucu için mükemmel bir dosya sistemidir;
  • kehanet ayrıca bir yedek geliştirir NFS ve CIFS, denir CRFS ile dosya depoları için performansı artırmak üzere tasarlanmıştır. BtrFS;
  • performans testleri gecikme gösterdi BtrFS itibaren Uzm4 gibi katı hal ortamlarında SSD ve nispeten küçük dosyalara sahip işlemler için:

ReizerFS

- 2001 yılında tanıtılan, hiçbir zaman gerçekleştirilemeyecek birçok olasılığı gerçekleştirmiştir. Dahili*. 2004 yılında yerine ReizerFS FS serbest bırakıldı Reizer4.

Aynı zamanda - geliştirme Reizer4çok yavaş ilerliyor ve çekirdekte hala sınırlı desteğe (?) sahip Linux... Şu anda, yalnızca ReiserFS .

Özellikler:

  • maksimum dosya boyutu: 1 EB ();
  • maksimum bölüm boyutu: 16 TB;
  • maksimum dosya adı boyutu: 4032 bayt, ancak 255 karakterle sınırlıdır.
  • günlük dosyaları gibi küçük dosyalarla çalışırken mükemmel performans ve veritabanı sunucuları veya posta sunucuları için mükemmeldir;
  • ReiserFS birimin boyutunu artırmaya uygundur - ancak FS düzeyinde azaltılmasını ve şifrelemesini desteklemez;
  • gelecek Reiser4 hala söz konusu ve şimdilik BtrFS bu iki FS arasında tercih edilen (?) seçenek olarak kalır.

ZFS

- burada bahsetmeye değer, tk. ayrıca şirket tarafından geliştirildi kehanet ve benzer yeteneklere sahip BtrFS ve ReizerFS... Ayrıca şirketten sonra oldukça ünlü oldu elma varsayılan dosya sistemi olarak kullanma niyeti. İlk sürüm ZFS 2005 yılında gerçekleşti.

Lisans kısıtlamaları nedeniyle - ZFSçekirdeğe dahil edilemez Linux, ancak mekanizma yardımı ile desteği mümkündür. Linux'lar (SİGORTA).

Özellikler:

  • maksimum dosya boyutu: 16 EB ();
  • maksimum bölüm boyutu: 256 ZiB (Zebibyte);
  • maksimum dosya adı boyutu: 255 bayt.
  • büyük disk dizileriyle çalışırken mükemmel performans gösterir;
  • diskleri diziler halinde birleştirme, FS anlık görüntüleri oluşturma ve "katmanlı ekran" ile çalışma yeteneğini destekler ( ) veri;
  • yüklemeye ve kullanmaya çalışırken olası zorluklar Linux-sistemler, kullanma ihtiyacı nedeniyle SİGORTA.

Takas

Takas- hiç bir dosya sistemi değil. Dosya veya bölüm takas-th, çekirdek sanal bellek sistemi tarafından kullanılır ve hiçbir dosya sistemi yapısına sahip değildir. Onu monte edemez ve ondan veri okuyamazsınız, çünkü takas yalnızca çekirdek tarafından kullanılır Linux disk değil bellek sayfaları yazmak için. Genelde - takas yalnızca işletim sisteminde boş RAM olmadığında ve verilerin bir kısmını bellekten takas onun serbest bırakılması için.