在Linux的世界中,从大的方面来讲,有两块内存,一块叫做内存空间,Kernel Space,另一块叫做用户空间,即User Space。它们是相互独立的,Kernel对它们的管理方式也完全不同驱动模块和内核本身运行在Kernel Space当中一 linux内存模型Linux内存管理系统主要解决以...
分类:
系统相关 时间:
2014-12-05 09:12:23
阅读次数:
470
Ashmem匿名共享内存 Android的匿名共享内存(Ashmem)机制基于Linux内核的共享内存,但是Ashmem与cache shrinker关联起来,增加了内存回收算法的注册接口,因此Linux内存管理系统将不再使用内存区域加以回收。Ash...
分类:
移动开发 时间:
2014-12-02 16:44:12
阅读次数:
205
3.1用户空间的映射:
1. 用户空间的虚拟地址vaddr通过MMU(pgd,pmd,pte)找到对应的页表项x(即为物理地址)
2. 页表项x的高20位是物理也好,物理页号index = x >> PAGE_SHIFT, 同理,index后面补上12个0就是物理页表的首地址。
3. 通过物理页号,我们可以再内核中找到该物理页的描述的指针mem_map[index],当然这个指针是虚拟地址,page结构见上文。
3.2内核空间虚拟地址的映射:
内核空间与物理地址之间有直接的映射关系,而不需要向用户空...
分类:
系统相关 时间:
2014-12-01 01:15:34
阅读次数:
332
一.使用80x86 微处理器,必须搞懂以下三种不同的地址:1)逻辑地址——每个逻辑地址由一个段标示符+段内偏移量构成(自己认为这个逻辑地址指向的就是程序代码的或数据的地址)2)线性地址——32位无符号整数,可表示4GB的线性地址,通常十六位进制表示,0x00000000---0xffffffff3)...
分类:
系统相关 时间:
2014-11-26 20:36:26
阅读次数:
200
free命令就是查看linux内存使用的常用命令free的常用参数:-m以M为单位查看内存使用情况-b以字节为单位查看内存使用情况-s可以再指定时间段不间断监控内存情况Mem:表示物理内存统计-/+buffers/cached:表示物理内存的缓存统计Swap:表示硬盘上交换分区的使用情况,第1行Mem:t..
分类:
其他好文 时间:
2014-11-26 11:38:25
阅读次数:
158
经常遇到一些刚接触Linux的新手会问内存占用怎么那么多?在Linux中经常发现空闲内存很少,似乎所有的内存都被系统占用了,表面感觉是内存不够用了,其实不然。这是Linux内存管理的一个优秀特性,在这方面,区别于Windows的内存管理。AD:2014WOT全球软件技术峰会北京站 课程视频发布经常遇...
分类:
系统相关 时间:
2014-11-18 01:38:38
阅读次数:
372
摘要:本章首先以应用程序开发者的角度审视Linux的进程内存管理,在此基础上逐步深入到内核中讨论系统物理内存管理和内核内存地使用方法。力求从外自内、水到渠成地引导网友分析Linux地内存管理与使用。在本章最后我们给出一个内存映射地实例,帮助网友们理解内核内存管理与用户内存管理之间地关系,希望大家最终...
分类:
系统相关 时间:
2014-11-18 01:32:23
阅读次数:
367
参考:http://blog.163.com/tao198352__4232/blog/static/8502064520105611157897/:http://blog.chinaunix.net/uid-9543173-id-3571436.html下面是一个Linux进程的标准的内存段布局:maps文件内容输出:[root@NGFWsrc]#cat-n/proc/10800/maps100400000-0040a000r-xp0000000008..
分类:
系统相关 时间:
2014-11-12 18:08:08
阅读次数:
457
1. 内存地址
以Intel的中央处理器为例,Linux 32位的系统中,物理内存的基本单位是字节(Byte),1个字节有8个二进制位。每个内存地址指向一个字节,内存地址加1后得到下一个字节的地址。这里用以表示物理内存实际位置的地址,就是通常所说的物理地址(Physical Address)。CPU正在执行的进程代码、进程数据和栈区数据等,都临时保存在物理内存中。
线性地址(Linear Ad...
分类:
系统相关 时间:
2014-11-12 16:31:01
阅读次数:
272
摘自:http://www.cnblogs.com/itfriend/archive/2011/12/14/2287160.html网上的解决方案:用ps查看各进程的内存,大约就占用了4G,绝大部分内存都是被PageCache所占用。Linux内核的策略是最大程度的利用内存cache文件系统的数据,提高IO速度,虽然在机制上是有进程需要更大的内..
分类:
系统相关 时间:
2014-10-31 16:02:24
阅读次数:
309