POSIX異步I / O(AIO)的狀態是什麼? - What is the status of POSIX asynchronous I/O (AIO)?

問題:

There are pages scattered around the web that describe POSIX AIO facilities in varying amounts of detail. 網頁上散佈着各種描述POSIX AIO設施的頁面,其中包含不同的細節。 None of them are terribly recent. 它們都不是最近的。 It's not clear what, exactly, they're describing. 目前還不清楚他們究竟在描述什麼。 For example, the "official" (?) web site for Linux kernel asynchronous I/O support here says that sockets don't work, but the "aio.h" manual pages on my Ubuntu 8.04.1 workstation all seem to imply that it works for arbitrary file descriptors. 例如, Linux內核異步I / O支持的“官方”(?) 網站說套接字不起作用,但我的Ubuntu 8.04.1工作站上的“aio.h”手冊頁似乎都暗示它適用於任意文件描述符。 Then there's another project that seems to work at the library layer with even less documentation. 然後還有另一個項目似乎在圖書館層工作,文檔更少。

I'd like to know: 我想知道:

  • What is the purpose of POSIX AIO? POSIX AIO的目的是什麼? Given that the most obvious example of an implementation I can find says it doesn't support sockets, the whole thing seems weird to me. 鑑於我能找到的最明顯的實現示例說它不支持套接字,整個事情對我來說似乎很奇怪。 Is it just for async disk I/O? 它只適用於異步磁盤I / O嗎? If so, why the hyper-general API? 如果是這樣,爲什麼超通用API? If not, why is disk I/O the first thing that got attacked? 如果沒有,爲什麼磁盤I / O首先遭到攻擊?
  • Where are there example complete POSIX AIO programs that I can look at? 哪些示例完整的 POSIX AIO程序我可以看一下?
  • Does anyone actually use it, for real? 有沒有人真正使用它,真的嗎?
  • What platforms support POSIX AIO? 哪些平臺支持POSIX AIO? What parts of it do they support? 他們支持哪些部分? Does anyone really support the implied "Any I/O to any FD" that <aio.h> seems to promise? 有沒有人真的支持<aio.h>似乎承諾暗示的“對任何FD的任何I / O”?

The other multiplexing mechanisms available to me are perfectly good, but the random fragments of information floating around out there have made me curious. 我可以使用的其他多路複用機制非常好,但隨處可見的信息碎片讓我很好奇。


解決方案:

參考: https://stackoom.com/en/question/Mrc
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章