- 博客(4)
- 收藏
- 关注
原创 slub学习笔记
为什么要有slub?提供小内存。内核管理页面使用了2个算法:伙伴算法和slub算法,伙伴算法以页为单位管理内存,但在大多数情况下,程序需要的并不是一整页,而是几个、几十个字节的小内存。于是需要另外一套系统来完成对小内存的管理,这就是slub系统。slub系统运行在伙伴系统之上,为内核提供小内存管理的功能。针对经常分配并释放的对象,它也用作一个缓存,以提高分配和释放的效率:slub分配器
2013-12-25 15:48:39
2007
原创 Linux 内存管理概述
每一个人都知道,Linux有着复杂的内存管理。在介绍之前,我想先问读者一个问题,为什么需要内存管理?答案无非包括以下这些:分配/释放内存很自然地需要管理不同的内存区域也许有着不同的访问权限用户空间的进程都需要独立的地址空间物理地址不连续时,仍然能提供虚拟地址连续的空间用户空间甚至能分配出比实际物理内存更大的地址空间Swap:把内存交换到存储设备上 独立的地址空间:
2013-12-23 20:57:18
1235
原创 我所理解的high memory
一: 为什么需要high memory32位的CPU,最大寻址范围2^32-1, 也就是虚拟内存空间的范围为0~4G。 Linux一般吧0~3G划分为用户地址空间,3G到4G为内核地址空间。图1: 用户和内核地址空间分布最高的1GB虚拟空间由所有进程和内核共享,因此内核最多寻址1G的虚拟地址空间。如果物理内存超过1G,内核该如何映射呢? Linux采取的策略内核空间的前“8
2013-11-22 15:39:16
2814
原创 Linux 匿名页的反向映射
我们知道LINUX的内存管理系统中有”反向映射“这一说,目的是为了快速去查找出一个特定的物理页在哪些进程中被映射到了什么地址,这样如果我们想把这一页换出(SWAP),或是迁移(Migrate)的时候,就能相应该更改所有相关进程的页表来达到这个目的。这里我们只讨论没有文件BASE的匿名页的反向映射。网上能查到不少讲解匿名页的反向映射的文章,比如下面的链接:http://lwn.net/Art
2013-11-07 13:19:28
3935
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人