首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CFQ IO调度器请求队列

CFQ IO调度器请求队列
EN

Stack Overflow用户
提问于 2012-01-10 15:16:44
回答 1查看 378关注 0票数 1

Linux中的CFQ调度器有一组请求queues.The,来自进程的同步请求进入单独的每进程请求队列,而所有异步请求进入一组共享队列。

如何将请求分类为同步或异步?在这个上下文中,异步是否意味着使用内核AIO完成IO?(以及所有其他正常的read()/write()和buffered fread()/fwrite()被算作同步)

EN

回答 1

Stack Overflow用户

发布于 2012-01-10 19:32:06

同步请求是那些在进程完成之前被阻塞的请求,异步请求是那些进程可以在其完成时并行继续的请求。

通常,程序进行的所有正常读取都是同步的,因为在获得所请求的数据之前,进程无法前进。然而,写入在本质上通常是异步的-只要保证进程看到它执行的所有写入,这由缓冲区/页面缓存负责,一旦调用了write系统调用,该进程就不关心数据实际写入存储设备的时间。

从那时起,事情就变得复杂了: fsync()系统调用是一个同步请求,对于日志文件系统上的一些元数据更改调用也是如此,但在非日志文件系统上不是这样,依此类推……

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8799813

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档