乐于分享
好东西不私藏

秋招自救Day52|通过Linux内核源码学习页缓存

秋招自救Day52|通过Linux内核源码学习页缓存

7:50 起床!

9:10-10:10 学习page cache,梳理read流程

10:10-10:50 网络巨差,没怎么学

10:50-12:00 刷力扣

12:00-14:00 吃饭、睡觉

14:00-17:40 学习page cache,梳理read流程。中间追深了,回头看才发现只是一个接口,赶紧跳出来,回到主流程。

17:40-19:00 吃饭

19:00-20:00 总结一下

用户态发起读请求后,会触发系统调用进入内核,由VFS将请求分发给具体文件系统。内核根据用户传入的fd找到struct file、根据file结构体中的f_mapping指针、找到文件对应的page cache容器。随后,内核根据文件偏移计算出页索引index后,到page cache的索引树中查找本次读取所需的folio。命中且数据有效就直接拷贝给用户;未命中,则先尝试同步预读,预读后仍未命中,就创建 folio、插入 page cache、读盘,最后再拷贝给用户。

20:00-20:25 睡觉

20:25-21:10 刷几道力扣,没那么反感了,前几天赶紧刷的比较恶心,有抵触心理。见过、但还是写不出、就还要看、…

21:10-21:50 初探预读机制

.

明天需复刷的题目

路径总和 III、二叉树的最近公共祖先、二叉树中的最大路径和、课程表

.

我的学习计划如下

后续会按照这个计划持续进行

.

秋招,是一场持久战,希望我们能一起坚持下来。 

待到深秋时节,我们都能斩获心仪的offer! 

我是铜豌豆,一直陪着你!冲冲冲✊️

秋招,是一场持久战,希望我们能一起坚持下来。 

待到深秋时节,我们都能斩获心仪的offer! 

我是铜豌豆,一直陪着你!冲冲冲✊️

我是铜豌豆,一直陪着你!冲冲冲✊️