linux内核aio功能

linux内核aio功能,第1张

linux内核aio功能

首先,使用

libaio
POSIX代替POSIX 做好工作
aio

O_DIRECT的使用是否受到限制?

我不是100%确定这是真正的问题,但是

O_DIRECT
有一些要求(主要引用TLPI):

  • 传输的数据缓冲区必须在内存边界上对齐,该内存边界是块大小倍数(使用
    posix_memalign
  • 开始数据传输的文件或设备偏移量必须是块大小的倍数
  • 要传输的数据长度必须是块大小的倍数

乍一看,我可以看到您没有采取进一步的措施来对齐中的内存

allocate_2D_matrix

如果我不使用O_DIRECT打开文件,则一切正常,但它超出了进行异步写入的目的。

碰巧并非如此。在没有异步I / O的情况下,它可以很好地工作

O_DIRECT
(例如,考虑大幅减少的系统调用数量)。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4959519.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存