Je me demande si ce genre de cas ne pourrait pas profiter de l'appel système "splice" qui permet de balancer des données d'un file descriptor (dans ton cas, ça serait ton socket) vers un autre file descriptor (le fichier sur disque), sans avoir besoin de recopier des données entre userland et kernel.
# splice ?
Posté par galactikboulay . En réponse au message DMA en C++ ?. Évalué à 1.
Je me demande si ce genre de cas ne pourrait pas profiter de l'appel système "splice" qui permet de balancer des données d'un file descriptor (dans ton cas, ça serait ton socket) vers un autre file descriptor (le fichier sur disque), sans avoir besoin de recopier des données entre userland et kernel.
http://en.wikipedia.org/wiki/Splice_(system_call)
J'avoue que je n'ai jamais utilisé, et ça ne marche que si tu veux recopier de la donnée "brute".