Linux asynchronous Io support:
Http://www.bullopensource.org/posix/
POSIX asynchronous I/O for Linux |
|
POSIX asynchronous I/O for Linux (paols) is an attempt to write a POSIX AIO compliant API Based on Linux kernel 2.6 native AIO API. This library can work without patching the kernel. Kernel patches are only needed if you want to use posix aio features not available from user-space or to improve performance. |
|
|
|
Latest news |
Wed, 21 Feb 2007:Release 0.8.2
- A lot of fixes both in the library code and the testcases
- Support for listio syscall
- Library is now Mt safe
- Kernel patches ported to 2.6.20
|
Mon, 20 Mar 2006:VPC: Release 0.8
- Fixed x86_64 implementation.
- Fixed testcases use of volatile Variables
|
Mon, 7 Nov 2005:VPC: Release 0.7
- Merged
IO_CMD_EVENT AndIO_CMD_CHECKPOINT IntoIO_CMD_GROUP For listio support.
- Fixed Buf type from
unsigned char * Tochar * For gcc4 in check/aio_fsync.c.
- Do not use
aiocb->data To store a pointer toaiocb . This field was used inUpdate_events ()In src/aio_event.c to retrieveaiocb Fromio_event . We can instead useevent->obj .
- Added missing comma inAio_syscall4In src/syscall_x86.h.
- Added
--enable-debug Option to configure for compiling the library with debug symbols. Changed Configure. AC and src/makefile. AM
- Changed_ Aio_thread_init ()To take
sigevent As Arg instead ofaiocb .
- Added new listio testcases in check.
- Added support patches for the 2.6.14 kernel including Ben lahaise's additions for request Completion notification.
- Updated support patches for the 2.6.10 and 2.6.12 kernels.
|
Mon, 25 Jul 2005:VPC: Release 0.6
- Fixed compilation errors when none of the Kernel patches are applied I. e. No support for AIO and Lio completion signal and no supportIo_setup (0 ,...).
- Bug fixes concerning buffered AIO support inAio_readAndAio_write.
- Fixed the type of the buffer (fromUnsigned char *ToChar *) Used for the AIO request in a few places in Testbed for consistency. These were causing compile time errors under GCC 4.0.
- Bug fix in Kernel patches. InSys_io_submit, The iocb address was passedCreate_lioInstead of whatever the user passed inSigevent sigev_value.
- Removed automatic checking of Kernel support for buffered AIO in Configure. ac. The feature must be manually enabled or disabled. Default right now is disabled.
- Added mini testsuite so that doing a 'Make check' after building the library makes sure everything is in order before installing. CurrentlyAio_fsyncAndAio_cancelChecks fail due to lack of support from the kernel.
- Added support patches for the 2.6.12 kernel.
- Releases (Library and Kernel patches) are now available on SourceForge.
|
Older news available here. |
|
Library-Kernel patches |
Download on SourceForge. |
|
|
POSIX test suite |
Posixtestsuite-1.5.0-aio.patch |
Udpdated AIO test suite in open POSIX Test Suite (patch now supported ded in opts 1.5.1) |
|
MySQL PAIO patch |
MySQL 4.1.12 patch |
This patchset provides posix aio support to the MySQL InnoDB engine. The first patch in the series adds generic posix aio support to the InnoDB engine. The second patch adds detection of libposix-AIO for use in place of librt. |
|
Qemu PAIO Patches |
Qemu libposix-AIO patch |
This patch allow to link qemu against libposix-AIO instead of librt. It adds a parameter, "-- enable-libposix-AIO", to enable this feature.
|
Qemu ide direct I/O patch |
As memory provided to the IDE device is aligned, this patch uses it instead of internal ide Virtual Device buffer. |
|
Benchmark Results |
Sysbench-OLTP |
|
Old Resources |
Old Library releases and Kernel patches |
|
Developper |
Sé Bastien dugué |
Laurent Vivier [GPG key] |
|
Documentation |
Readme |
Posix aio for Linux data structure [Dia] |
Lioevent patch description |
... |
|
Links |
|
Kernel Asynchronous I/O (AIO) Support for Linux |
The Open Group Base specifications:
- AIO Rationale
- AIO system interfaces:
- AIO. h
- Aio_cancel
- Aio_error
- Aio_fsync
- Aio_read
- Aio_return
- Aio_suspend
- Aio_write
- Lio_listio
|
The single UNIX specification, version 3 |
POSIX option groups |
Open POSIX test suite |
|
Page maintained: |
Sé Bastien dugué. |
Last Update: 02/28/2007 22:01:19 |
|
|