怎么样将页或页表写到磁盘上

发布于 2022-10-15 10:12:56 字数 24 浏览 36 评论 0

RT。。linux内核中怎么将某一页写到磁盘上?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

白鸥掠海 2022-10-22 10:12:56

swapd吧

谁对谁错谁最难过 2022-10-22 10:12:56

磁盘上的每一个文件中的每一个4K页,被应用程序读取的时候,都会首先被读到内核空间的一个缓冲区里面,这个缓冲区称作 基树,按照需要读取的页在文件中的偏移组织起来的。当应用程序修改这个页的时候,首先修改的是内存中的缓冲页,并且 把这个页 mark成 dirty。内核中两个参数(可以通过/proc/sys/vm/dirty_background_ratio 和 /proc/sys/vm/dirty_writeback_centisecs修改),当dirty page的比例超过dirty_background_ratio的时候,会唤起 pdflush内核线程,写回脏页。另外pdflush也会在dirty_writeback_centisecs超时的时候,定期被调用,写回那些驻留内存时间够久的脏页。

具体写回的时候,就是调用具体文件系统的回调函数了。

不知道是不是楼主需要的答案

寂寞美少年 2022-10-22 10:12:56

谢谢各位呵呵。。。pdflush是由系统自己调用的吧。。我希望能由自己决定怎么选择哪一页。。现在在看源代码中。。了解了。弄出来了告诉大家呵

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文