1,查看内存的基本情况通过/proc/meminfo可以看到2,查看vmalloc分配的情况通过/proc/vmallocinfo可以看到3,查看伙伴系统使用的内存情况通过/proc/buddyinfo可以查看~4,查看slab分配器的使用情况通过查看/proc/slabinfo来查看
分类:
系统相关 时间:
2015-01-26 20:59:14
阅读次数:
223
Linux伙伴系统(一)--伙伴系统的概述Linux伙伴系统(二)--伙伴系统的初始化Linux伙伴系统(三)--分配页Linux伙伴系统(四)--释放页Linux伙伴系统(五)--通过迁移类型分组来实现反碎片
分类:
系统相关 时间:
2015-01-26 20:58:42
阅读次数:
157
一:内存分段和分页。点击打开链接每个用户空间的linux进程都有3G的地址空间,(虚拟地址空间3G-4G空间是linux内核使用的),用户空间看到的进程地址都是指虚拟地址空间,然后操作系统通过MMU再将虚拟地址映射到实际的物理地址。分段:就是将整个程序映射到linux内存的物理地址,假设有两个进程 ...
分类:
系统相关 时间:
2015-01-26 20:58:14
阅读次数:
157
一:vmallochttp://www.360doc.com/content/14/0614/13/18127083_386524093.shtml1,vmalloc()的内核入口函数是kernel/mm/Vmalloc.c里的void *vmalloc(unsigned long size),si...
分类:
系统相关 时间:
2015-01-26 20:56:38
阅读次数:
292
1,分配器APIhttp://blog.csdn.net/kickxxx/article/details/9287003伙伴系统只能分配2的整数幂个页。因此申请时,需要指定请求分配的阶。2,分配页,所有分配伙伴系统的函数分配页最终都会调用到alloc_pages_nodemask()函数static...
http://blog.csdn.net/vanbreaker/article/details/76642961,为什么需要slab分配器:利用伙伴系统进行分配内存只能按照页的单位进行分配,这样会造成很多的内存浪费,多了很多内存碎片,比如只需要申请10字节的,结果分配了一个页。2,slab分配器和伙...
分类:
系统相关 时间:
2015-01-26 20:52:42
阅读次数:
281
Linux Slab分配器(一)--概述Linux Slab分配器(二)--初始化Linux Slab分配器(三)--创建缓存Linux Slab分配器(四)--分配对象Linux Slab分配器(五)--释放对象Linux Slab分配器(七)--销毁缓存
分类:
系统相关 时间:
2015-01-26 20:52:33
阅读次数:
217
一,为什么需要高端内存答:对于32位机器,linux虚拟内存最大为4G,其中3-4G空间是用作内核空间,考虑到如果物理内存大于1G,那么物理内存不能得到完全的映射,因此,Linux 规定“内核直接映射空间” 最多映射 896M 物理内存,ARM体系架构上有高端内存的概念,不过不是固定在896M以上的...
分类:
系统相关 时间:
2015-01-26 20:50:33
阅读次数:
302
1,本文大部分来自:http://blog.csdn.net/vanbreaker/article/details/76115852,在start_kernel()-->paging_init()-->zone_sizes_init()-->free_area_init_nodes()-->free...
分类:
系统相关 时间:
2015-01-26 20:49:32
阅读次数:
292
1,ARM MMUARM体系结构与编程第五章MMU的基本概念:MMU基本原理系统通过MMU将物理地址映射成虚拟地址,最小单位为页,虚拟地址空间一个页对应物理地址的一个页框ARM MMU原理
分类:
系统相关 时间:
2015-01-26 20:49:19
阅读次数:
171