Moin Moin!
das ist alles richtig, da werden die Platten flüsterleise. Bei üblicher Alltags-Geräuschkulisse ist das alles nicht weiter wild, da höre ich eine HDD gar nicht (wenn ich nicht gezielt lausche). In einem ruhigen Wohnzimmer am Abend ist "flüsterleise" aber immer noch unangenehm laut.
Schmeiß den Server aus dem Wohnzimmer raus. Der Zuspieler darf bleiben, der darf lüfterlos von SATA oder LAN booten. Der Server kommt ins "Home Office", auf das oberste Regalbrett in der Besenkammer, oder in den Keller, dazwischen ein schnelles WLAN oder ein paar Meter Cat5 (oder besser), notfalls ein schnelles Powerline-System.
Hast Du einen groben Plan, wie übel FUSE bremst?
Nein, habe ich nicht. Da fehlt mir bisher jegliche Erfahrung.
Du kannst Dir ja mal in der WP ansehen, wie FUSE funktioniert.
"Die" Applikation macht einen normalen Dateisystem-Zugriff. Erster Übergang zwischen User-Space und Kernel-Space. Der Kernel merkt, dass dort FUSE läuft, und erzeugt eine Message an einen (von möglicherweise vielen) FUSE-Diensten. Zweiter Übergang zwischen User-Space und Kernel-Space. Der wiederum erzeugt (außer bei Spiel-Dateisystemen à la /dev/null, /dev/zero, /dev/full) einen oder mehrere weitere Kernel-Aufrufe (read/write auf Devices oder Dateien, Netzwerk-I/O), wiederum mit reichlich Übergängen zwischen User-Space und Kernel-Space. Schließlich erzeugt der FUSE-Dienst eine Antwort, die wiederum in den Kernel-Space muß und von dort an "die" Applikation zurückgereicht werden muß. Das sind zwei weitere Übergänge zwischen User-Space und Kernel-Space.
Mit Fuse sind also minimal zwei weitere Übergänge zwischen User-Space und Kernel-Space nötig, eher vier oder mehr. Und die sind leider sehr aufwendig und bremsen fürchterlich. Das ist ein Grundproblem fast aller gängigen Betriebssysteme.
Willst Du dann aus dem Userspace mit einer SATA-Platte reden und ATA und EXT2/3/4 nochmal im Userspace implementieren?
Nein, auch das nicht. Der Gedanke war, nur beim ersten Request die Platte anzuwerfen (also ihre Stromversorgung einzuschalten), und davon abgesehen alle Requests an den eigentlichen Treiber durchzureichen. Aber ich gebe zu, ich kenne mich mit den Einzelheiten da noch nicht aus. Das wäre für mich Neuland mit einer Menge Lernpotential.
Das war auch meine Idee, daher die Androhung der vielen Kernel-Patches. Linux ist mittlerweile sehr komplex geworden und für sehr viele Dinge wandern die Daten(zeiger) mittlerweile durch mehrere gestapelte Subsysteme. Daran etwas sauber und robust zu ändern ist alles andere als trivial.
In den späten 80er- bis frühen 90er-Jahren gehörten für mich Multimeter, Oszi und Lötkolben zum Computer so selbstverständlich dazu wie Ketchup zu Pommes.
Klar. Ich schalte meinen Hauptrechner von einer (ab Werk vorhandenen) dedizierten Power-Taste in der Tastatur ein und aus, à la Mac. [...]Na also. Hättest mich sonst auch enttäuscht. :-)
*g*
Schöne Feiertage,
Ebenso,
Alexander
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".