内容简介:Linux内核在情人节得到了一枚新的戒指……io_uring。io_uring的目的是在Linux上提供更快、更高效的I/O操作,并且应该在下一个内核周期中提供。io_uring的Linux块维护人员和开发人员,Facebook的Jens Axboe在Git上将新接口排队过夜进入Io_uring比Linux的AIO异步I/O代码要高效得多,它支持高效的缓冲异步I/O,甚至可以在不执行轮询I/O系统调用的情况下执行I/O,以及其他效率增强。
Linux内核在情人节得到了一枚新的戒指……io_uring。io_uring的目的是在 Linux 上提供更快、更高效的I/O操作,并且应该在下一个内核周期中提供。
io_uring的Linux块维护人员和开发人员,Facebook的Jens Axboe在Git上将新接口排队过夜进入 linux-block/for-next 。io_uring接口提供在应用程序和内核之间共享的提交和完成队列环,以避免多余的副本。新接口只有两个新的系统调用(io_uring_setup和io_uring_enter)来处理I/O, Axboe之前曾在“aioring”这个名称下使用此代码。
Io_uring比Linux的AIO异步I/O代码要高效得多,它支持高效的缓冲异步I/O,甚至可以在不执行轮询I/O系统调用的情况下执行I/O,以及其他效率增强。 接口补丁 继续解释:
- 通过此设置,可以通过单个系统调用执行异步IO。未来的发展将使用这个界面启用轮询IO,并进行轮询提交。后者将使应用程序能够在不进行任何系统调用的情况下执行IO。
- 对于IRQ驱动的IO,如果应用程序想要等待它们发生,则只需要进入内核以进行完成。
- 每个io_uring都有一个工作队列支持,以支持缓冲的异步IO。如果命令需要在设备端等待IO,我们将只向异步上下文发送。可以在页面缓存中直接访问的任何数据都是内联完成的。这避免了常见线程池的缓慢问题,因为缓存数据的访问速度与同步接口一样快。
- io_uring的设计理念似乎是为Linux提供快速高效的I/O。
围绕新接口构建的用户空间库存在 liburing 。Axboe的FIO基准也已经进行了调整,以支持io_uring。这应该是Linux 5.1中另一个值得兴奋的特性。
Linux公社的RSS地址 : https://www.linuxidc.com/rssFeed.aspx
本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-02/156912.htm
以上所述就是小编给大家介绍的《Linux内核正在努力实现快速高效的I/O》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Linux 内核开发人员正在讨论删除对 x32 的支持
- RISC-V的Linux内核支持正在变得更好,为HiFive Unleashed开发板提供支持
- Windows 10正在获得Microsoft构建的Linux内核 并提供一个新的终端应用程序
- Meme 正在吞噬价值
- 容器正在吞噬世界
- 强化学习时代正在到来
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Effective Objective-C 2.0
Matt Galloway / 爱飞翔 / 机械工业出版社 / 2014-1 / 69.00元
《effective objective-c 2.0:编写高质量ios与os x代码的52个有效方法》是世界级c++开发大师scott meyers亲自担当顾问编辑的“effective software development series”系列丛书中的新作,amazon全五星评价。从语法、接口与api设计、内存管理、框架等7大方面总结和探讨了objective-c编程中52个鲜为人知和容易被忽......一起来看看 《Effective Objective-C 2.0》 这本书的介绍吧!