从这里开始

第一次访问时先按主题切入,比直接沿着时间线翻文章更快。

热门专题

把已经形成系列阅读闭环的主题集中在首页,减少在 400 多篇文章里盲找的成本。

最新文章

按最近更新时间排序;如果你想系统性阅读一个主题,优先回到上面的专题入口。

EEVDF 调度器:Linux 6.6 为什么换掉了 CFS

Linux 6.6 用 EEVDF 取代了 CFS 的 SCHED_NORMAL 选取逻辑。从 1995 年原始论文的 lag、eligibility、virtual deadline,到 commit 147f3ef 只重写 placement/pick/preempt,再到本机内核 6.6 上读 sched/debug 把每个任务的 vruntime、eligible 标志、deadline 一一对上 vd=ve+r/w,外加 nice 带宽与 base_slice 抢占两组实测,讲清换的是哪一块、延迟敏感任务凭什么先跑。

【rsync 原理】差异同步算法:滚动校验与两级匹配

源端看不到目标端文件,rsync 凭什么只传改动的几 KB?从 Tridgell 的 rsync 算法出发,用 rsync 3.4.4 源码钉住弱滚动校验的 O(1) 更新、弱+强两级匹配、sqrt 块大小与签名长度随文件增长的权衡,讲清差异是怎么在不传整文件的前提下被算出来的。

【rsync 原理】协议、进程模型与实测

rsync 的差异算法落到真实工具里,是 generator/sender/receiver 三个进程在一条管线上跑。本文用 rsync 3.4.4 源码与 wire 行为讲清三角色分工、文件列表与逐文件生命周期、token 字节流格式、强校验协商与版本边界,并在本机内核 6.6 上实测:100 MiB 文件改 1 字节,delta 走约 120 KB,whole-file 走整 100 MiB。