vmalloc size分析

平台: msm8x25

系统: android 4.1

内核: 3.4.0



概念

由于系统的连续物理内存有限,这使得非连续物理内存的使用在linux内核中出现,

这叫vmalloc机制。和前者一样,vmalloc机制中的虚拟地址也是连续的。

 

Vmallocinfo

        Vmalloc机制并不是狭义地指使用vmalloc函数分配,其他还有如ioremap, iotable_init等。可以从/proc/vmallocinfo获取到此信息:

#cat /proc/vmallocinfo

0xf3600000-0xf36ff0001044480 binder_mmap+0xb0/0x224 ioremap

………..

0xf6680000-0xf66c1000 266240 kgsl_page_alloc_map_kernel+0x98/0xe8 ioremap

0xf6700000-0xf67ff0001044480 binder_mmap+0xb0/0x224 ioremap

…………….

0xf6f00000-0xf6f41000 266240 kgsl_page_alloc_map_kernel+0x98/0xe8 ioremap

0xf7200000-0xf72ff0001044480 binder_mmap+0xb0/0x224 ioremap

0xfa000000-0xfa001000   4096 iotable_init+0x0/0xb0 phys=c0800000 ioremap

……………..

0xfa105000-0xfa106000   4096 iotable_init+0x0/0xb0 phys=a9800000 ioremap

0xfa200000-0xfa3000001048576 pmd_empty_section_gap+0x0/0x3c ioremap

0xfa300000-0xfa4000001048576 iotable_init+0x0/0xb0 phys=100000 ioremap

0xfa400000-0xfa5000001048576 iotable_init+0x0/0xb0 phys=aa500000 ioremap

0xfa500000-0xfa6000001048576 pmd_empty_section_gap+0x0/0x3c ioremap

0xfa701000-0xfa702000   4096 iotable_init+0x0/0xb0 phys=c0400000 ioremap

…………..

0xfa800000-0xfa9000001048576 pmd_empty_section_gap+0x0/0x3c ioremap

0xfa900000-0xfb60000013631488 iotable_init+0x0/0xb0 phys=ac000000 ioremap

0xfefdc000-0xff000000 147456 pcpu_get_vm_areas+0x0/0x56c vmalloc

 

上面的列数意思

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值