2025-11-03
[linux内存管理] 第000篇 Linux内存管理系列开篇
系列深入剖析Linux内存管理在ARM64架构下的原理与实现,覆盖物理内存初始化流程、核心分配器机制(如buddy、slab、vmalloc、CMA等)、缺页异常处理、页面回收、内存节点解析等关键环节,结合Kernel 5.15源码与丰富补充资料,帮助读者系统理解底层架构与内存管理优化要点
2024-12-15
[Android稳定性] 第000篇 Android稳定性系列开篇
本文集深入探讨了Android稳定性问题,分为方法篇、原理篇和问题篇三个部分。方法篇介绍了稳定性分析的方法,包括高通Android平台稳定性分析、watchdog分析流程、crash分析以及RCU Stall问题的分析等。原理篇详细解析了subsystem ramdump、mtdoops、minidump、blackbox等稳定性相关原理,以及高通平台watchdog机制和QCOM常见reboot类型流程。问题篇则列举了多种稳定性问题案例,如原子状态调度引起的死机、中断风暴导致的panic、内存分配失败、slab内存泄露等,并分析了其原因及解决方案。
1周前
[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 链表并
2026-03-06
[linux内存管理] 第045篇 per-CPU变量的静态与动态分配
延续前一篇对 per-CPU 基础与初始化的分析,这一部分聚焦于内核中的静态 per-CPU 变量及其使用方式。之后将问题的重点放在了动态per-CPU变量的分配逻辑上,并通过一个案例来分析分配逻辑的内部细节。
2026-03-04
[linux内存管理] 第044篇 per-CPU基础知识以及per-CPU分配器的初始化
围绕 Linux 在 ARM64、SMP 场景下的并发挑战,本章聚焦内核 per‑CPU 变量机制及其底层内存布局。详细介绍了per-CPU的初始化流程,并以一个简单的案例来计算percpu memory的布局。
2026-03-02
[Android稳定性] 第62篇 内核访问与tee共享的内存数据异常造成内存越界
通过trace32分析寄存器信息,对着代码精准找到异常点,发现原来是内存越界的问题导致,并通过限制内存区域大小来屏蔽这个问题。
2026-02-28
[LRDP2] 解析插件之logcat
通过logcat_v3和logcat_vma两套解析方案,工具能够应对大多数Android设备的内存布局变化,成功从ramdump中还原出logcat日志。整个过程涉及进程内存读取、数据结构逆向、多线程解析、日志去重等技术点,充分体现了ramdump parser工具的灵活性和强大功能。 本文重点剖析了logcat_v3的实现细节,从定位log buffer,到解析日志块,再到合并内核日志,每一步都力求清晰。希望读者能从中了解到Android logcat在内存中的存储方式,以及离线解析工具背后的工作原理。
2026-02-26
[linux内存管理] 第043篇 page cache 脏页跟踪机制
深入解析了Page Cache中脏页的跟踪机制。文章详细阐述了address_space结构体的作用,并对比了mmap映射与write系统调用两种场景下的脏页标记原理。内容涵盖缺页异常处理、页表项操作及回写流程,重点分析了ext4文件系统的具体实现,为理解内核数据持久化奠定了基础。
2026-02-26
向 Linux 内核社区提交 patch 实操要点
详尽介绍了通过git send-email方式向Linux内核社区提交补丁的完整流程。内容涵盖git和git send-email的安装配置,SMTP邮件发送环境的设置,如何规范填写commit信息、生成和检查patch格式,以及标准化邮件回复方法。文章指出:基于next分支开发、严格遵循社区指南、养成bottom-posting习惯、合理使用收件人和抄送自动化配置,都是与上游高效沟通的关键。新手可从修复warning类小问题入手,逐步熟悉内核社区流程与规范。文末列举了寻找补丁切入点和提升英文交流技能的建议,强调实践积累对个人成长与社区认可的重要性。