[linux-l] Plan9-Konzepte (was: VCS)
Peter Ross
Peter.Ross at alumni.tu-berlin.de
Mi Apr 26 16:39:32 CEST 2006
On Wed, 26 Apr 2006, Volker Grabsch wrote:
> Aktueller Vorgang:
> * Serialisierung der Datenstruktur
> * Memcopy
> * Parsen
>
> Mein Vorschlag:
> * Memcopy der Datenstruktur
Protokolle und Schnittstellen, die Datenstrukturen kopieren, gibt es doch
eine ganze Menge.
Serialisieren muss ich doch nur, wenn ich ueber's Netz gehe (oder ganz
unten im System ueber nicht unendlich breite Datenbusse). Da gibt's halt
nur Datenstroeme.
Nebenbei: auf den meisten Computersystemen (zumindest im Serverbereich)
gibt es nur ganz wenige Applikationen, die tatsaechlich dynamische
Datenstrukturen benutzen, und daher von Beschreibungssprachen profitieren.
Der Rest kommt mit Funktionen im klassischen C-Stil prima aus, meist in
der Sorte Funktionscode, Parameterblocklaenge, Parameterblock. Ergebnis
kommt in andere Speicherbloecke. Da wird nichts serialisiert.
> Und was "gethostbyname"... angeht: Klar sind das nette Funktionen,
> die man auch verwendet, aber nicht für alles. Du kannst doch nicht
> für jeden Eintrag in /proc einen neuen System-Call einführen, der
> Sinn und Zweck dieser "auch von menschen lesbaren" Formate ist doch,
> dass man darauf eben nicht angewiesen ist.
Es ist doch eigentlich eher andersrum. Lesen in /proc stellt Daten in
Strings da, die zunaechst binaer in Kernelstrukturen vorliegen.
Da wird eher fuer jeden syscall ein /proc-Eintrag eingefuehrt als
umgekehrt.
Alle Beteiligten eines Computersystems ausser dem davorsitzenden Menschen
koennen sehr gut ohne Strings leben.
Moeglicherweise siehst Du in Deinem Arbeitsumfeld nur noch XML (?), aber
damit fuetterst Du doch nur einen Prozess, der auf ein System aufsetzt, wo
dreissig andere Prozesse voellig stringlos leben. Diese lesen Strings beim
Starten - die Konfigfiles. Und das ist auch gut so, ich finde es nicht
besonders intuitiv, mein ifconfig im Hexcode zu definieren;-)
Gruss
Peter
Mehr Informationen über die Mailingliste linux-l