ChinaUnix.net
相关文章推荐:

linux slab

Anatomy of the linux slab allocator Learn how linux manages memory Document options Print this page E-mail this page Document options requiring JavaScript are not displayed Watch these demos Integrate new tools and architectures into your environment - fast! --> Rate this page Help us improve this content Level: Intermediate M. Tim Jones ( [email=mtj@mtjones.com?subject=Anatomy o...

by wangchy_love - AIX文档中心 - 2007-10-16 11:24:17 阅读(2491) 回复(0)

相关讨论

slab机制是什么意思呢? 看书上讲的是在栈中分配一堆结构体,用的时候取不够了再分,多了就放 又看了IBM上的,搞的有点晕了。帮忙讲一下这个名词呗! 还有临时映射,书上说临时映射不能睡眠,这个是什么意思! 进程怎么会知道他在不可以睡眠的内存中呢?请教!~ 我把它创建在永久映射的区域里又有什么区别呢?

by piaoyizu - C/C++ - 2007-09-05 09:06:09 阅读(1763) 回复(3)

SLOB和slab都是linux内存管理后来引入的,我发现在实现上几乎都有同名函数,请问SLOB和slab倒底有何区别? [ 本帖最后由 fineamy 于 2006-11-30 10:59 编辑 ]

by fineamy - 内核/嵌入技术 - 2006-11-30 15:36:09 阅读(2841) 回复(2)

kmem_cache_create(...) { ... do { unsigned int break_flag = 0; cal_wastage: kmem_cache_estimate(cachep->gfporder, size, flags, &left_over, &cachep->num); if (break_flag) break; if (cachep->gfporder >= MAX_GFP_ORDER) break; if (!cachep->num) goto next; if (flags & CFLGS_OFF_slab && cachep->n...

by LLClown - 内核/嵌入技术 - 2006-08-02 23:47:15 阅读(1081) 回复(1)

最近在看slab内存管理,看到在kem_cache_s结构中的如下成员: struct kmem_cache_s { /* 1) per-cpu data, touched during every alloc/free */ struct array_cache *array[NR_CPUS]; unsigned int batchcount; unsigned int limit; 有些不解: 1。array_cache(abbr. ac)分配是好像是从通用cache中取对象,那么通用cache结构中也有ac结构,那个ac结构由谁分配呢?(chicken-...

by joyhappy - 内核/嵌入技术 - 2006-01-24 12:24:52 阅读(4529) 回复(9)

深入理解linux内核上说(2nd, page 247): slab分配器把对象分组放进高速缓存。每个高速缓存都是同种类型对象的一种“储备”。 那么所有的高速缓存都是由slab分配器来管理的吗?比如说:页高速缓存,目录项高速缓存等等。? [ 本帖最后由 yjh777 于 2005-12-26 09:11 编辑 ]

by yjh777 - 内核/嵌入技术 - 2005-12-26 14:51:02 阅读(2029) 回复(11)

每个slab的前部保留了一小块区域空着不用,即为“着色区”,其作用是使同一slab队列中不同slab上对象区的起始地址互相错开,这样有利于改善高速缓冲的效率。可是,为什么会有利于改善高速缓冲的效率呢?

by 悠悠长风 - 内核/嵌入技术 - 2005-12-12 14:10:46 阅读(2589) 回复(13)

看过ACE的代码。但是没看完,有点儿头大,感觉效率不会太高,因为它没有预先分配连续的大块内存,但它的一个ojbect header,这个倒是可取之处 于是我冲动了两个晚上,自己写了一个内存池,感觉效率还可以。 1。实现方法就是预先创建N个固定大小的内存块,然后将它们串成双向链表,然后持有一个头节点, 2,分配内存时,将每个slab再切成用户请求的小块,然后这些小块都附上一个object header, 保存它所在的slab header或它的下一个...

by cookis - C/C++ - 2008-11-25 14:07:50 阅读(4477) 回复(13)

本人的程序是个非常复杂的多线程网络程序, 大致流程如下: 1.tcp接受网络数据,创建一个tcpservertask线程处理数据 2.在tcpservertask线程处理数据里,创建另一个线程motor_control(); 3.再次接受网络数据,如是某种服务类型(应用层定义的),退出原有的motor_control()线程 同时,创建一个新的motor_control线程 创建每个线程时都也设为detatched状态,线程退出时就可自己回收资源了。 如是重复几百次,察看/pro...

by spalash - C/C++ - 2009-06-24 09:40:43 阅读(3510) 回复(3)

什么是at 什么是cron 什么是inet 什么是xinet netstat的功能是什么

by hanlenry - 博客SNS站务交流区 - 2008-09-08 13:40:26 阅读(3103) 回复(0)

有谁知道qq的数据库怎么设计的, 如何支持上亿用户的信息存储 [ 本帖最后由 zhongku 于 2008-7-10 21:06 编辑 ]

by zhongku - IT职业生涯 - 2008-04-07 23:20:58 阅读(1774) 回复(2)