[Android稳定性] 第000篇 Android稳定性系列开篇 2024-12-15 1 条
[Android稳定性] 第000篇 Android稳定性系列开篇

本文集深入探讨了Android稳定性问题,分为方法篇、原理篇和问题篇三个部分。方法篇介绍了稳定性分析的方法,包括高通Android平台稳定性分析、watchdog分析流程、crash分析以及RCU Stall问题的分析等。原理篇详细解析了subsystem ramdump、mtdoops、minidump、blackbox等稳定性相关原理,以及高通平台watchdog机制和QCOM常见reboot类型流程。问题篇则列举了多种稳定性问题案例,如原子状态调度引起的死机、中断风暴导致的panic、内存分配失败、slab内存泄露等,并分析了其原因及解决方案。

[linux内存管理] 第035篇 vmalloc详解 3日前 评论
[linux内存管理] 第035篇 vmalloc详解

内核启动的内存初始化分为Fixmap、线性映射、Buddy分配器和Slab分配器四大阶段,逐步实现高效的物理与虚拟内存管理。vmalloc通过vmap机制,将非连续物理内存映射为连续虚拟地址,极大提升内存分配灵活性。文中详解vmalloc区域管理与关键数据结构,介绍空闲及已分配管理策略,并列举常用分配释放API,并解释代码流程

Linux aarch64 中断处理全流程分析 1周前 评论
Linux aarch64 中断处理全流程分析

深入解析了Linux中断系统的核心概念,包括硬件中断号(hwirq)与虚拟中断号(virq)的区别、各类中断号在中断控制器中的分配和映射关系,以及物理与逻辑中断线的实际意义。强调Linux内核通过virq实现统一管理,解决硬件中断号冲突,展示了复杂中断结构在SoC中的连接方式,为开发者理解和排查多级中断控制器的中断流程问题提供理论知识的指导。

华为充电管理架构概览 2周前 3 条
华为充电管理架构概览

深入剖析华为Mate X5充电管理源码,从软件架构、目录组织到核心模块如电池与充电器管理,亮点涵盖充电模式协商、事件驱动通信、参数投票决策等机制。文章详细展现了多电池支持、故障安全保护、硬件抽象接口与充电流程,对华为Linux内核电源管理体系结构及流程进行了系统性解读,为技术研究和实践提供重要参考。

【深入内核】中断真的不能睡眠吗? 2周前 1 条
【深入内核】中断真的不能睡眠吗?

“中断上下文不能睡眠”是Linux内核开发的底层铁律,源于中断执行期间CPU未切换进程,无法被调度器感知和管理。文章通过深入解析CPU执行模型、调度机制以及arm64中断流程,阐明中断上下文不具备调度实体特征、没有task_struct、不能被调度,也无法安全使用睡眠相关API和某些锁。这样设计避免