zero-copy API

Sean Kelly sean at invisibleduck.org
Thu Oct 14 21:03:21 PDT 2010


Andrei Alexandrescu <SeeWebsiteForEmail at erdani.org> wrote:
> On 10/14/2010 07:50 PM, Denis Koroskin wrote:
>> On Fri, 15 Oct 2010 03:08:23 +0400, Andrei Alexandrescu
>> <SeeWebsiteForEmail at erdani.org> wrote:
>> 
>>> http://docs.google.com/viewer?a=v&q=cache:K15RE_6zxSwJ:citeseerx.ist.psu.edu/viewdoc/download%3Fdoi%3D10.1.1.134.4874%26rep%3Drep1%26type%3Dpdf+zero+copy+i/o&hl=en&gl=us&pid=bl&srcid=ADGEESjBkiUxG4hRImVjOFy886GrJxRuhFcePjbadiUw9h1c_iicbhhArOgd55vpk0tP6ST4KjhY1j6rl1_PN-msIExUvxSPJWuXfQTbljj4ZYyutY6wvp3mc3t2LuA2-5kKPbbEp7z6&sig=AHIEtbSmuH-Y2AGdwSQxyJcbBXLRB3mJdg
>>> 
>>> 
>>> 
>>> Andrei
>> 
>> That paper is an ancient one and the API they demonstrated isn't a
> > good
>> one.
> 
> What is a better, more recent one? I noticed that libfbufs has little
> traction (googling for it only reveals 4 results) but the paper is
> quoted by 63 others, so it's fairly influential.

Perhaps not terribly relevant, but IOCP on Windows does this. To perform
an asynchronous read you supply the buffer to recv and then an event is
signaled when the read completes. The same API works for file io and
there's support for scatter/gather as well. It makes for a more
complicated program though.


More information about the Digitalmars-d mailing list