Normally, the filesystem will serialize write I/Os to maintain a consistent view of files. That is, many reads may occur simultaneously to the one file, but only one write, which is enforced using a lock on the file inode. Applications that do their own serialization (eg databases), do not need this serialization to occur within the filesystem layer.
Concurrent I/O, which implies direct I/O, allows more than one write to execute concurrently to the same file, giving a performance advantage in update-intensive environments. The inode lock is no longer taken except under some circumstances (eg extending a file). It was introduced in AIX 5.2 update 1 (22.214.171.124).
Concurrent I/O may be enabled via two methods:
- Use of the O_CIO flag to the open(2) system call.
- Use of the cio mount option.