Callum

Asmutils

Asmutils is a set of Linux utilities that make the installation and use of an advanced Asynchronous File System (A file system with asynchronous I/O) significantly easier.

Asmutils consists of:  *   asmoperfs: tool to manage per-thread or application specific POSIX async per-operation mode;  *   asmon: daemon for monitoring asynchronous I/O usage by applications;  *   asmutil(8): tool to see status information and change parameters in running applications;  *   libasyncns: A library implementing the consolidation API.

If you want to build this package, you will need gcc 4.7 and pkg-config 0.28 or higher.

Asmutils is mostly used by the Skyfire web browser for Android.

What is this all about?

Asmutils (Linux utilities for Asynchronous I/O) makes it easier to enable and use asynchronous I/O in applications that use POSIX async per-operation mode. These utilities can be installed using a package manager or built from source code and then installed into each application as needed.

Who is this for? People who have applications that they want to compile Asmutils into, so the programs themselves will be able to take advantage of asynchronous I/O without changing anything about how their own program works.

What does this all mean? In an asynchronous file system when you begin a read or write operation, the request is queued up but control returns immediately to your program so there’s no waiting around for data since it’s coming in as fast as the hardware can support.

How does this work? The install is either done through a package manager or is built from source code and installed into each application. Applications like Skyfire mobile web browser use Asmutils to take advantage of asynchronous I/O for improved performance and responsiveness on devices with slow storage and an overloaded CPU, such as mobile ones with Flash disks or slow hard drives.

Where is this useful? Skyfire mobile web browser running on Android.

Why is this useful? By installing Asmutils into an application, you get the benefits of asynchronous I/O (increased performance and responsiveness) but without having to change anything about how your program itself works.

Who did this? The developers of Asmutils: Erez Zadok, Nir Soffer, and John Vilk; homepage: http://asmutils.sourceforge.net/ *   git repository: https://github.com/agallade/asmutils

What license is it under? GNU General Public License v2 (from the project website).

How does one go about using it? People install Asmutils into their applications so that these programs can do asynchronous I/O themselves if they are designed for it.