django包含了一个“信号分配器”使得当一些动作在框架的其他地方发生的时候,解耦的应用可以得到提醒。通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者,这是特别有用的设计因为有些代码...
分类:
其他好文 时间:
2015-02-28 11:38:32
阅读次数:
149
slab着色原理slab着的原理,cpu cache一,slab着色原理slab分配器中用到很多的缓存,每个缓存中又包含了很多slab,每个slab中有很多对象,每个slab的头部用于管理该slab中的对象(比如哪些对象已经使用,哪些对象还没有使用等),在slab的每个对象的开始和结束处都有一个特定...
分类:
系统相关 时间:
2015-01-26 21:03:33
阅读次数:
208
1,查看内存的基本情况通过/proc/meminfo可以看到2,查看vmalloc分配的情况通过/proc/vmallocinfo可以看到3,查看伙伴系统使用的内存情况通过/proc/buddyinfo可以查看~4,查看slab分配器的使用情况通过查看/proc/slabinfo来查看
分类:
系统相关 时间:
2015-01-26 20:59:14
阅读次数:
223
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
slab分配器:http://blog.csdn.net/luotuo44/article/details/42737181hash操作 :http://blog.csdn.net/luotuo44/article/details/42773231lru操作 :http://blog.csdn......
分类:
系统相关 时间:
2015-01-21 13:17:10
阅读次数:
192
转载请注明出处:
LRU队列:
之前的《slab内存分配》博文已经说到一个slab class里面的所有slab分配器都只分配相同大小的item,不同的slab class分配不同大小的item。item结构体里面有一个slabs_clsid成员,用来指明自己是属于哪个slab class的。这里把slabs_clsid值相同的item称为是同一类ite...
分类:
系统相关 时间:
2015-01-19 10:58:18
阅读次数:
216
转载请注明出处:
温馨提示:本文用到了一些可以在启动memcached设置的全局变量。关于这些全局变量的含义可以参考《memcached启动参数详解》。对于这些全局变量,处理方式就像《如何阅读memcached源代码》所说的那样直接取其默认值。
slab内存池分配器:
slab简介:
memcached使用了一个叫slab的内...
分类:
系统相关 时间:
2015-01-15 11:00:28
阅读次数:
234
常用的内核内存分配函数
1)_get_free_pages是最原始的内存分配方式,至二级从伙伴系统中获取原始页框,返回值为第一个页框的起始地址。_get_free_pages在实现上只是封装了alloc_pages函数,而alloc_pages分配的长度为1
2)Kmem_cache_alloc是基于slab分配器的一种内存分配方式,适用于反复分配释放同...
分类:
系统相关 时间:
2015-01-10 08:54:01
阅读次数:
509