首页
›
Linux内核与驱动
›
155-Linux内核驱动开发
›
《内存管理:Linux内核驱动slab分配器与内存池优化》
VIP10
本课程属于:155-Linux内核驱动开发
Linux内核与驱动 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
内存管理:Linux内核驱动slab分配器与内存池优化
共计 30 章节
点击此处阅读海量试读课程:100+行业、1000+细分领域
01
内存管理概述
Linux内核内存管理架构总览 · 伙伴系统与slab分配器的关系 · 为什么需要slab分配器
内存管理概述
Linux
02
slab分配器核心数据结构
kmem_cache · slab · object的关系
slab
分配器核心数据结…
03
slab分配器初始化
slab系统初始化流程 · kmem_cache_init与km…
slab
分配器初始化
04
slab分配与释放
kmem_cache_alloc与k… · gfp_flags标志详解
slab
分配
05
slab回收机制
slab内存回收触发条件 · shrink_slab与drain_…
slab
回收机制
06
slab调试与统计
CONFIG_SLAB_DEBUG · slabinfo工具使用 · 内存泄漏检测方法
slab
调试
07
slub分配器原理
slub与slab的差异 · slub的per-CPU parti…
slub
分配器原理
08
slob分配器原理
嵌入式场景下的slob设计 · first-fit算法实现
slob
分配器原理
09
内存池(mempool)设计
mempool_t结构体 · 预分配与紧急备用机制
mempool
内存池
10
mempool创建与销毁
mempool_create · mempool_destroy接口 · min_nr参数意义
mempool
创建
11
mempool分配与释放
mempool_alloc与memp… · 后备池回填策略
mempool
分配
12
mempool与slab结合
使用mempool_create_s… · 自定义alloc/free回调
mempool
slab
13
per-CPU缓存优化
percpu_cache结构 · 批量分配/释放减少锁竞争
per-CPU
缓存优化
14
批量操作接口
kmem_cache_alloc_b…
批量操作接口
kmem
15
NUMA感知分配
slab的node列表 · __alloc_pages_node…
NUMA
感知分配
16
slab着色优化
cache coloring计算 · 避免伪共享(false sharin…
slab
着色优化
17
对象复用与RCU
slab对象的RCU延迟释放 · call_rcu与kmem_cach…
RCU
对象复用
18
slab与DMA缓冲区
dma_alloc_coherent… · 一致性内存映射
slab
DMA
19
内存池在驱动中的应用
网络驱动skb池 · 块设备bio池 · 文件系统inode缓存
内存池
驱动
20
slab性能调优
batchcount · limit · shared参数调整
slab
性能调优
21
内存池大小规划
min_nr与max_nr计算 · 压力测试与水位线监控
内存池大小规划
min
22
slab与内存碎片
外部碎片与内部碎片 · slab合并策略
slab
内存碎片
23
kmalloc家族
kmalloc · kzalloc · kcalloc
kmalloc
家族
24
vmalloc与slab对比
vmalloc适用场景 · TLB压力与页表开销
vmalloc
slab
25
内存池与中断上下文
GFP_ATOMIC与mempool…
内存池
断上下文
26
slab与cgroup内存控制
memcg slab统计 · kmemcg限制与回收
slab
cgroup
27
slab分配器锁机制
全局锁 · per-CPU锁 · node锁的演进
slab
分配器锁机制
28
内存池与错误恢复
mempool_alloc失败处理 · 紧急池耗尽场景
内存池
错误恢复
29
slab与KASAN
内核地址消毒剂对slab的检测 · use-after-free捕获
slab
KASAN
30
综合实战
编写一个字符设备驱动 · 使用slab+内存池管理IO缓冲区 · 并做性能对比
综合实战
编写一个字符设备…
所属VIP或分类
同VIP:ioctl接口实战:Linux内核驱动自定义命令实现
同VIP:Linux内核驱动开发实战50例
同VIP:Linux内核驱动开发实战:从字符设备到设备树