作为调试 IO 生成器的一部分,我在 x64 硬件上运行的 RH 6.4 下遇到了一组奇怪的结果(在多个系统上验证):
-- 应用程序使用 linux 异步 IO(即非 posix)访问原始磁盘分区(/dev/sdb1,O_DIRECT),并以 root 身份运行
-- 应用程序报告 100 io/s 和 60% 的写入。
-- 应用程序的 strace 向 io_submit() 和 io_getevents() 报告每秒 100 次调用,反映每秒 100 次 AIO 操作
-- 'dstat --aio' 显示每秒 100 次操作
-- iostat 按预期报告每秒 40 次读取,但每秒写入 120 次,是预期的两倍
-- 使用同步 IO 的早期实现不显示“双倍”写入
这种行为是已知的错误吗?