![[linux内存管理] 第018篇 buddy系统的简介以及初始化](https://hexoimg.oss-cn-shanghai.aliyuncs.com/blog/25/1/cover_linux_memory_management_018.png)
[linux内存管理] 第018篇 buddy系统的简介以及初始化
0. 前言 在[linux内存管理] 第013篇 zone的初始化一文中简单剖析了 zone 的初始化流程,也是继 arm64_memblock_init 和 sparse_init 之后有一个内存管理层,而zone 这一层管理层中,所有的物理内存都会被添加到zone 中的成员变量 free_are
![[linux内存管理] 第017篇 zonelist的初始化](https://hexoimg.oss-cn-shanghai.aliyuncs.com/blog/25/1/cover_linux_memory_management_017.png)
[linux内存管理] 第017篇 zonelist的初始化
0. 前言 在bootmem_init初始化的时候,已经初始化了内存节点的zone成员,该成员是struct zone数组,存放该内存节点的zone信息。在linux的内存管理中,分几个阶段进行抽象,用数据结构来管理。先用结点集合管理内存,然后用zone管理结点,再用页的管理zone。此时使用的数据
![[linux内存管理] 第016篇 /proc/iomem的详细解析](https://hexoimg.oss-cn-shanghai.aliyuncs.com/blog/25/1/cover_linux_memory_management_016.png)
[linux内存管理] 第016篇 /proc/iomem的详细解析
0. 前言 此节点是显示memblock的这部分内存的具体使用情况的。我们可以看到这部分内存很明显不属于虚拟地址,而是物理地址,和设备树中的地址保持一致! spring:/ # cat /proc/iomem 00208000-00208fff : 208000.qcom,ipcc qcom,ipc
![[linux内存管理] 第015篇 理解Linux内核中的memblock和ioremap机制](https://hexoimg.oss-cn-shanghai.aliyuncs.com/blog/25/1/cover_linux_memory_management_015.png)
[linux内存管理] 第015篇 理解Linux内核中的memblock和ioremap机制
0. 前言 Linux驱动开发中,设备寄存器的物理地址如何被内核管理并映射到虚拟地址空间,是一个非常核心的知识点。本文将从memblock和ioremap的机制入手,梳理相关流程和原理。 1. 什么是memblock? memblock 是 Linux 内核在启动阶段管理物理内存的核心工具。它的主要
![[Android稳定性] 第015篇 [问题篇] Unable to handle kernel NULL pointer dereference](https://hexoimg.oss-cn-shanghai.aliyuncs.com/blog/25/1/cover_android_stability_015.png)
[Android稳定性] 第015篇 [问题篇] Unable to handle kernel NULL pointer dereference
0. 问题现象 死机 1. 问题分析 1.1 dmesg_TZ.txt [ 9.188060][ T175] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000102 [ 9
![[Android稳定性] 第014篇 [问题篇] slab内存泄露](https://hexoimg.oss-cn-shanghai.aliyuncs.com/blog/24/12/cover_android_stability_014_212cd63c15ff50b0071aed7fbda8d059.jpg)
[Android稳定性] 第014篇 [问题篇] slab内存泄露
0. 问题现象 目前协调FAE 从印度前线客户服务中心收集3份日志,初步分析 Slab占用过大3.9G,有Slab内存泄漏的问题,目前需要异常机复现现场问题后确认泄漏的原因。 Slab内存占用高问题,同平台窗口和性能模块核对,case:ALPS09052161,目前来看屏幕卡住不动,跟WMS关系不大
![[linux内存管理] 第014篇 /proc/zoneinfo的详细解析](https://hexoimg.oss-cn-shanghai.aliyuncs.com/blog/24/12/cover_linux_memory_management_014.png)
[linux内存管理] 第014篇 /proc/zoneinfo的详细解析
0. 前言 内存管理是一个相对复杂的内核模块,错综复杂的 数据结构 和管理逻辑。 Linux 内核为了帮助开发者从宏观上把握内存的使用情况,在几大核心数据结构中都有相应的计数统计,如物理页面使用情况、伙伴系统分配情况、内存管理区的页面使用情况、内存回收扫描回收情况、内存规整触发情况等等。 在 sta
![[Android稳定性] 第013篇 [问题篇] page allocation failure: order:0内存分配失败的异常报错](https://hexoimg.oss-cn-shanghai.aliyuncs.com/blog/24/12/cover_android_stability_013.png)
[Android稳定性] 第013篇 [问题篇] page allocation failure: order:0内存分配失败的异常报错
0. 问题现象 工厂老化测试中,出现卡视频现象。 插上usb可以识别到adb口。 1. 问题分析 [ 7952.504953] warn_alloc: 427 callbacks suppressed [ 7952.504959] kworker/7:1H: page allocation fail
![[Android稳定性] 第012篇 [原理篇] blackbox的原理介绍](https://hexoimg.oss-cn-shanghai.aliyuncs.com/blog/24/12/cover_android_stability_012.png)
[Android稳定性] 第012篇 [原理篇] blackbox的原理介绍
当前文章内容已隐藏,输入密码后可见。
![[Android稳定性] 第011篇 [原理篇] minidump的原理介绍补充](https://hexoimg.oss-cn-shanghai.aliyuncs.com/blog/24/12/cover_android_stability_011.png)
[Android稳定性] 第011篇 [原理篇] minidump的原理介绍补充
当前文章内容已隐藏,输入密码后可见。