大块物理地址连续的内存分配.pdf
文本预览下载声明
大块物理地址连续的内存分配
x.yin@
Jun 1, 2009
目目目录 目录
目目目录录录
1 前前前言言言 2
2 kernel 内内内存存存 的的的分分分配配配 2
2.1 kmalloc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.2 vmalloc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.3 alloc_page类函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
3 实实实际际际解解解决决决方方方案案案 3
3.1 预 留内存(mem=) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.2 bigphysarea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2.1 bigphysarea简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2.2 实现原理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1
2 KERNEL 内存 的分配
1 前前前言言言
工作 中,我们经常能够遇到一些对 内存有特殊要求 的硬件 ,有些是其本身 的设计
要求所至 ,而另一些则是从系统性能考虑(如不能支持 Scatter/gather DMA ),两种情况
下都必须为其 driver 分配大块 的物理地址连续 内存块 。更槽糕 的是,系统连续运行时间
越长 ,大块物理地址连续 的内存块分配到的可能性就越低 。大多数情况下( 内存泄露除
外 ),你会发现系统 的剩余 内存( free 或 cat /proc/memi
显示全部