Re: How do I make vectored AIO calls?
- From: "rupertlssmith@xxxxxxxxxxxxxx" <rupertlssmith@xxxxxxxxxxxxxx>
- Date: Fri, 9 May 2008 04:30:49 -0700 (PDT)
On May 8, 1:22 pm, "rupertlssm...@xxxxxxxxxxxxxx"
<rupertlssm...@xxxxxxxxxxxxxx> wrote:
Hi,
Please forgive my ignorance of the linux file system API; I've
obviously spent far too long in Java land! I have been working on a
Java/C implementation of the Java NIO.2 specification (JSR 203 I
think), and have implemented asynchronous file IO using the Posix API
exposed in 'aio.h'.
The Posix API does not expose vectored asynchronous reads and writes
(aio_readv and aio_writev). I do know that the Linux kernel supports
vectored asynchronous io (I'm on 2.6.22), and I have checked the
source to see that patches for this are in fact there. So my question
is, where is the API to use this? I'm guessing that I need to use the
linux native filesystem API and pass it a structure with flags set
correctly in it to request the style of io operation I am after. Do I
do this though a call to readv/writev? How are asynchronous completion
notifications delivered? A small example or pointers to where I can
learn more would be very much appreciated. Thanks for any help you can
give.
Rupert
P.S. I can obviously do the vectored calls through the Posix API by
copying blocks of memory, but that kind of misses the point.
OK. I think I figured this one out for myself. I need to install
libaio, and the API calls to use it are exposed in 'libaio.h'.
Rupert
.
- References:
- How do I make vectored AIO calls?
- From: rupertlssmith@xxxxxxxxxxxxxx
- How do I make vectored AIO calls?
- Prev by Date: How do I make vectored AIO calls?
- Next by Date: lzma multithreaded ?
- Previous by thread: How do I make vectored AIO calls?
- Next by thread: lzma multithreaded ?
- Index(es):
Relevant Pages
|