打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Linux物理内存页面分配 – Linux Kernel Exploration

      在用户态C语言程序中,我们对内存分配函数malloc()或calloc()非常熟悉;函数执行成功,就会返回需要的内存起始地址。显然这些函数在在内核态没法运行,在内核态有专门的内存申请/释放函数。

       Linux内核中,如何分配和回收内存?空闲内存如何管理?本文以linux 2.6.32-220.el6版本内核源码为基础,介绍Linux内核中如何分配物理内存页面。

目    录
1    概述 
2    内核页面分配与回收API   
3    空闲页面的管理   
3.1    物理内存空间描述    
3.2    空闲页面的管理    
4    伙伴算法   
4.1    Buddy System    
4.2    伙伴算法举例    
4.2.1    页面分配过程   
4.2.2    页面回收过程   
4.3    Buddy系统信息查看    
5    页面分配    
5.1    UMA页面分配    
5.2    NUMA页面分配    
5.2.1    NUMA策略与cpuset功能    
5.2.2    alloc_pages_current()    
5.3    __alloc_pages_nodemask()    
5.3.1    内存迁移类型与lockdep    
5.3.2    __alloc_pages_nodemask()  
5.4    get_page_from_freelist()    
5.4.1    区域(Zone)水准    
5.4.2    Hot-N-Cold页面   
5.4.3    get_page_from_freelist()    
5.4.4    __rmqueue()   
5.5    __alloc_pages_slowpath()   
5.5.1    __alloc_pages_direct_compact()   
5.5.2    __alloc_pages_direct_reclaim()    
6    影响页面分配行为的GFP标志

完整文章下载:Linux物理内存页面分配

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Linux内存管理学习笔记
Linux虚拟内存管理
Linux 内存布局
Linux内存管理
Linux内存管理(三)_菜鸟学习笔记
Linux下分配G级物理内存的方法
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服