Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 07 Dec 2007 13:21:38 +0000
From:      "Poul-Henning Kamp" <phk@phk.freebsd.dk>
To:        Ivan Voras <ivoras@freebsd.org>
Cc:        freebsd-fs@freebsd.org
Subject:   Re: readv: parallel or sequential? 
Message-ID:  <5179.1197033698@critter.freebsd.dk>
In-Reply-To: Your message of "Fri, 07 Dec 2007 14:22:22 %2B0100." <fjbh4h$f5s$1@ger.gmane.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
In message <fjbh4h$f5s$1@ger.gmane.org>, Ivan Voras writes:
>This is an OpenPGP/MIME signed message (RFC 2440 and 3156)
>--------------enig09F7468F9E992596CC57A5F2
>Content-Type: text/plain; charset=UTF-8
>Content-Transfer-Encoding: quoted-printable
>
>Dag-Erling Sm=C3=B8rgrav wrote:
>
>> But to return to what Ivan was asking, I think what the man page is
>> trying to say is that you can't use readv() to e.g. read individual
>> network packets into separate buffers (unless each packet just happens
>> to fit exactly within each buffer).
>
>What about streaming protocols like TCP? If, for example, I know I have
>a N-byte header, N2-byte body, couldn't readv handle it with two iovecs?

yes.

>But that's not why I started the discussion. I'm looking for a way to do
>"scattered" async IO on files (the intention: feed an array of offsets,
>lengths and buffers into the kernel, let it perform the requests in
>parallel, if it can) and started with this man page.

You want AIO

-- 
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk@FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5179.1197033698>