云栖梦泽
林渡
Blog
  • 首页
  • 开始浏览
    • 人世间
      • 世间风声
      • 人间烟火
    • 壹句话
    • 山中功课
      • LRDP2
      • Linux内核
      • 技术分享
      • ARM体系架构
      • Linux内存管理
      • Android稳定性
    • 云外光影
      • 动物与植物
      • 美食
      • 生活气息
      • 人物
    • 文章归档
      • 技术分享
      • 视频类型
      • 音频类型
      • 图文类型
      • 图片类型
  • 专题
    • 众星
    • 豆瓣
    • 足迹
    • 走心评论
    • 林渡的网盘
  • 留言板
  • 关于
    • 关于我
    • 一些声明
      • 站点声明
      • 隐私政策
    • 网站统计
  • 欢迎订阅!

欢迎来到云栖梦泽,为您导读全站动态
  • 黑客小蓝 4小时前留言 slab分配器的“自举”机制真是经典的鸡生蛋蛋生鸡问题,没想到Linux内核是通过静态变量和boot_cache这套办法解决的,感觉这段设计思路很巧妙。
  • 路人甲 1日前留言 总算把slab自举流程讲明白了,之前看内核源码一直卡在kmem_cache那块,这篇文章把各阶段分得很清楚,顺着流程豁然开朗。感谢!
  • uTvTerGyBTAIJvvqsF 1日前留言 mZvuhshZDjfajwYm
  • 代码碎碎念 2日前留言 文章条理很清晰,把fixmap、线性映射、buddy和slab的关系都讲明白了。我自己做嵌入式开发,调试内存管理问题时经常卡在这些阶段,这篇总结很实用,点赞!
  • zcAYJKliQiEBXTySr 3日前留言 ogHDSWYHDzhKDdUTSM
  • abc 1周前留言 感谢大佬分享
  • 林渡 2周前留言 感谢认可,密码已发送到您的邮箱
  • yl 2周前留言 大佬,想学习下你的文章,请求您能给个密码。谢谢啦!
  • yl 2周前留言 你好,看了你的文章写得很好,想学习下
  • tyler 1月前留言 感谢分享
2025 年 12 月
日一二三四五六
123456
78910111213
14151617181920
21222324252627
28293031
« 11 月  
最近文章
  • 2025-12-11 [linux内存管理] 第032篇 使用trace32分析slab cache
  • 2025-12-09 [linux内存管理] 第031篇 内核启动早期的slab分配器的自举
  • 2025-11-17 [linux内存管理] 第030篇 深入理解 slab cache 内存分配全链路实现
  • 2025-11-07 [Android稳定性] 第060篇 [问题篇] storage corruption导致的死机
  • 2025-11-03 [linux内存管理] 第000篇 Linux内存管理系列开篇
  • 2025-10-30 [Android稳定性] 第059篇 [问题篇] 内核内存区域重叠导致的页表映射错误
  • 2025-10-27 内核分析利器crash的编译指南
  • 2025-10-23 利用 Claude Code 探索 Linux 内核奥秘
热门文章
  • 2025-07-21 高通以及MTK平台内核单独编译ko的原理
  • 2025-06-27 [Android稳定性] 第053篇 [方法篇] 稳定性问题分析指导
  • 2025-06-06 高通平台xbl启动流程补充
  • 2025-08-27 [Android稳定性] 第058篇 [方法篇] 高通平台使用QFIL回读分区
  • 2024-11-22 高通android启动代码流程分析(SBL->ABL)
  • 2025-06-18 [linux内存管理] 第027篇 Linux ARM64 虚拟地址布局
  • 2025-06-25 [Android稳定性] 第052篇 [方法篇] HMI项目中如何使用QCAP解析minidump?
  • 2024-11-27 linux内存管理] 第006篇 start_kernel全局简述
热门标签
  • 内核线程 1
  • 体力宝宝 0
  • 价值观 1
  • 内核开发 2
  • 生产力工具 1
  • Linux内核 5
  • init进程 1
  • 技能搭配 0
  • 游戏攻略 0
  • 理想与现实 1
  • 人生态度 1
  • 人生意义 1
  • 精神追求 1
  • 性能优化 1
  • 番茄工作法 0
  • 习惯养成 0
  • 生活美学 1
  • 内核栈 1
  • 任务优先级 0
  • 反思 1
  • 个人成长 1
  • 时间管理 1
  • 效率提升 0
  • 自我认知 1
  • 烟火气 1
  • 宠物技能 0
  • 任务管理 1
  • Static Keys 1
  • 进程调度 1
  • 动态分支 1
  • 寄存器 1
  • idle进程 1
  • 高效工作 1
  • 天龙八部归来 0
  • 页面管理 1
  • minidump 3
  • kmalloc 1
  • kasan 2
  • dtc 1
  • 内存规整 1
  • setup_arch 1
  • 进程栈 2
  • mtdoops 1
  • QFIL 1
  • memory 3
  • git 1
  • 编译器优化 1
  • buddy 3
  • memblock 4
  • LDO 1
18096° 151 11 116
当您评论及浏览文章且浏览器未禁止COOKIE时,会为您显示最近10条回复及前8篇文章的浏览记录。
标签:内核开发

内核开发 2篇

[linux内存管理] 第030篇 深入理解 slab cache 内存分配全链路实现 3周前查看 评论
    Linux内存管理
    内核开发内存分配slab
[linux内存管理] 第030篇 深入理解 slab cache 内存分配全链路实现

通过内核源码深入解析slab cache的内存分配机制,文章以task_struct为例详解fastpath和slowpath的分配流程,阐释了kmem_cache在多CPU和NUMA架构下的高效对象分配策略,以及如何通过本地CPU缓存、空闲对象链和慢速路径保证性能和并发安全。

【深入内核】理解Linux Static Keys和jump label机制 3月前查看 5 条
    Linux内核
    Linux内核性能优化Static Keys动态分支内核开发
【深入内核】理解Linux Static Keys和jump label机制

在Linux内核高频路径中,likely/unlikely宏帮助提升分支预测准确率,但随着判断增多,分支预测失败和cache压力导致性能瓶颈。为彻底消除分支带来的损耗,内核引入static keys和jump label机制,通过运行时动态替换代码段,实现零开销切换分支。

今天是云栖梦泽·

2024-11-11

随机阅读「[Android稳定性] 第004篇 [原理篇] minidump的原理介绍」
阅读 **minidump** 是一种用于保存系统崩溃信息的机制。当系统发生崩溃时,boot subsystem 会加密并保存注册过的 memory 信息到 RAM EMMC 分区。 **流程**: 1. 开机时,内存中会为 minidump 保留一部分空间,用于存储 kernel log、logcat 和 tz_log。 2. 如果手机触发 dump,在第二次开机时,boot subsystem 会读取 TCSR 寄存器中的 minidump 模式标志。 3. 如果启用 minidump,boot subsystem 会读取 kmsg 和 logcat log,并将其写入 minidump 分区。 4. 开机后,可以使用 dd 指令导出 minidump 分区,并使用 ultraedit 查看 log。 **验证方法**: 1. 将 minidump 设置为 emmc 模式。 2. 触发 dump。 3. 导出 minidump 分区并查看 log。 **总结**: minidump 是一种有效的系统崩溃信息保存机制,可以帮助开发者快速定位问题。
壹行随十人
  • 迷鹿屋
  • 山海云栈
  • 星风之痕
  • 轻雅阁
  • 世上云川
  • 风记星辰
  • 菲兹克斯喵
  • 山海运维
  • 问心斋
  • 秘柯絮语
云栖梦泽版权所有 · 架构于Halo及为您增强体验的THYUU/星度主题
苏ICP备2025185582号-1 苏ICP备2025185582号-1 苏公网安备32060102321049号 苏公网安备32060102321049号 BlogsClub BlogsClub
总访问量:| 访客人数: