Das erste, was Sie aus dem Weg räumen müssen, ist der Vergleich mit ext[234] . Das Ersetzen eines von ihnen ist wie das Ersetzen von NTFS in Windows. Möglich, sicher, aber es bedarf einer Entscheidung von oben, um zu wechseln.
Ich weiß, Sie fragen nach der Beibehaltung bestehender Alternativen, nicht nach der Entfernung anderer Alternativen, aber diese privilegierte Konkurrenz saugt den größten Teil des Sauerstoffs im Raum auf. Solange Sie die Konkurrenz nicht loswerden, werden es marginale Alternativen außerordentlich schwer haben, Aufmerksamkeit zu erregen.
Seit ext[234] nicht verschwinden, sind JFS und seinesgleichen von Anfang an ernsthaft im Nachteil.
(Dieses Phänomen wird Tyranny of the Default genannt.)
Die zweite Sache ist, dass sowohl JFS als auch XFS ungefähr zur gleichen Zeit zu Linux beigetragen haben und sie ziemlich genau die gleichen Probleme lösen. Kernel-Freaks können sich über Feinheiten zwischen den beiden streiten, aber Tatsache ist, dass diejenigen, die auf einen von ext[234] gestoßen sind Die Beschränkungen von hatten zwei ungefähr gleichwertige Lösungen in XFS und JFS.
Warum also hat XFS gewonnen? Ich bin mir nicht sicher, aber hier sind einige Beobachtungen:
-
Red Hat und SuSE haben es unterstützt.
RHEL 7 verwendet XFS als Standarddateisystem, und es war eine Installationszeitoption in RHEL 6. Nach dem Erscheinen von RHEL 6 hat Red Hat die offizielle XFS-Unterstützung auf RHEL 5 zurückportiert. XFS war zuvor für RHEL 5 über das halboffizielle verfügbar EPEL-Kanal.
SuSE hat XFS viel früher als Red Hat als Installationsoption aufgenommen und geht zurück auf SLES 8, das 2002 veröffentlicht wurde. Es ist nicht die aktuelle Standardeinstellung, aber es wurde die ganze Zeit über offiziell unterstützt.
Es gibt viele andere Linux-Distributionen, und RHEL und SuSE sind nicht die beliebtesten Distributionen im gesamten Linux-Bereich, aber sie sind die großen Eisen-Distributionen der Wahl. Sie spielen dort, wo die Vorteile von JFS und XFS am wichtigsten sind. Diese Unternehmen können nicht immer mit dem Hund wedeln, aber in Fragen, bei denen es um große Eisen geht, können sie es manchmal.
-
XFS stammt von SGI, einem Unternehmen, das im Wesentlichen verschwunden ist. Bevor sie starben, gaben sie formell alle Rechte ab, die sie an XFS hatten, damit die Linux-Leute sich wohl fühlten, es in den Kernel aufzunehmen.
IBM hat auch genügend Rechte an JFS abgetreten, um es den Linux-Kernel-Betreuern bequem zu machen, aber wir dürfen nicht vergessen, dass sie ein aktives Multimilliarden-Dollar-Unternehmen mit Tausenden von Patenten sind. Wenn IBM jemals entscheiden sollte, dass ihre Unterstützung von Linux nicht mehr mit ihren Interessen übereinstimmt, könnte es hässlich werden.
Sicher, jemand besitzt jetzt wahrscheinlich die IP-Rechte von SGI und könnte Aufhebens machen, aber es würde wahrscheinlich nicht schlimmer ausgehen als das SCO-Debakel. IBM könnte sogar eingreifen und helfen, einen solchen Troll zu zerquetschen, da ihre Interessen es tun enthalten derzeit die Unterstützung von Linux.
Der Punkt ist, dass sich XFS für viele Leute einfach "freier" anfühlt. Es ist weniger wahrscheinlich, dass es ein zukünftiges IP-Problem aufwirft. Eines der Probleme mit unserem derzeitigen IP-System besteht darin, dass das Urheberrecht an die Lebensdauer des Unternehmens gebunden ist und Unternehmen normalerweise nicht sterben. Nun, SGI hat es getan. Das gibt den Menschen ein besseres Gefühl, wenn sie den Beitrag von SGI zu XFS wie den Beitrag einer Einzelperson behandeln.
-
In jedem System mit Netzwerkeffekten, bei dem Sie zwei ungefähr gleichwertige Alternativen haben – in diesem Fall JFS und XFS – erhalten Sie fast nie eine 50/50-Marktanteilsaufteilung.
Hier sind die Netzwerkeffekte Training, Kompatibilität, Verfügbarkeit von Funktionen ... Diese Effekte verschieben das Gleichgewicht immer weiter in Richtung der Option, die diesen frühen Sieg errungen hat. Erleben Sie Windows vs. OS X, Linux vs. all-other-*ix, Ethernet vs. Token Ring...
Als jemand, der intensiv mit JFS unter Linux gearbeitet und sich mit dem Quellcode befasst hat, um Probleme zu beheben, kann ich mehrere Gründe annehmen:
- JFS ist eine Portierung eines Dateisystems, das für AIX erstellt, dann auf OS/2 portiert und dann als Open Source bereitgestellt wurde. Keiner der Entwickler von AIX arbeitet daran, da die Gefahr einer Code-Kontamination besteht und OS/2 eine ganze Weile nicht entwickelt wurde.
- Bei meiner Codelesung und der Entwicklung von JFS habe ich viele Probleme im Code gesehen (eines davon war das Fehlschlagen der Größenänderung des FS auf Big-Endian-Rechnern, d. h. denen von IBM), die durch das Projekt behoben wurden und wurden auch Monate nach dem Fix nicht in den Mainline-Kernel gemergt, wahrscheinlich weil die IBM-Entwickler nicht offiziell die Betreuer dieses Teils des Baums waren.
- Der Code weist viele Lesbarkeitsprobleme auf, die wahrscheinlich zum Mangel an offizieller Unterstützung durch Distributionen beigetragen haben, da schwer lesbarer Code schwer zu debuggen ist.
- Ich nehme an, dass eine der Hauptverwendungen am Anfang von JFS für Linux darin bestand, Informationen zu migrieren und Informationen mit AIX-Systemen auszutauschen, aber in AIX5L gab es keine (unterstützte) Option, das Dateisystem auf einer einfachen Festplatte ohne das proprietäre zu verwenden Von AIX verwendetes LVM, das für Linux nicht verfügbar war, und JFS wurde erweitert, ohne dass diese Erweiterungen auf Linux portiert wurden (siehe Nummer 1).
Klarstellung:Obwohl ich in der Vergangenheit bei IBM gearbeitet habe, war ich nie Mitglied des IBM AIX-Entwicklungsteams oder des JFS-Entwicklungsteams, und diese angenommenen Gründe basieren auf meiner logischen Schlussfolgerung und meiner Vertrautheit mit der Geschichte des Dateisystems und Linux.