LWN.net Logo

Kernel Summit: Asynchronous I/O

Kernel Summit: Asynchronous I/O

Posted Aug 2, 2004 6:42 UTC (Mon) by goaty (guest, #17783)
Parent article: Kernel Summit: Asynchronous I/O

I'd love to use asynchronous file I/O. Unfortunately, the APIs have "this was designed to make Oracle go fast" written all over them. I couldn't think of a single thing they were useful for except a big old-fashioned database. They can't even do open() asynchronously.

The application I was interested in was GUI file managers. To call up a directory in a file manager, you first need the file list, then you need to stat every file, and then ideally you need to read the file's magic number. At present all this is done synchronously, so the disk goes crazy seeking all over the damn place, and it takes forever. If the I/O requests could be submitted asynchronously, then the kernel could sort them using its normal elevator algorithm, and performance would suck less.

What it comes down to is that the current AsyncIO API has few users because it has few uses. If there was an AsyncIO API "for the peoples", that made things like web servers and "ls -l" faster, then the users would come.


(Log in to post comments)

Kernel Summit: Asynchronous I/O

Posted Sep 13, 2004 8:57 UTC (Mon) by oberholtzer (guest, #24680) [Link]

We use asynchronous I/O from network, serial and keyboard devices. We do
this in a single thread because we do not believe that multiple thread
responsiveness is as good. This is via SIGIO.

We have not used the 'aio' named functions. Not due to lack of interest. I
think a more general description of the functions is needed.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds