Hallo klawischnigg,
ich formuliere es mal ketzerisch: was wäre denn, wenn es gar keine Ordner gäbe? Was müsste man tun, um noch sinnvoll arbeiten zu können?
Ich habe lange Jahre auf einem IBM Großrechner programmiert. Da gibt's keine Ordner. Nun ja, fast nicht. Es gibt "Dateien", und die liegen auf einer Festplatte. Ich kann eine Datei ansprechen, indem ich Name und Platte spezifiziere. Oder ich katalogisiere die Datei, dann muss ihr Name unter den Millionen von Dateien eindeutig sein. Aber er kann lang sein und auch Punkte enthalten, ich könnte also "X12345.USER.CNTL" verwenden, für die User-Jobcontrol Dateien des Users X12345. Der Katalog ist eine Art von Datenbank, d.h. der Zugriff erfolgt sehr fix.
Was dann auch gleich die "Ordner" des z/OS offenbart: Library-Dateien. Aber die haben genau eine Ebene.
Tatsächlich funktioniert das seit Jahrzehnten. Unser Großrechner verwendet eine MENGE Library-Dateien, für Source- und Objectcode, für Config-Files, vieles mehr, und eine RIESENMENGE "normaler" Dateien. Bei denen gibt's dann auch noch die Generationsdateien, da kann ich die Dateie FOO(0) lesen und FOO(1) schreiben, woraufhin eine neue Generation entsteht.
Ich will nicht sagen, dass das besser ist. Nur anders. Und es funktioniert erstaunlich gut. Für zehntausende von Benutzern (die nichts anderes kennengelernt haben und erstmal komplett verwirrt sind, wenn man sie vor ein hierarchisches Dateisystem setzt).
Der Hauptzweck von Ordnern ist eigentlich, mehrere Dateien mit gleichem Namen haben zu können. Andernfalls wäre man recht schnell angeschmiert, wenn man mehrere Versionen eines SDK parallel installieren müsste.
Alles andere könnte man deutlich eleganter mit einem Schlagwortsystem lösen. Eine Datei "haus" ist: ein Bild, eine Datei von Rolf, es ist das Haus von Heinz Humbug, es ist im Sommer fotografiert, es ist JPG, es ist 2000×1000. All das wären denkbare Schlagworte, und ein Dateisystem, dass eine Datei unter den Schlagworten "Name:Haus", "Typ:Bild", "Format:JPG", "Owner:Rolf", "Resolution:2000×1000", "Kategorie:Fotos", "Content:[Haus, Heinz Humbug, Sommer]" ablegt, würde vermutlich prima funktionieren. Man würde an diversen Stellen anders arbeiten müssen. Die Dateien eines SDK würden spezielle Schlagworte wie "SDK:Windows", "Version:10.1234", "Typ:Header" und noch ein paar Sachen mehr brauchen. Man braucht ein Schlagwortsystem und gewisse Vorgaben, wann man welche Schlagworte nutzen muss. Man ist vermutlich viel strikter gezwungen, seine Dateien zu verschlagworten.
Wenn ich einen Schwung Dateien von der SD Karte meines Fotoapparats herunterkopiere, müsste ich dann auch sofort Schlagworte vergeben. Vor dem Kopieren müsste das Betriebssystem prüfen, ob ich auf diese Weise eine Mehrdeutigkeit bekomme. Wenn ja, kann ich - wie gehabt - entscheiden, ob ich das überschreiben will. Oder ich verbessere meine Schlagworte.
Das wäre dann kein Dateisystem, sondern eher sowas wie eine Dateien-Datenbank. Microsoft wollte das für Win Vista bauen: WinFS hieß die Idee. Die Realisierung zog sich und hat das Leben von WinXP deutlich verlängert. Schließlich haben sie Vista ohne WinFS ausgeliefert und das Projekt schließlich ganz beerdigt. Ob das nun gegen die Idee eines solchen Filesystems spricht, oder gegen die Kompetenz von Microsoft - wer weiß 😉
Rolf
sumpsi - posui - obstruxi