alloc_page按页为单位分,kmalloc从slab分?如果从使用上讲,都是一样的效果么?
_______________________________________________
Linux 内核开发中文邮件列表
Linux-...@zh-kernel.org
http://zh-kernel.org/mailman/listinfo/linux-kernel
Linux 内核开发中文社区: http://zh-kernel.org
主要区别在于使用场合不同,你要是只想分配1KB内存,那用alloc_pages岂不是浪费。
--
Thanks & Best Regards
Liu Hui
--
如果想在kernel里分配比较多的,4k-64k大小的链表块,用哪个比较合适?还是用kmem_cache_alloc来搞?
为什么呢?
谢谢!
2010/6/29 Liu Hui <only...@gmail.com>:
> 那请问get_free_page和alloc_pages/alloc_page区别呢?
>
> 如果想在kernel里分配比较多的,4k-64k大小的链表块,用哪个比较合适?还是用kmem_cache_alloc来搞?
> 为什么呢?
>
比较多是多少?如果非常多的话,用kmem_cache_alloc比较好吧。
如果一般的话,alloc_pages。
> 谢谢!
>
> 2010/6/29 Liu Hui <only...@gmail.com>:
>> 你说的对啊,kmalloc有属于自己的slab。
>> 另外,slab底层也是勇alloc_pages来分配页。
>> 主要区别在于使用场合不同,你要是只想分配1KB内存,那用alloc_pages岂不是浪费。
>>
>> 在 2010年6月29日 下午3:44,刘知言 <lzy...@gmail.com>写道:
>>>
>>> 谢谢。
>>>
>>> alloc_page按页为单位分,kmalloc从slab分?如果从使用上讲,都是一样的效果么?
>>> _______________________________________________
>>> Linux 内核开发中文邮件列表
>>> Linux-...@zh-kernel.org
>>> http://zh-kernel.org/mailman/listinfo/linux-kernel
>>> Linux 内核开发中文社区: http://zh-kernel.org
>>
>>
>> --
>> Thanks & Best Regards
>> Liu Hui
>> --
>>
> _______________________________________________
> Linux 内核开发中文邮件列表
> Linux-...@zh-kernel.org
> http://zh-kernel.org/mailman/listinfo/linux-kernel
> Linux 内核开发中文社区: http://zh-kernel.org
致
礼!
────────────────────────────
Liu Lei
<orphen...@gmail.com>
alloc_pages可以一次分配多少M呢,2MB么?
kmem_cache_alloc是在896M内核直接映射内存空间分配,还是使用896以上的高端内存呢?
我想法是,有个比较长的链表,表项大小在4k-64k之间,可能有很多表项10w-100w左右,那算来要400MB-62GB,有可能把他们放在kernel么?
2010/6/30 Liu Hui <only...@gmail.com>:
2010/6/30 刘知言 <lzy...@gmail.com>:
> 刘知言
>
> show details 2:34 PM (51 minutes ago)
>
> 呵呵,我是支持fs和raw device的,只是想问问,如果我基于内存能放多少。
>
> 我想问下:
> 1. 超出896MB,kernel映射能用到多少?而不报low_mem错误。
> 2. 如果按我上面的idea,我想肯定要映射高端内存吧?那用啥函数/方法最合适呢?kmem_cache_alloc or
> alloc_pages or somthing else.
>
> 多谢!
>
> @蓝天宇:
> 如果我尽可能映射高端内存,能用到大概多少?什么量级.
> kmap肯定是要用到的。那你的意思就是用alloc_page+kmap喽?
>
> 以上
>
> 2010/6/30 刘知言 <lzy...@gmail.com>:
>> 呵呵,我是支持fs和raw device的,只是想问问,如果我基于内存能放多少。
>>
>> 我想问下:
>> 1. 超出896MB,kernel映射能用到多少?而不报low_mem错误。
>> 2. 如果按我上面的idea,我想肯定要映射高端内存吧?那用啥函数/方法最合适呢?kmem_cache_alloc or
>> alloc_pages or somthing else.
>>
>> 多谢!
>>
>> 2010/6/30 蓝天宇 <lantia...@gmail.com>:
>>> ...
>>> 400MB-62GB,你把内存当硬盘用啊,这么大的东西,只能放在硬盘里了。可以参考文件系统。