Joachim Durchholz schrieb am 5. September 2007 0:55
> Die ganze Problematik um select(), poll() usw. (ich glaube, Linux hat
> mittlerweile vier verschiedene Funktionen, um auf Ereignisse zu
> warten).
poll,select,pselect sind alle POSIX..zu epoll&co siehe unten ;)
> Netzwerkfunktionen generell; soweit ich weiß, kocht da jedes Unix
> sein eigenes Süppchen.
so? dabei sind sockets auch posix....
> FUSE.
FUSE ist jetzt so die API die jeder braucht? Ich glaube alleine aus
Speed gruenden werden bei den meisten kernel architekturen die
wichtigen FS im kernel bleiben ;)
> Natürlich.
> Aber schau einfach mal auf die Seiten von lighttpd, welche Aufrufe
> sie auf welchem Betriebssystem verwenden, damit die Entgegennahme von
> Netzwerktraffic wirklich schnell geht. Das sind mindestens fünf
> verschiedene...
> Die Macher von lighttpd wären sicherlich glücklich, wenn sie nur für
> eine API programmieren müssten -> sie üben Druck aus, damit die eine
> wirklich brauchbare API (welche auch immer das ist) auf allen Unixen
> implementiert wird.
> Das ist natürlich nur ein Projekt, und wäre lighttpd das einzige, das
> diese Sorte Druck macht, würde sich Sun nicht weiter drum scheren.
> Aber die Apache-Leute haben natürlich das gleiche Problem, genauso
> jeder andere, der einen lastfesten Internet-Service machen will
> (Datenbanken z.B.).
>
> Wenn's dann darum geht, *welche* Schnittstelle implementiert wird -
> Sun wird da nicht auf BSD oder AIX schauen, sondern auf Linux. Ist
> halt das verbreitetste Unix-kompatible System.
Solaris hat seit Version 7 /dev/poll, die schauen nirgendwo mehr hin.
Aber klar,das ist ne stelle die in den specs fehlt, da muss die open
group mal wieder was an den single unix specs drehen.
> Zu Zeiten, als es kein Linux gab, reichte der Druck übrigens
> offensichtlich nicht aus. Sonst wär die Schmalspur-API namens Posix
> nie so verabschiedet worden (und dann teilweise noch unvollständig
> oder schlampig implementiert gewesen - man schaue sich den Ärger mit
> den pthreads an...)
POSIX ist btw nicht nur eine API. welchen aerger gibt es denn mit
pthreads? ich weiss nur das linux die lange nicht richtig
implementiert hat, aber dafuer kann doch posix nichts,andere *NIXe
habens ja auch hinbekommen.
> Die ganze Problematik um select(), poll() usw. (ich glaube, Linux hat
> mittlerweile vier verschiedene Funktionen, um auf Ereignisse zu
> warten).
poll,select,pselect sind alle POSIX..zu epoll&co siehe unten ;)
> Netzwerkfunktionen generell; soweit ich weiß, kocht da jedes Unix
> sein eigenes Süppchen.
so? dabei sind sockets auch posix....
> FUSE.
FUSE ist jetzt so die API die jeder braucht? Ich glaube alleine aus
Speed gruenden werden bei den meisten kernel architekturen die
wichtigen FS im kernel bleiben ;)
> Natürlich.
> Aber schau einfach mal auf die Seiten von lighttpd, welche Aufrufe
> sie auf welchem Betriebssystem verwenden, damit die Entgegennahme von
> Netzwerktraffic wirklich schnell geht. Das sind mindestens fünf
> verschiedene...
> Die Macher von lighttpd wären sicherlich glücklich, wenn sie nur für
> eine API programmieren müssten -> sie üben Druck aus, damit die eine
> wirklich brauchbare API (welche auch immer das ist) auf allen Unixen
> implementiert wird.
> Das ist natürlich nur ein Projekt, und wäre lighttpd das einzige, das
> diese Sorte Druck macht, würde sich Sun nicht weiter drum scheren.
> Aber die Apache-Leute haben natürlich das gleiche Problem, genauso
> jeder andere, der einen lastfesten Internet-Service machen will
> (Datenbanken z.B.).
>
> Wenn's dann darum geht, *welche* Schnittstelle implementiert wird -
> Sun wird da nicht auf BSD oder AIX schauen, sondern auf Linux. Ist
> halt das verbreitetste Unix-kompatible System.
Solaris hat seit Version 7 /dev/poll, die schauen nirgendwo mehr hin.
Aber klar,das ist ne stelle die in den specs fehlt, da muss die open
group mal wieder was an den single unix specs drehen.
> Zu Zeiten, als es kein Linux gab, reichte der Druck übrigens
> offensichtlich nicht aus. Sonst wär die Schmalspur-API namens Posix
> nie so verabschiedet worden (und dann teilweise noch unvollständig
> oder schlampig implementiert gewesen - man schaue sich den Ärger mit
> den pthreads an...)
POSIX ist btw nicht nur eine API. welchen aerger gibt es denn mit
pthreads? ich weiss nur das linux die lange nicht richtig
implementiert hat, aber dafuer kann doch posix nichts,andere *NIXe
habens ja auch hinbekommen.