Date: Mon, 22 Dec 1997 06:39:43 -0500 (EST) From: "John S. Dyson" <toor@dyson.iquest.net> To: jamil@acroal.com (J. Weatherbee - Senior Systems Architect) Cc: hackers@FreeBSD.ORG Subject: Re: Descriptor vectorized read/write? Message-ID: <199712221139.GAA01259@dyson.iquest.net> In-Reply-To: <Pine.BSF.3.96.971222001036.2544A-100000@acroal.com> from "J. Weatherbee - Senior Systems Architect" at "Dec 22, 97 00:35:09 am"
next in thread | previous in thread | raw e-mail | index | archive | help
In -current, we have implemented POSIX AIO, it does what you
need. It is super-efficient on raw devices (I wonder what
that is for??? :-)).
J. Weatherbee - Senior Systems Architect said:
> And in addition to this, has anyone ever though of implement vectorized
> read/write calls that are vectorized across multiple descriptors. i.e
> reading from multiple descriptors into buffers simultaneously, possibly
> implemented similarily to the way poll(2) is.
>
> i.e (multiple duplicate fd's with same direction handled the same as
> readv/writev scatter io)
>
> ---------------------------------------------------------------------------
>
> void mreadv (const struct miovec *miov, int miovcnt);
>
> struct miovec
> {
> int fd; /* file descriptor */
> int err; /* error status/ return count / initially i/o direction
> * MREAD/MWRITE */
> char *base; /* base address */
> size_t len; /* io length */
> };
> ---------------------------------------------------------------------------
>
--
John | Never try to teach a pig to sing,
dyson@freebsd.org | it just makes you look stupid,
jdyson@nc.com | and it irritates the pig.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199712221139.GAA01259>
