-
林渡
-
林渡
-
林渡
-
林渡
-
林渡
-
林渡
-
须知少时凌云志·曾许人间第一流
一个专注于设计思考与生活探索的独立博客!记录设计灵感、分享生活火花。 用设计思维解构日常之美。
-
📢 致读者的一封信:关于运营、初心与一份邀请
林渡在博客中坦诚分享了Android稳定性与Linux内存管理等技术经验,强调知识共享与技术传承的重要性。尽管维持博客运营需承担服务器、域名、AI工具等实际成本,他坚守不设付费墙,保持全部内容免费开放,以降低技术门槛并营造纯粹交流空间。为回应读者建议,新增自愿捐赠通道与透明捐赠者名单,仅供愿意支持的朋友参与。每一份支持都将用于提升博客体验与内容质量,但无论捐赠与否,所有人都是这个温暖技术社区的重要参与者。
最新动态
-
-
[linux内存管理] 第046篇 Page Cache脏页回写机制深入分析
围绕 Linux‑6.1 的 Page Cache 脏页回写机制展开,承接上一篇“脏页标记”,完整追踪数据从被修改到落盘的路径。先提炼回写要解决的三大问题:何时触发、由谁执行、如何高效写回;再从历史演进切入,对比早期全局 pdflush/kupdated 与现代按设备划分的 bdi_writeback 框架,重点解析 backing_dev_info、bdi_writeback 等核心结构中与脏页控制、阈值、速率限制和等待队列相关的关键字段。通过源码路径展示回写线程从 bdi_queue_work 被唤醒,到 wb_workfn 轮询任务、wb_do_writeout 扫描 inode 链表并
-
AI时代笔记工作流:构建下一代知识管理引擎
-
认知加速度:AI时代最残酷的鸿沟,正在此刻拉开
真正拉开的差距,不只是技术工具,而是思维范式的鸿沟。
-
Linux 内核崩溃分析报告 - AI
作者展示了一份由 AI 生成的内核崩溃分析报告,并借此示范如何系统排查数组越界问题。案例中,qteeconnector@1 进程在 smcinvoke_dlkm 模块的 prepare_send_scm_msg() 内触发数据中止异常,原因是结构体中的边界字段被破坏:本应是一个很小的回调计数,却变成了 0x80010001 这种高得离谱的值,导致循环迭代数百万次,最终访问到未映射地址 0xffffff8005700000,引发崩溃。报告详细记录了从初始 bt、查看内核日志、确认模块基址,到对故障函数反汇编、检查结构体内存布局、用地址和寄存器值反证越界过程的完整推理链
-
AI时代的思考:内核稳定性工程师离失业还有多久?
当 AI 能读 ramdump、调 crash、自己规划分析路径并输出报告时,内核稳定性工程师并不会被替代,但大量“敲命令、翻日志、整理报告”的重复劳动将被快速重构。作者提出的工具,不是简单封装 crash,而是让 AI 真正进入 ramdump 分析闭环:工程师只需提供标准化输入(vmcore 或分离 DDR dump 的 dump_spec、vmlinux、模块符号、crash 参数),AI 基于 Claude skills 和 MCP 调用 crash-mcp,在受控环境中打开会话、执行命令、解读输出、决定下一步分析动作,并最终按模板生成结构化报告。在这个时代,作为稳定性工程师,我们离失业还剩多久?
-
[linux内存管理] 第045篇 per-CPU变量的静态与动态分配
延续前一篇对 per-CPU 基础与初始化的分析,这一部分聚焦于内核中的静态 per-CPU 变量及其使用方式。之后将问题的重点放在了动态per-CPU变量的分配逻辑上,并通过一个案例来分析分配逻辑的内部细节。
-
[linux内存管理] 第044篇 per-CPU基础知识以及per-CPU分配器的初始化
围绕 Linux 在 ARM64、SMP 场景下的并发挑战,本章聚焦内核 per‑CPU 变量机制及其底层内存布局。详细介绍了per-CPU的初始化流程,并以一个简单的案例来计算percpu memory的布局。
-
[Android稳定性] 第62篇 内核访问与tee共享的内存数据异常造成内存越界
通过trace32分析寄存器信息,对着代码精准找到异常点,发现原来是内存越界的问题导致,并通过限制内存区域大小来屏蔽这个问题。
-
-
-
过度联想
菩提本无树,明镜亦非台。本来无一物,何处惹尘埃。
-
Lesson 16 习题课
第七次作业 配分函数 离散的能量: Z=∑igie−βεiZ=\displaystyle{\sum_ig_ie^{-\beta\varepsilon_i}}Z=i∑gie−βεi (直接相加) 准连续 (比如理想气体): Z=1h3∫e−βε(x⃗,p⃗)d3x⃗d3p⃗Z=\displaystyle{\frac{1}{h^3}\int e^{-\beta\varepsilon(\vec{x},\...
-
Lesson 8 Atmospheres
先来讲一下 Bohr atomic model: Fc=Ze2r2=mv2r(=mω2r=L2mr3)F_c = \frac{Ze^2}{r^2} = \frac{mv^2}{r} \left(=m\omega^2r = \frac{L^2}{mr^3}\right) Fc=r2Ze2=rmv2(=mω2r=mr3L2)
-
难以割舍的纸质词典
作为一名 90 后,我始终难以割舍对纸质词典的情结。
-
Lesson 15 引力波
为了计算,首先我们要对 Einstein 方程做 linear expansion. 这件事情有两个特点:简单,这是为数不多的 Einstein 能亲自解决的问题;同时这是一个 weakly interacting 的系统. Newton 的引力方程没有对时间的导数,是静态的;但是 Einstein 方程中存在对时间的二阶导数这样的内容,我们称之为有 dynamical freedom,这表征了引...
-
年少心事
那些尘封在阁楼上的手表,即是年轻的那份自卑,也是另一种放下。
-
【秉言文集】露营
小作者趁着国庆假期,和父母、小伙伴到黄岩山野露营,搭帐篷、吃农家饭、学品茶,伴着虫鸣狗叫入眠,清晨醒来赏日出,呼吸大自然美好气息,是一次印象深刻的体验。
-
从零到一:一个佛系站长的三天AI写插件实录
站长是一个对PHP一窍不通的佛系之人,靠着跟AI聊天,三天迭代了20多个版本,做出了自我感觉还算满意的WordPress打赏插件。这个过程让站长重新理解了“自愿付费”,也对独立博客的未来多了些许期待和信心。
-
精选分类
-
inspire-storm
灵感风暴
记录灵光乍现的瞬间,汇聚思如泉涌的风暴
-
world-voices
世间风声
-
worldly-minded
人间烟火
-
linux-kernel
Linux内核
-
arm-architecture
ARM体系架构
-
LMM
Linux内存管理
-
android-stability
Android稳定性
linux/android稳定性文章
-
new image
最新图文动态
-
new video
最新视频动态
走心评论
-
狗黄他满满
大佬你好,我也是最android驱动层稳定性的25年毕业生,感觉你那边的的知识对我的学习非常大。
发表在「该文章/页面不存在」 -
小莫爱学习
我自己之前看过小米的电池管理驱动,跟华为的实现还是有不少差别。华为这边多电池和快充协议兼容做得更细致,学到了不少。
发表在「华为充电管理架构概览」 -
小懒猫
每次看到内核的初始化流程都觉得很神奇,特别是slab分配器的自举部分,真的有点“鸡生蛋”既视感。看完后终于明白为什么要先用静态变量顶一下,写得很细致,感谢作者!
发表在「[linux内存管理] 第031篇 内核启动早期的slab分配器的自举」 -
困倦的面条
作为一个刚接触内核开发的新手,看到这么详细的dump分析真是受益匪浅!特别是关于内核线程借用用户空间地址空间的部分解释得很清楚。
发表在「[Android稳定性] 第055篇 [原理篇] 从dump信息角度学调度schedule」 -
Melokc
沙发!正好打算研究这个,太棒了👏「手动点赞」
发表在「[Android稳定性] 第051篇 [原理篇] 从timer角度学习高通平台的watchdog」 -
Melokc
「手动点赞」😏,原来是2019改的,长知识了,之前一直傻傻分不清楚到底是在高地址还是低地址🤡
发表在「[linux内存管理] 第027篇 Linux ARM64 虚拟地址布局」 -
zsl
琦哥太强了🤞
发表在「 [Android稳定性] 第049篇 [问题篇] 软中断霸占CPU导致watchdog无法及时喂狗」