天天看點

AIO 磁盤異步I/O

參卡:

1. Boost application performance using asynchronous I/O:Learn when and how to use the POSIX AIO API

http://www.ibm.com/developerworks/linux/library/l-async/

2. Linux的異步IO機制(轉)

【Linux異步IO機制】

Linux的I/O機制經曆了一下幾個階段的演進:

1. 同步阻塞I/O: 使用者程序進行I/O操作,一直阻塞到I/O操作完成為止。

2. 同步非阻塞I/O: 使用者程式可以通過設定檔案描述符的屬性O_NONBLOCK,I/O操作可以立即傳回,但是并不保證I/O操作成功。

3. 異步事件阻塞I/O: 使用者程序可以對I/O事件進行阻塞,但是I/O操作并不阻塞。通過select/poll/epoll等函數調用來達到此目的。

4. 異步時間非阻塞I/O: 也叫做異步I/O(AIO),使用者程式可以通過向核心發出I/O請求指令,不用等帶I/O事件真正發生,可以繼續做

           另外的事情,等I/O操作完成,核心會通過函數回調或者信号機制通知使用者程序。這樣很大程度提高了系統吞吐量。

3. buffered asynchronous file I/O on linux

    http://stackoverflow.com/questions/5664105/buffered-asynchronous-file-i-o-on-linux#

4. linux AIO (異步IO) 那點事兒

    http://cnodejs.org/topic/4f16442ccae1f4aa270010a7

繼續閱讀